2026-08-14 06:25:03.441274: Best export window [ ] 2026-08-14 06:25:03.442115: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 06:25:03.445330: Load divergence over 8.0 hours mean 503.65W, min 274.8W, max 1439.4W, std dev 216.81W, divergence 21.52% 2026-08-14 06:25:03.455689: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 06:25:03.455776: LoadML is_calculating False 2026-08-14 06:25:03.455846: Creating pool of 12 processes to match your CPU count 2026-08-14 06:25:03.542306: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 06:25:03.544449: Optimise levels pass started at 2026-08-14 06:25:03 2026-08-14 06:25:03.545651: Optimise all windows, total charge 94 export 1 2026-08-14 06:25:03.870300: >> Region optimisation pass width 960 2026-08-14 06:25:04.287278: >> Region optimisation pass width 480 2026-08-14 06:25:04.728296: >> Region optimisation pass width 240 2026-08-14 06:25:05.318405: >> Region optimisation pass width 120 2026-08-14 06:25:06.660992: Calculated end_record as 08-15 12:00:00 based on best_price 22.25p, next_charge_start 08-14 12:00:00, max_windows 59 2026-08-14 06:25:06.661211: Optimise levels pass ended at 2026-08-14 06:25:06, duration 3.1 seconds tried 331 combinations 2026-08-14 06:25:06.661494: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1027.98p, best_keep 0kWh, best_cycle 49.11kWh, best_carbon 0kg, best_import 38.68kWh 2026-08-14 06:25:06.681084: Starting detailed optimisation end_record 08-15 12:00:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 13.75, 13.75, 13.75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 06:25:06.682581: Best charge windows best_metric 741.07p, best_cost 763.07p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 100%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 86%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 86%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100% ] 2026-08-14 06:25:06.682686: Best export windows best_metric 741.07p, best_cost 763.07p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ ] 2026-08-14 06:25:06.682798: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 741.07p, best_cost 763.07p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:06.814355: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 740.84p, best_cost 762.79p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:06.901260: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 740.84p, best_cost 762.79p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:07.063790: Best charge windows best_metric 740.84p, best_cost 762.79p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 13%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 86%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100% ] 2026-08-14 06:25:07.064184: Best export windows best_metric 740.84p, best_cost 762.79p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ ] 2026-08-14 06:25:07.065697: Best charge windows best_metric 740.84p, best_cost 762.79p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 13%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 86%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100% ] 2026-08-14 06:25:07.065804: Best export windows best_metric 740.84p, best_cost 762.79p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ ] 2026-08-14 06:25:07.065954: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 740.84p, best_cost 762.79p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:07.247723: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 740.82p, best_cost 762.78p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:07.333600: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 740.82p, best_cost 762.78p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:07.460743: Best charge windows best_metric 740.82p, best_cost 762.78p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 100%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 25%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 86%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100% ] 2026-08-14 06:25:07.461075: Best export windows best_metric 740.82p, best_cost 762.78p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ ] 2026-08-14 06:25:07.462573: Best charge windows best_metric 740.82p, best_cost 762.78p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 100%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 25%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 86%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100% ] 2026-08-14 06:25:07.462706: Best export windows best_metric 740.82p, best_cost 762.78p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ ] 2026-08-14 06:25:07.462857: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 740.82p, best_cost 762.78p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:07.588368: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 740.82p, best_cost 762.78p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:07.674365: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 740.82p, best_cost 762.78p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:07.792143: Best charge windows best_metric 740.82p, best_cost 762.78p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 100%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 25%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 86%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100% ] 2026-08-14 06:25:07.792379: Best export windows best_metric 740.82p, best_cost 762.78p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ ] 2026-08-14 06:25:07.792563: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 740.82p, best_cost 762.78p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:07.909953: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 740.82p, best_cost 762.78p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:07.982628: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 740.82p, best_cost 762.78p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:08.167233: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 740.82p, best_cost 762.78p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:08.240556: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 740.82p, best_cost 762.78p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:08.305073: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 740.82p, best_cost 762.78p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:08.374435: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 740.82p, best_cost 762.78p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:08.438871: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 740.82p, best_cost 762.78p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:08.558776: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 740.66p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:08.791843: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:08.834265: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:08.869497: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:08.910212: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:08.954596: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:08.992992: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.079463: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.153185: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.239316: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.283925: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.327901: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.369851: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.442538: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.484425: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.561645: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.612085: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.657668: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.704904: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.745162: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.779617: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.812500: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.861474: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.895865: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.943261: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:09.981876: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:10.022352: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:10.067550: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:10.121628: Best charge windows best_metric 740.56p, best_cost 762.77p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 100%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 25%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 86%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100% ] 2026-08-14 06:25:10.121923: Best export windows best_metric 740.56p, best_cost 762.77p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ ] 2026-08-14 06:25:10.123517: Best charge windows best_metric 740.56p, best_cost 762.77p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 100%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 25%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 86%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100% ] 2026-08-14 06:25:10.123638: Best export windows best_metric 740.56p, best_cost 762.77p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ ] 2026-08-14 06:25:10.123787: Optimise price set 26.6p, pass trim_import, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:10.171617: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:10.217634: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:10.360509: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 740.56p, best_cost 762.77p, best_cycle 26.67kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 06:25:10.461293: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 740.45p, best_cost 762.67p, best_cycle 26.17kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 06:25:10.606682: Best charge windows best_metric 740.45p, best_cost 762.67p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 100%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 25%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 86%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100% ] 2026-08-14 06:25:10.606888: Best export windows best_metric 740.45p, best_cost 762.67p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ ] 2026-08-14 06:25:10.607301: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 740.45p, best_cost 762.67p, best_cycle 26.17kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 06:25:10.658546: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 740.45p, best_cost 762.67p, best_cycle 26.17kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 06:25:10.712252: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 740.45p, best_cost 762.67p, best_cycle 26.17kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 06:25:10.923383: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 740.45p, best_cost 762.67p, best_cycle 26.17kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 06:25:11.004553: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 740.45p, best_cost 762.67p, best_cycle 26.17kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 06:25:11.142047: Best charge windows best_metric 740.45p, best_cost 762.67p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 100%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 25%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100% ] 2026-08-14 06:25:11.142372: Best export windows best_metric 740.45p, best_cost 762.67p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ ] 2026-08-14 06:25:11.143913: Best charge windows best_metric 740.45p, best_cost 762.67p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 100%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 25%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100% ] 2026-08-14 06:25:11.144058: Best export windows best_metric 740.45p, best_cost 762.67p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ ] 2026-08-14 06:25:11.144312: Optimise price set 26.6p, pass trim_import, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 740.45p, best_cost 762.67p, best_cycle 26.17kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 06:25:11.190811: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 740.45p, best_cost 762.67p, best_cycle 26.17kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 06:25:11.231197: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 740.45p, best_cost 762.67p, best_cycle 26.17kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 06:25:11.377336: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 740.45p, best_cost 762.67p, best_cycle 26.17kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 06:25:11.465182: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 740.45p, best_cost 762.67p, best_cycle 26.17kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 06:25:11.608606: Best charge windows best_metric 740.45p, best_cost 762.67p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 100%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 25%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100% ] 2026-08-14 06:25:11.609055: Best export windows best_metric 740.45p, best_cost 762.67p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ ] 2026-08-14 06:25:11.609337: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 740.45p, best_cost 762.67p, best_cycle 26.17kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 06:25:11.653361: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 740.45p, best_cost 762.67p, best_cycle 26.17kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 06:25:11.705198: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 740.45p, best_cost 762.67p, best_cycle 26.17kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 06:25:11.917144: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 740.45p, best_cost 762.67p, best_cycle 26.17kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 06:25:12.019007: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 740.45p, best_cost 762.67p, best_cycle 26.17kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 06:25:12.138462: Best charge windows best_metric 740.45p, best_cost 762.67p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 100%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 25%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100% ] 2026-08-14 06:25:12.138770: Best export windows best_metric 740.45p, best_cost 762.67p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:00:00, windows [ ] 2026-08-14 06:25:12.139142: Tweak plan optimisation started 2026-08-14 06:25:12.482171: Tweak optimisation finished metric 740.45 cost 762.67 metric_keep 0 cycle 26.17 carbon 0 import 50.15 2026-08-14 06:25:12.501410: Swap charge optimisation started metric 740.45p, cost 762.67p, min_improvement_swap 0.1p 2026-08-14 06:25:16.731323: Swap charge optimisation finished metric 740.45p, cost 762.67p 2026-08-14 06:25:16.742171: Raw charge windows [ 14-08 06:00:00 - 14-08 06:30:00 @ 29.55p 0%, 14-08 06:30:00 - 14-08 07:00:00 @ 30.48p 0%, 14-08 07:00:00 - 14-08 07:30:00 @ 28.02p 0%, 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 100%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 25%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100% ] reserve 1.12 2026-08-14 06:25:16.742739: Unclipped charge windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 100%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 25%, 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:00:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 06:30:00 @ 29.27p 100% ] reserve 1.12 2026-08-14 06:25:16.743011: Unfiltered charge windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 100%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 25%, 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:00:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 06:30:00 @ 29.27p 100% ] reserve 1.12 2026-08-14 06:25:16.743239: Filtered charge windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 100%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 25%, 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:00:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 06:30:00 @ 29.27p 100% ] reserve 1.12 2026-08-14 06:25:16.781737: Previous plan best metric is 740.36 (cost 762.59) and new plan best metric is 740.45 (cost 762.67) 2026-08-14 06:25:16.781978: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 06:25:16.782171: Plan valid is now true after recompute was False 2026-08-14 06:25:16.805152: predict base end_record 08-15 12:00:00, final soc 1.12kWh, metric 904.71p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:40:00, load 29.43kWh, PV 0.0kWh 2026-08-14 06:25:16.948001: Battery has 2.25 hours left - now at 2.56kWh 2026-08-14 06:25:16.987363: predict base10 end_record 08-15 12:00:00, final soc 1.12kWh, metric 934.61p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:35:00, load 30.49kWh, PV 0.0kWh 2026-08-14 06:25:17.052695: predict best10 end_record 08-15 12:00:00, final soc 1.12kWh, metric 838.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:35:00, load 30.49kWh, PV 0.0kWh 2026-08-14 06:25:17.127442: predict best end_record 08-15 12:00:00, final soc 1.12kWh, metric 812.57p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:40:00, load 29.43kWh, PV 0.0kWh 2026-08-14 06:25:17.127530: Saving plan best values to HA entities 2026-08-14 06:25:17.283864: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 06:25:17.288544: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 06:25:17.293244: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.33kWh, house 6.15kWh, export 0.0kWh, metric 812.57p, metric10 838.42p 2026-08-14 06:25:17.357891: Marginal costs baseline metric (no standing charge): 762.5866 2026-08-14 06:25:17.577806: Marginal energy costs matrix computed: min=22.05 max=37.44 2026-08-14 06:25:17.644018: Rate array import [{'start': 385, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 30.5p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2160, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 385, 'end': 2160, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 06:25:17.644600: - Your estimated bill for today is £7.00 and tomorrow is £7.05 2026-08-14 06:25:17.644638: - Import rates are cheap (21.7p - 30.5p) for the next 9 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 06:25:17.644656: - The battery is currently at 16% and is in eco mode for the next 6 hours. 2026-08-14 06:25:17.644671: - For the next 48 hours there will be no solar generation. 2026-08-14 06:25:17.644685: - You will run out of battery in 2 and a quarter hours. 2026-08-14 06:25:17.644698: - Your next charge slot will be in 6 hours where import rates will be cheap (22.2p). 2026-08-14 06:25:17.644713: 2026-08-14 06:25:17.704220: Plan calculation took 14.27 seconds 2026-08-14 06:25:17.704565: Inverter 0: Type SK Sunsynk 2026-08-14 06:25:17.704611: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 06:25:17.704874: Reserve min: 7%, battery_min: 7% 2026-08-14 06:25:17.704979: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 06:25:17.705365: Inverter 0 SoC: 2.56kW 16%, current charge rate 5000W, current discharge rate 5250W, current battery power 442W, current battery voltage 51.2V, grid power -55W, load power 503W, PV Power 0W 2026-08-14 06:25:17.705592: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:25:17.705693: Inverter 0 scheduled charge enable is False 2026-08-14 06:25:17.705729: Inverter 0 charge windows currently [] 2026-08-14 06:25:17.705760: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 06:25:17.705875: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:25:17.705911: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:25:17.705945: Inverter 0 scheduled discharge enable is False 2026-08-14 06:25:17.706082: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:25:17.706120: Inverter 0 discharge windows currently [] 2026-08-14 06:25:17.706147: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:25:17.706166: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:25:17.706189: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:25:17.760882: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 16%, target 100% 2026-08-14 06:25:17.761118: Inverter 0 disabled charge window while waiting for schedule (now 08-14 06:25:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 06:25:17.761229: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:25:17.761509: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:25:17.761615: No export window planned 2026-08-14 06:25:17.761743: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 06:25:17.761795: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:25:17.761954: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:25:17.762170: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 06:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 06:25:17.762227: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 06:25:17.762286: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 06:25:17.762379: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:25:17.762419: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:25:17.762446: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:25:17.762470: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:25:17.762497: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:25:17.762521: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:25:17.762546: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:25:17.762606: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:25:17.762641: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:25:17.762667: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:25:17.762696: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:25:17.762721: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:25:17.762750: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:25:17.762775: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:25:17.762800: Inverter 0 count register writes 0 2026-08-14 06:25:17.784660: Total inverter register writes now 806 2026-08-14 06:25:17.819103: Info: Completed run status Demand 2026-08-14 06:25:17.826501: Info: record_status Demand 2026-08-14 06:25:17.833940: Saved current settings to /config/predbat_config.json 2026-08-14 06:25:17.834277: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 06:25:53.940915: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:25:53.942238: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:25:53.942292: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:25:53.942435: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:25:53.942474: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:25:53.942495: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:25:53.942513: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:27:54.157964: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:27:54.158232: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:27:54.158267: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:27:54.158409: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:27:54.158474: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:27:54.158496: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:27:54.158514: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:29:03.978718: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 06:29:04.954177: Processing 1345 30-minute periods for power integration 2026-08-14 06:29:05.040770: ML Component: Car charging hold False, car energy reported load False 2026-08-14 06:29:05.129919: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 06:29:05.211498: ML Temperature data points: 50016 2026-08-14 06:29:05.446041: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 06:29:05.485487: ML Component: Data fetch completed, load data age 55.0 days, 16059 data points 2026-08-14 06:29:05.485619: ML Component: No training needed, model age is 1.71 hours 2026-08-14 06:29:05.485675: ML Component: Generating predictions load data age 55.0 days, 16059 data points 2026-08-14 06:29:05.602704: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0503 max_dow {0: 0.11039687492717057, 1: 0.1028281252630055, 2: 0.11314687561187893, 3: 0.11631875021476298, 4: 0.16095625033210964, 5: 0.08793437474276872, 6: 0.1125281252272427} 2026-08-14 06:29:13.782081: ML Component: Generated 576 predictions (total 41.33 kWh over 48h) 2026-08-14 06:29:13.832047: ML Component: Prediction cycle completed 2026-08-14 06:29:13.943426: ML Component: Saved 16059 steps (55 days) of history to /config/predbat_ml_history.npz 2026-08-14 06:29:54.400716: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:29:54.401000: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:29:54.401172: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:29:54.401429: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:29:54.401481: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:29:54.401512: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:29:54.401547: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:30:00.486056: --------------- PredBat - update at 2026-08-14 06:30:00+01:00 with clock skew 0 minutes, minutes now 390 2026-08-14 06:30:00.486835: Saved current settings to /config/predbat_config.json 2026-08-14 06:30:00.486994: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 64.8 minutes 2026-08-14 06:30:00.487142: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 06:30:00.487250: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 06:30:00.510397: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 06:30:00.510537: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 06:30:00.511214: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 06:30:00.511333: Predbat mode is set to Control charge & discharge 2026-08-14 06:30:00.730992: Found 21602 load_today datapoints going back 28 days 2026-08-14 06:30:00.731189: Using load_power data to fill gaps in load_today data 2026-08-14 06:30:01.462448: Processing 721 30-minute periods for power integration 2026-08-14 06:30:01.638468: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 06:30:01.638608: Car charging hold False, threshold 6.0kWh 2026-08-14 06:30:01.638668: Current data so far today: load 7.35kWh, import 8.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 06:30:01.651350: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 06:30:01.652012: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 06:30:01.652107: Standing charge is set to 49.98p 2026-08-14 06:30:01.680385: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 06:30:01.680495: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 06:30:01.680697: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 390.0 minutes 2026-08-14 06:30:01.681117: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 389.8 minutes 2026-08-14 06:30:01.684106: Loaded 47 datapoints of futurerate analysis 2026-08-14 06:30:01.768381: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 06:30:01.819085: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 06:30:01.823439: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 06:30:01.823724: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 06:30:01.858705: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 06:30:01.858839: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 06:30:01.859920: High export rate found rates in range 99p to -99p 2026-08-14 06:30:01.943720: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 06:30:01.943968: Car 0 charging is not planned as it is not plugged in 2026-08-14 06:30:01.961785: Battery level now 2.56kWh, -1hr ago 3.01kWh, at midnight 2.43kWh, battery value change in the last hour -10.44p, change today 2.98p, rate_forward 23.31p 2026-08-14 06:30:01.962250: Last hour: net energy 0.03kWh, import 0.03kWh, export 0.0kWh, car 0kWh, load 0.5kWh, net cost 0.94p, import 0.94p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 06:30:02.030494: Today's energy total net 8.3kWh, import 8.3kWh, export 0.0kWh, cost 259.83p, import 209.85p, export 0.0p, carbon 0.0kg 2026-08-14 06:30:02.030627: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 06:30:02.119232: Using weighted-bucket historical load forecast over 14 days 2026-08-14 06:30:02.143013: Today's load divergence 114.02%, in-day adjustment 137.74%, damping 0.95x, yesterday 146.81% today 113.32% blend 72.92% 2026-08-14 06:30:02.143128: Today's predicted so far 2.53kWh with 0.0kWh car/iBoost excluded, 1.42kWh import ignored, and 3.95kWh forecast extra. 2026-08-14 06:30:02.143160: Today's actual load so far 4.59kWh with 0.0kWh car/iBoost excluded, and 2.81kWh import ignored. 2026-08-14 06:30:02.181249: Inverter 0: Type SK Sunsynk 2026-08-14 06:30:02.181340: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 06:30:02.181542: Reserve min: 7%, battery_min: 7% 2026-08-14 06:30:02.181614: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 06:30:02.181870: Inverter 0 SoC: 2.56kW 16%, current charge rate 5000W, current discharge rate 5250W, current battery power 488W, current battery voltage 51.2V, grid power -55W, load power 551W, PV Power 0W 2026-08-14 06:30:02.182038: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:30:02.182128: Inverter 0 scheduled charge enable is False 2026-08-14 06:30:02.182157: Inverter 0 charge windows currently [] 2026-08-14 06:30:02.182190: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 06:30:02.182298: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:30:02.182334: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:30:02.182369: Inverter 0 scheduled discharge enable is False 2026-08-14 06:30:02.182491: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:30:02.182527: Inverter 0 discharge windows currently [] 2026-08-14 06:30:02.182550: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:30:02.182568: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:30:02.182585: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:30:02.257499: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 06:30:02.257617: Plan was last updated on 2026-08-14 06:25:00+01:00 and is now 5.0 minutes old 2026-08-14 06:30:02.257843: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 06:30:02.257878: Best export window [ ] 2026-08-14 06:30:02.258526: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 06:30:02.261093: Load divergence over 8.0 hours mean 502.11W, min 249.0W, max 1403.4W, std dev 214.88W, divergence 21.4% 2026-08-14 06:30:02.271801: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 06:30:02.271885: LoadML is_calculating False 2026-08-14 06:30:02.271941: Creating pool of 12 processes to match your CPU count 2026-08-14 06:30:02.389727: predict base end_record 08-15 12:05:00, final soc 1.12kWh, metric 903.74p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:45:00, load 29.46kWh, PV 0.0kWh 2026-08-14 06:30:02.509890: Battery has 2.25 hours left - now at 2.56kWh 2026-08-14 06:30:02.548472: predict base10 end_record 08-15 12:05:00, final soc 1.12kWh, metric 933.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:40:00, load 30.51kWh, PV 0.0kWh 2026-08-14 06:30:02.624907: predict best10 end_record 08-15 12:05:00, final soc 1.12kWh, metric 837.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:40:00, load 30.51kWh, PV 0.0kWh 2026-08-14 06:30:02.732254: predict best end_record 08-15 12:05:00, final soc 1.12kWh, metric 811.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:45:00, load 29.46kWh, PV 0.0kWh 2026-08-14 06:30:02.732352: Saving plan best values to HA entities 2026-08-14 06:30:02.919796: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 06:30:02.926676: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 06:30:02.932285: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.24kWh, house 6.14kWh, export 0.0kWh, metric 811.9p, metric10 837.75p 2026-08-14 06:30:02.998575: Marginal costs baseline metric (no standing charge): 761.9154 2026-08-14 06:30:03.234744: Marginal energy costs matrix computed: min=22.02 max=37.0 2026-08-14 06:30:03.305650: Rate array import [{'start': 390, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 30.5p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2165, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 390, 'end': 2165, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 06:30:03.306404: - Your estimated bill for today is £6.99 and tomorrow is £7.02 2026-08-14 06:30:03.306454: - Import rates are cheap (21.7p - 30.5p) for the next 9 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 06:30:03.306476: - The battery is currently at 16% and is in eco mode for the next 6 hours. 2026-08-14 06:30:03.306494: - For the next 48 hours there will be no solar generation. 2026-08-14 06:30:03.306515: - You will run out of battery in 2 and a quarter hours. 2026-08-14 06:30:03.306537: - Your next charge slot will be in 6 hours where import rates will be cheap (22.2p). 2026-08-14 06:30:03.306555: 2026-08-14 06:30:03.362604: Plan calculation took 1.10 seconds 2026-08-14 06:30:03.366052: No high rate period found 2026-08-14 06:30:03.426908: Import threshold used for optimisation was 24.8p 2026-08-14 06:30:03.492303: Low import rate windows [0: 08-14 06:30:00 - 08-14 07:00:00 @ 30.48, 1: 08-14 07:00:00 - 08-14 07:30:00 @ 28.02, 2: 08-14 07:30:00 - 08-14 08:00:00 @ 28.58, 3: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 4: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 5: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 6: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 7: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 8: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 9: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 10: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 11: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 12: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 13: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 14: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 15: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 16: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 17: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 18: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 19: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 20: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 21: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 22: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 23: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 24: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 25: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 26: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 27: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 28: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 29: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 30: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 31: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 32: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 33: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 34: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 35: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 36: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 37: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 38: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 39: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 40: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 41: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 42: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 43: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 44: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 45: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 46: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 47: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 48: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 49: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 50: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 51: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 52: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 53: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 54: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 55: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 56: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 57: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 58: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 59: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 60: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 61: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 62: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 63: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 64: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 65: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 66: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 67: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 68: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 69: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 70: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 71: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 72: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 73: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 74: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 75: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 76: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 77: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 78: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 79: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 80: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 81: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 82: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 83: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 84: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 85: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 86: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 87: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 88: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 89: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 90: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 91: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 92: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 93: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55] 2026-08-14 06:30:03.501614: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 16%, target 100% 2026-08-14 06:30:03.501759: Inverter 0 disabled charge window while waiting for schedule (now 08-14 06:30:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 06:30:03.501892: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:30:03.502161: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:30:03.502268: No export window planned 2026-08-14 06:30:03.502411: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 06:30:03.502456: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:30:03.502599: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:30:03.502796: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 06:30:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 06:30:03.502857: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 06:30:03.502920: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 06:30:03.503045: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:30:03.503089: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:30:03.503117: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:30:03.503151: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:30:03.503177: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:30:03.503211: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:30:03.503236: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:30:03.503331: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:30:03.503369: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:30:03.503396: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:30:03.503421: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:30:03.503444: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:30:03.503474: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:30:03.503499: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:30:03.503519: Inverter 0 count register writes 0 2026-08-14 06:30:03.518842: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 06:30:03.523628: Total inverter register writes now 806 2026-08-14 06:30:03.558732: Info: Completed run status Demand 2026-08-14 06:30:03.565337: Info: record_status Demand 2026-08-14 06:30:03.573278: Saved current settings to /config/predbat_config.json 2026-08-14 06:30:03.573655: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 06:30:38.680628: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:30:38.680875: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:30:38.680921: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:30:38.681134: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:30:38.681187: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:30:38.681210: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:30:38.681227: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:32:38.903017: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:32:38.903306: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:32:38.903362: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:32:38.903534: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:32:38.903573: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:32:38.903594: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:32:38.903624: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:34:39.126613: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:34:39.126885: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:34:39.126941: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:34:39.127155: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:34:39.127204: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:34:39.127227: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:34:39.127245: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:35:00.232651: --------------- PredBat - update at 2026-08-14 06:35:00+01:00 with clock skew 0 minutes, minutes now 395 2026-08-14 06:35:00.233784: Saved current settings to /config/predbat_config.json 2026-08-14 06:35:00.234078: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 69.8 minutes 2026-08-14 06:35:00.234319: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 06:35:00.234523: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 06:35:00.263288: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 06:35:00.263422: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 06:35:00.264203: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 06:35:00.264350: Predbat mode is set to Control charge & discharge 2026-08-14 06:35:00.475619: Found 21602 load_today datapoints going back 28 days 2026-08-14 06:35:00.475767: Using load_power data to fill gaps in load_today data 2026-08-14 06:35:01.216628: Processing 721 30-minute periods for power integration 2026-08-14 06:35:01.380256: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 06:35:01.380381: Car charging hold False, threshold 6.0kWh 2026-08-14 06:35:01.380417: Current data so far today: load 7.4kWh, import 8.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 06:35:01.392184: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 06:35:01.392791: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 06:35:01.392856: Standing charge is set to 49.98p 2026-08-14 06:35:01.420765: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 06:35:01.420846: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 06:35:01.421168: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 395.0 minutes 2026-08-14 06:35:01.421679: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 394.8 minutes 2026-08-14 06:35:01.424261: Loaded 47 datapoints of futurerate analysis 2026-08-14 06:35:01.511941: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 06:35:01.575260: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 06:35:01.581996: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 06:35:01.582600: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 06:35:01.622483: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 06:35:01.622610: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 06:35:01.623894: High export rate found rates in range 99p to -99p 2026-08-14 06:35:01.706809: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 06:35:01.706955: Car 0 charging is not planned as it is not plugged in 2026-08-14 06:35:01.719898: Battery level now 2.56kWh, -1hr ago 3.01kWh, at midnight 2.43kWh, battery value change in the last hour -10.44p, change today 2.98p, rate_forward 23.31p 2026-08-14 06:35:01.720296: Last hour: net energy 0.03kWh, import 0.03kWh, export 0.0kWh, car 0kWh, load 0.5kWh, net cost 0.75p, import 0.75p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 06:35:01.769719: Today's energy total net 8.3kWh, import 8.3kWh, export 0.0kWh, cost 259.83p, import 209.85p, export 0.0p, carbon 0.0kg 2026-08-14 06:35:01.769857: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 06:35:01.847138: Using weighted-bucket historical load forecast over 14 days 2026-08-14 06:35:01.873818: Today's load divergence 113.83%, in-day adjustment 137.57%, damping 0.95x, yesterday 146.81% today 113.14% blend 72.57% 2026-08-14 06:35:01.874807: Today's predicted so far 2.58kWh with 0.0kWh car/iBoost excluded, 1.43kWh import ignored, and 4.01kWh forecast extra. 2026-08-14 06:35:01.874868: Today's actual load so far 4.61kWh with 0.0kWh car/iBoost excluded, and 2.94kWh import ignored. 2026-08-14 06:35:01.909943: Inverter 0: Type SK Sunsynk 2026-08-14 06:35:01.910036: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 06:35:01.910301: Reserve min: 7%, battery_min: 7% 2026-08-14 06:35:01.910433: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 06:35:01.910781: Inverter 0 SoC: 2.4kW 15%, current charge rate 5000W, current discharge rate 5250W, current battery power 440W, current battery voltage 51.2V, grid power -55W, load power 502W, PV Power 0W 2026-08-14 06:35:01.911002: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:35:01.911148: Inverter 0 scheduled charge enable is False 2026-08-14 06:35:01.911201: Inverter 0 charge windows currently [] 2026-08-14 06:35:01.911251: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 06:35:01.911419: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:35:01.911471: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:35:01.911524: Inverter 0 scheduled discharge enable is False 2026-08-14 06:35:01.911715: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:35:01.911757: Inverter 0 discharge windows currently [] 2026-08-14 06:35:01.911781: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:35:01.911799: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:35:01.911817: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:35:01.975593: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 06:35:01.975730: Plan was last updated on 2026-08-14 06:25:00+01:00 and is now 10.0 minutes old 2026-08-14 06:35:01.976270: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 06:35:01.976339: Best export window [ ] 2026-08-14 06:35:01.977509: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 06:35:01.980685: Load divergence over 8.0 hours mean 501.56W, min 230.4W, max 1501.2W, std dev 219.39W, divergence 21.87% 2026-08-14 06:35:01.994743: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 06:35:01.994897: LoadML is_calculating False 2026-08-14 06:35:01.994968: Creating pool of 12 processes to match your CPU count 2026-08-14 06:35:02.113987: predict base end_record 08-15 12:10:00, final soc 1.12kWh, metric 907.44p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:35:00, load 29.52kWh, PV 0.0kWh 2026-08-14 06:35:02.244505: Battery has 2.0 hours left - now at 2.4kWh 2026-08-14 06:35:02.290892: predict base10 end_record 08-15 12:10:00, final soc 1.12kWh, metric 937.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:25:00, load 30.58kWh, PV 0.0kWh 2026-08-14 06:35:02.367766: predict best10 end_record 08-15 12:10:00, final soc 1.12kWh, metric 841.55p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:25:00, load 30.58kWh, PV 0.0kWh 2026-08-14 06:35:02.454959: predict best end_record 08-15 12:10:00, final soc 1.12kWh, metric 815.74p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:35:00, load 29.52kWh, PV 0.0kWh 2026-08-14 06:35:02.455065: Saving plan best values to HA entities 2026-08-14 06:35:02.616439: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 06:35:02.621707: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 06:35:02.626911: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.24kWh, house 6.22kWh, export 0.0kWh, metric 815.74p, metric10 841.55p 2026-08-14 06:35:02.696582: Marginal costs baseline metric (no standing charge): 765.7528 2026-08-14 06:35:02.920875: Marginal energy costs matrix computed: min=21.98 max=36.44 2026-08-14 06:35:02.998186: Rate array import [{'start': 395, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 30.5p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2170, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 395, 'end': 2170, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 06:35:02.999166: - Your estimated bill for today is £7.01 and tomorrow is £7.00 2026-08-14 06:35:02.999221: - Import rates are cheap (21.7p - 30.5p) for the next 9 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 06:35:02.999245: - The battery is currently at 15% and is in eco mode for the next 5 hours. 2026-08-14 06:35:02.999263: - For the next 48 hours there will be no solar generation. 2026-08-14 06:35:02.999282: - You will run out of battery in 2 hours. 2026-08-14 06:35:02.999299: - Your next charge slot will be in 5 hours where import rates will be cheap (22.2p). 2026-08-14 06:35:02.999317: 2026-08-14 06:35:03.062536: Plan calculation took 1.09 seconds 2026-08-14 06:35:03.065262: No high rate period found 2026-08-14 06:35:03.112439: Import threshold used for optimisation was 24.8p 2026-08-14 06:35:03.161935: Low import rate windows [0: 08-14 06:30:00 - 08-14 07:00:00 @ 30.48, 1: 08-14 07:00:00 - 08-14 07:30:00 @ 28.02, 2: 08-14 07:30:00 - 08-14 08:00:00 @ 28.58, 3: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 4: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 5: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 6: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 7: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 8: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 9: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 10: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 11: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 12: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 13: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 14: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 15: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 16: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 17: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 18: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 19: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 20: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 21: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 22: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 23: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 24: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 25: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 26: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 27: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 28: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 29: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 30: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 31: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 32: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 33: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 34: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 35: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 36: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 37: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 38: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 39: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 40: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 41: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 42: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 43: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 44: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 45: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 46: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 47: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 48: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 49: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 50: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 51: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 52: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 53: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 54: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 55: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 56: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 57: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 58: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 59: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 60: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 61: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 62: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 63: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 64: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 65: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 66: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 67: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 68: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 69: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 70: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 71: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 72: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 73: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 74: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 75: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 76: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 77: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 78: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 79: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 80: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 81: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 82: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 83: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 84: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 85: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 86: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 87: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 88: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 89: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 90: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 91: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 92: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 93: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 94: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48] 2026-08-14 06:35:03.168640: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 15%, target 100% 2026-08-14 06:35:03.168775: Inverter 0 disabled charge window while waiting for schedule (now 08-14 06:35:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 06:35:03.168889: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:35:03.169265: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:35:03.169382: No export window planned 2026-08-14 06:35:03.169504: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 06:35:03.169605: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:35:03.169775: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:35:03.169974: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 06:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 06:35:03.170043: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 06:35:03.170112: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 06:35:03.170203: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:35:03.170238: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:35:03.170261: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:35:03.170281: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:35:03.170309: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:35:03.170339: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:35:03.170360: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:35:03.170411: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:35:03.170441: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:35:03.170462: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:35:03.170481: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:35:03.170500: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:35:03.170519: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:35:03.170538: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:35:03.170554: Inverter 0 count register writes 0 2026-08-14 06:35:03.184811: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 06:35:03.185004: Recompute is saving previous plan... 2026-08-14 06:35:03.187600: Best charge window [ 14-08 06:30:00 - 14-08 07:00:00 @ 30.48p 0%, 14-08 07:00:00 - 14-08 07:30:00 @ 28.02p 0%, 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0% ] 2026-08-14 06:35:03.187663: Best export window [ ] 2026-08-14 06:35:03.188305: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 06:35:03.190841: Load divergence over 8.0 hours mean 501.56W, min 230.4W, max 1501.2W, std dev 219.39W, divergence 21.87% 2026-08-14 06:35:03.200988: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 06:35:03.201092: LoadML is_calculating False 2026-08-14 06:35:03.201186: Creating pool of 12 processes to match your CPU count 2026-08-14 06:35:03.279882: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 06:35:03.282023: Optimise levels pass started at 2026-08-14 06:35:03 2026-08-14 06:35:03.282104: Optimise all windows, total charge 94 export 1 2026-08-14 06:35:03.581717: >> Region optimisation pass width 960 2026-08-14 06:35:03.964927: >> Region optimisation pass width 480 2026-08-14 06:35:04.364079: >> Region optimisation pass width 240 2026-08-14 06:35:04.877679: >> Region optimisation pass width 120 2026-08-14 06:35:06.120256: Calculated end_record as 08-15 12:30:00 based on best_price 22.25p, next_charge_start 08-14 12:30:00, max_windows 59 2026-08-14 06:35:06.120425: Optimise levels pass ended at 2026-08-14 06:35:06, duration 2.8 seconds tried 322 combinations 2026-08-14 06:35:06.120501: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1028.7p, best_keep 0kWh, best_cycle 49.02kWh, best_carbon 0kg, best_import 38.65kWh 2026-08-14 06:35:06.139490: Starting detailed optimisation end_record 08-15 12:30:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 13.75, 13.75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 06:35:06.141042: Best charge windows best_metric 749.15p, best_cost 771.15p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 86%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:35:06.141165: Best export windows best_metric 749.15p, best_cost 771.15p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:35:06.141365: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 749.15p, best_cost 771.15p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:06.222272: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 748.99p, best_cost 770.96p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:06.310571: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 748.99p, best_cost 770.96p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:06.439595: Best charge windows best_metric 748.99p, best_cost 770.96p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:35:06.439908: Best export windows best_metric 748.99p, best_cost 770.96p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:35:06.441370: Best charge windows best_metric 748.99p, best_cost 770.96p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:35:06.441492: Best export windows best_metric 748.99p, best_cost 770.96p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:35:06.441615: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 748.99p, best_cost 770.96p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:06.648235: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 748.99p, best_cost 770.96p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:06.742020: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 748.99p, best_cost 770.96p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:06.872031: Best charge windows best_metric 748.99p, best_cost 770.96p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:35:06.872389: Best export windows best_metric 748.99p, best_cost 770.96p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:35:06.873872: Best charge windows best_metric 748.99p, best_cost 770.96p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:35:06.874004: Best export windows best_metric 748.99p, best_cost 770.96p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:35:06.874240: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 748.99p, best_cost 770.96p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:06.961172: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 748.99p, best_cost 770.96p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:07.042554: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 748.99p, best_cost 770.96p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:07.173650: Best charge windows best_metric 748.99p, best_cost 770.96p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:35:07.173851: Best export windows best_metric 748.99p, best_cost 770.96p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:35:07.174101: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 748.99p, best_cost 770.96p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:07.313823: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 748.99p, best_cost 770.96p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:07.395331: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 748.99p, best_cost 770.96p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:07.598317: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 748.99p, best_cost 770.96p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:07.666022: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 748.99p, best_cost 770.96p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:07.729854: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 748.99p, best_cost 770.96p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:07.794685: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 748.99p, best_cost 770.96p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:07.857669: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 748.99p, best_cost 770.96p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:07.964977: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 748.88p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:08.202887: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:08.252067: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:08.304987: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:08.346430: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:08.391933: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:08.438899: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:08.534150: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:08.613545: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:08.679892: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:08.731591: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:08.776167: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:08.819559: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:08.856768: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:08.903949: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:08.976943: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:09.023248: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:09.073129: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:09.123572: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:09.159949: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:09.194137: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:09.231466: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:09.272630: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:09.318616: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:09.358856: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:09.397283: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:09.434511: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:09.469624: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:09.511350: Best charge windows best_metric 748.81p, best_cost 771.0p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:35:09.511611: Best export windows best_metric 748.81p, best_cost 771.0p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:35:09.514089: Best charge windows best_metric 748.81p, best_cost 771.0p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:35:09.514311: Best export windows best_metric 748.81p, best_cost 771.0p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:35:09.514428: Optimise price set 26.6p, pass trim_import, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:09.555572: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:09.599023: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:09.680084: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 748.81p, best_cost 771.0p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 06:35:09.778535: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 748.55p, best_cost 770.51p, best_cycle 25.02kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:35:09.918032: Best charge windows best_metric 748.55p, best_cost 770.51p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:35:09.918367: Best export windows best_metric 748.55p, best_cost 770.51p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:35:09.918517: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 748.55p, best_cost 770.51p, best_cycle 25.02kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:35:09.968206: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 748.55p, best_cost 770.51p, best_cycle 25.02kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:35:10.002346: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 748.55p, best_cost 770.51p, best_cycle 25.02kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:35:10.213883: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 748.55p, best_cost 770.51p, best_cycle 25.02kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:35:10.315484: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 748.55p, best_cost 770.51p, best_cycle 25.02kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:35:10.454766: Best charge windows best_metric 748.55p, best_cost 770.51p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:35:10.455124: Best export windows best_metric 748.55p, best_cost 770.51p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:35:10.457539: Best charge windows best_metric 748.55p, best_cost 770.51p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:35:10.457777: Best export windows best_metric 748.55p, best_cost 770.51p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:35:10.457968: Optimise price set 26.6p, pass trim_import, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 748.55p, best_cost 770.51p, best_cycle 25.02kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:35:10.501293: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 748.55p, best_cost 770.51p, best_cycle 25.02kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:35:10.538983: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 748.55p, best_cost 770.51p, best_cycle 25.02kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:35:10.645506: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 748.55p, best_cost 770.51p, best_cycle 25.02kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:35:10.747386: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 748.55p, best_cost 770.51p, best_cycle 25.02kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:35:10.879713: Best charge windows best_metric 748.55p, best_cost 770.51p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:35:10.879872: Best export windows best_metric 748.55p, best_cost 770.51p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:35:10.880017: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 748.55p, best_cost 770.51p, best_cycle 25.02kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:35:10.921318: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 748.55p, best_cost 770.51p, best_cycle 25.02kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:35:10.957115: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 748.55p, best_cost 770.51p, best_cycle 25.02kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:35:11.161314: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 748.55p, best_cost 770.51p, best_cycle 25.02kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:35:11.235200: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 748.55p, best_cost 770.51p, best_cycle 25.02kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:35:11.347733: Best charge windows best_metric 748.55p, best_cost 770.51p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:35:11.347943: Best export windows best_metric 748.55p, best_cost 770.51p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:35:11.348232: Tweak plan optimisation started 2026-08-14 06:35:11.619563: Tweak optimisation finished metric 748.55 cost 770.51 metric_keep 0 cycle 25.02 carbon 0 import 50.11 2026-08-14 06:35:11.636015: Swap charge optimisation started metric 748.55p, cost 770.51p, min_improvement_swap 0.1p 2026-08-14 06:35:15.327692: Swap charge optimisation finished metric 748.55p, cost 770.51p 2026-08-14 06:35:15.338080: Raw charge windows [ 14-08 06:30:00 - 14-08 07:00:00 @ 30.48p 0%, 14-08 07:00:00 - 14-08 07:30:00 @ 28.02p 0%, 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] reserve 1.12 2026-08-14 06:35:15.338578: Unclipped charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 07:00:00 @ 29.88p 100% ] reserve 1.12 2026-08-14 06:35:15.338794: Unfiltered charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 07:00:00 @ 29.88p 100% ] reserve 1.12 2026-08-14 06:35:15.339013: Filtered charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 07:00:00 @ 29.88p 100% ] reserve 1.12 2026-08-14 06:35:15.377897: Previous plan best metric is 748.65 (cost 770.84) and new plan best metric is 748.55 (cost 770.51) 2026-08-14 06:35:15.378148: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 06:35:15.378387: Plan valid is now true after recompute was False 2026-08-14 06:35:15.410574: predict base end_record 08-15 12:30:00, final soc 1.12kWh, metric 912.53p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:35:00, load 29.75kWh, PV 0.0kWh 2026-08-14 06:35:15.513814: Battery has 2.0 hours left - now at 2.4kWh 2026-08-14 06:35:15.553745: predict base10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 942.63p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:25:00, load 30.82kWh, PV 0.0kWh 2026-08-14 06:35:15.624065: predict best10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 846.89p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:25:00, load 30.82kWh, PV 0.0kWh 2026-08-14 06:35:15.696539: predict best end_record 08-15 12:30:00, final soc 1.12kWh, metric 820.83p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:35:00, load 29.75kWh, PV 0.0kWh 2026-08-14 06:35:15.696626: Saving plan best values to HA entities 2026-08-14 06:35:15.852422: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 06:35:15.857099: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 06:35:15.862145: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.24kWh, house 6.22kWh, export 0.0kWh, metric 820.83p, metric10 846.89p 2026-08-14 06:35:15.942412: Marginal costs baseline metric (no standing charge): 770.8446 2026-08-14 06:35:16.219168: Marginal energy costs matrix computed: min=21.98 max=36.44 2026-08-14 06:35:16.290518: Rate array import [{'start': 395, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 30.5p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2190, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 395, 'end': 2190, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 06:35:16.291243: - Your estimated bill for today is £7.01 and tomorrow is £7.00 2026-08-14 06:35:16.291294: - Import rates are cheap (21.7p - 30.5p) for the next 9 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 06:35:16.291317: - The battery is currently at 15% and is in eco mode for the next 5 hours. 2026-08-14 06:35:16.291336: - For the next 48 hours there will be no solar generation. 2026-08-14 06:35:16.291358: - You will run out of battery in 2 hours. 2026-08-14 06:35:16.291375: - Your next charge slot will be in 5 hours where import rates will be cheap (22.2p). 2026-08-14 06:35:16.291393: 2026-08-14 06:35:16.352657: Plan calculation took 13.17 seconds 2026-08-14 06:35:16.353128: Inverter 0: Type SK Sunsynk 2026-08-14 06:35:16.353205: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 06:35:16.353543: Reserve min: 7%, battery_min: 7% 2026-08-14 06:35:16.353648: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 06:35:16.354139: Inverter 0 SoC: 2.4kW 15%, current charge rate 5000W, current discharge rate 5250W, current battery power 440W, current battery voltage 51.2V, grid power -55W, load power 502W, PV Power 0W 2026-08-14 06:35:16.354444: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:35:16.354580: Inverter 0 scheduled charge enable is False 2026-08-14 06:35:16.354633: Inverter 0 charge windows currently [] 2026-08-14 06:35:16.354674: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 06:35:16.354827: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:35:16.354876: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:35:16.354931: Inverter 0 scheduled discharge enable is False 2026-08-14 06:35:16.355149: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:35:16.355207: Inverter 0 discharge windows currently [] 2026-08-14 06:35:16.355246: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:35:16.355285: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:35:16.355314: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:35:16.411083: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 15%, target 100% 2026-08-14 06:35:16.411228: Inverter 0 disabled charge window while waiting for schedule (now 08-14 06:35:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 06:35:16.411298: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:35:16.411504: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:35:16.411583: No export window planned 2026-08-14 06:35:16.411698: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 06:35:16.411761: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:35:16.411896: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:35:16.412107: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 06:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 06:35:16.412191: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 06:35:16.412249: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 06:35:16.412343: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:35:16.412376: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:35:16.412409: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:35:16.412434: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:35:16.412458: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:35:16.412486: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:35:16.412510: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:35:16.412570: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:35:16.412606: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:35:16.412632: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:35:16.412656: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:35:16.412705: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:35:16.412731: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:35:16.412766: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:35:16.412788: Inverter 0 count register writes 0 2026-08-14 06:35:16.434170: Total inverter register writes now 806 2026-08-14 06:35:16.471439: Info: Completed run status Demand 2026-08-14 06:35:16.478140: Info: record_status Demand 2026-08-14 06:35:16.486078: Saved current settings to /config/predbat_config.json 2026-08-14 06:35:16.486544: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 06:35:54.610270: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:35:54.610519: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:35:54.610555: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:35:54.610703: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:35:54.610741: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:35:54.610762: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:35:54.610780: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:38:08.834325: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:38:08.834622: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:38:08.834660: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:38:08.834814: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:38:08.834877: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:38:08.834899: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:38:08.834917: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:40:00.051816: --------------- PredBat - update at 2026-08-14 06:40:00+01:00 with clock skew 0 minutes, minutes now 400 2026-08-14 06:40:00.052645: Saved current settings to /config/predbat_config.json 2026-08-14 06:40:00.052790: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 74.8 minutes 2026-08-14 06:40:00.052881: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 06:40:00.053066: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 06:40:00.073386: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 06:40:00.073506: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 06:40:00.074025: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 06:40:00.074132: Predbat mode is set to Control charge & discharge 2026-08-14 06:40:00.253715: Found 21602 load_today datapoints going back 28 days 2026-08-14 06:40:00.253889: Using load_power data to fill gaps in load_today data 2026-08-14 06:40:00.955839: Processing 721 30-minute periods for power integration 2026-08-14 06:40:01.114845: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 06:40:01.114973: Car charging hold False, threshold 6.0kWh 2026-08-14 06:40:01.115012: Current data so far today: load 7.45kWh, import 8.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 06:40:01.126802: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 06:40:01.127445: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 06:40:01.127514: Standing charge is set to 49.98p 2026-08-14 06:40:01.151969: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 06:40:01.152057: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 06:40:01.152266: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 400.0 minutes 2026-08-14 06:40:01.152596: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 399.8 minutes 2026-08-14 06:40:01.155165: Loaded 47 datapoints of futurerate analysis 2026-08-14 06:40:01.222851: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 06:40:01.277294: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 06:40:01.281770: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 06:40:01.282202: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 06:40:01.314134: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 06:40:01.314253: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 06:40:01.315324: High export rate found rates in range 99p to -99p 2026-08-14 06:40:01.381388: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 06:40:01.381490: Car 0 charging is not planned as it is not plugged in 2026-08-14 06:40:01.392463: Battery level now 2.4kWh, -1hr ago 2.88kWh, at midnight 2.43kWh, battery value change in the last hour -11.19p, change today -0.75p, rate_forward 23.31p 2026-08-14 06:40:01.392758: Last hour: net energy 0.02kWh, import 0.02kWh, export 0.0kWh, car 0kWh, load 0.53kWh, net cost 0.56p, import 0.56p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 06:40:01.463558: Today's energy total net 8.3kWh, import 8.3kWh, export 0.0kWh, cost 259.83p, import 209.85p, export 0.0p, carbon 0.0kg 2026-08-14 06:40:01.463686: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 06:40:01.541998: Using weighted-bucket historical load forecast over 14 days 2026-08-14 06:40:01.567315: Today's load divergence 112.8%, in-day adjustment 137.19%, damping 0.95x, yesterday 146.81% today 112.16% blend 72.22% 2026-08-14 06:40:01.567415: Today's predicted so far 2.54kWh with 0.0kWh car/iBoost excluded, 1.48kWh import ignored, and 4.03kWh forecast extra. 2026-08-14 06:40:01.567447: Today's actual load so far 4.39kWh with 0.0kWh car/iBoost excluded, and 3.15kWh import ignored. 2026-08-14 06:40:01.601797: Inverter 0: Type SK Sunsynk 2026-08-14 06:40:01.601885: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 06:40:01.602058: Reserve min: 7%, battery_min: 7% 2026-08-14 06:40:01.602161: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 06:40:01.602419: Inverter 0 SoC: 2.4kW 15%, current charge rate 5000W, current discharge rate 5250W, current battery power 496W, current battery voltage 51.2V, grid power -54W, load power 554W, PV Power 0W 2026-08-14 06:40:01.602570: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:40:01.602656: Inverter 0 scheduled charge enable is False 2026-08-14 06:40:01.602684: Inverter 0 charge windows currently [] 2026-08-14 06:40:01.602709: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 06:40:01.602816: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:40:01.602851: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:40:01.602886: Inverter 0 scheduled discharge enable is False 2026-08-14 06:40:01.603010: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:40:01.603047: Inverter 0 discharge windows currently [] 2026-08-14 06:40:01.603070: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:40:01.603087: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:40:01.603121: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:40:01.657424: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 06:40:01.657534: Plan was last updated on 2026-08-14 06:35:00+01:00 and is now 5.0 minutes old 2026-08-14 06:40:01.657857: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 06:40:01.657904: Best export window [ ] 2026-08-14 06:40:01.658763: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 06:40:01.662153: Load divergence over 8.0 hours mean 493.94W, min 242.4W, max 1513.2W, std dev 194.61W, divergence 19.7% 2026-08-14 06:40:01.675289: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 06:40:01.675405: LoadML is_calculating False 2026-08-14 06:40:01.675471: Creating pool of 12 processes to match your CPU count 2026-08-14 06:40:01.792411: predict base end_record 08-15 12:35:00, final soc 1.12kWh, metric 911.15p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:40:00, load 29.76kWh, PV 0.0kWh 2026-08-14 06:40:01.904597: Battery has 2.0 hours left - now at 2.4kWh 2026-08-14 06:40:01.945405: predict base10 end_record 08-15 12:35:00, final soc 1.12kWh, metric 941.19p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:35:00, load 30.82kWh, PV 0.0kWh 2026-08-14 06:40:02.027506: predict best10 end_record 08-15 12:35:00, final soc 1.44kWh, metric 853.28p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:35:00, load 30.82kWh, PV 0.0kWh 2026-08-14 06:40:02.120143: predict best end_record 08-15 12:35:00, final soc 1.51kWh, metric 828.84p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:40:00, load 29.76kWh, PV 0.0kWh 2026-08-14 06:40:02.120239: Saving plan best values to HA entities 2026-08-14 06:40:02.324529: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 06:40:02.330858: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 06:40:02.342405: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.23kWh, house 6.12kWh, export 0.0kWh, metric 828.84p, metric10 853.28p 2026-08-14 06:40:02.416859: Marginal costs baseline metric (no standing charge): 778.8575 2026-08-14 06:40:02.660140: Marginal energy costs matrix computed: min=21.95 max=35.94 2026-08-14 06:40:02.744898: Rate array import [{'start': 400, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 30.5p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2195, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 400, 'end': 2195, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 06:40:02.745682: - Your estimated bill for today is £6.99 and tomorrow is £7.01 2026-08-14 06:40:02.745732: - Import rates are cheap (21.7p - 30.5p) for the next 9 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 06:40:02.745756: - The battery is currently at 15% and is in eco mode for the next 5 and three quarters hours. 2026-08-14 06:40:02.745774: - For the next 48 hours there will be no solar generation. 2026-08-14 06:40:02.745791: - You will run out of battery in 2 hours. 2026-08-14 06:40:02.745808: - Your next charge slot will be in 5 and three quarters hours where import rates will be cheap (22.2p). 2026-08-14 06:40:02.745825: 2026-08-14 06:40:02.811471: Plan calculation took 1.15 seconds 2026-08-14 06:40:02.814962: No high rate period found 2026-08-14 06:40:02.882603: Import threshold used for optimisation was 24.8p 2026-08-14 06:40:02.932704: Low import rate windows [0: 08-14 06:30:00 - 08-14 07:00:00 @ 30.48, 1: 08-14 07:00:00 - 08-14 07:30:00 @ 28.02, 2: 08-14 07:30:00 - 08-14 08:00:00 @ 28.58, 3: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 4: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 5: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 6: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 7: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 8: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 9: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 10: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 11: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 12: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 13: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 14: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 15: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 16: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 17: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 18: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 19: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 20: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 21: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 22: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 23: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 24: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 25: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 26: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 27: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 28: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 29: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 30: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 31: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 32: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 33: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 34: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 35: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 36: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 37: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 38: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 39: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 40: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 41: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 42: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 43: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 44: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 45: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 46: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 47: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 48: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 49: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 50: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 51: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 52: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 53: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 54: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 55: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 56: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 57: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 58: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 59: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 60: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 61: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 62: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 63: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 64: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 65: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 66: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 67: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 68: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 69: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 70: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 71: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 72: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 73: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 74: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 75: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 76: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 77: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 78: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 79: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 80: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 81: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 82: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 83: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 84: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 85: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 86: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 87: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 88: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 89: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 90: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 91: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 92: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 93: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 94: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48] 2026-08-14 06:40:02.939354: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 15%, target 100% 2026-08-14 06:40:02.939488: Inverter 0 disabled charge window while waiting for schedule (now 08-14 06:40:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 06:40:02.939601: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:40:02.939882: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:40:02.939986: No export window planned 2026-08-14 06:40:02.940160: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 06:40:02.940205: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:40:02.940395: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:40:02.940643: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 06:40:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 06:40:02.940710: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 06:40:02.940772: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 06:40:02.940884: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:40:02.940993: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:40:02.941036: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:40:02.941068: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:40:02.941114: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:40:02.941144: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:40:02.941172: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:40:02.941275: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:40:02.941315: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:40:02.941344: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:40:02.941369: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:40:02.941398: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:40:02.941424: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:40:02.941449: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:40:02.941470: Inverter 0 count register writes 0 2026-08-14 06:40:02.957563: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 06:40:02.962501: Total inverter register writes now 806 2026-08-14 06:40:02.993964: Info: Completed run status Demand 2026-08-14 06:40:03.000546: Info: record_status Demand 2026-08-14 06:40:03.007369: Saved current settings to /config/predbat_config.json 2026-08-14 06:40:03.007738: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 06:40:39.114215: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:40:39.114525: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:40:39.114607: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:40:39.114748: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:40:39.114809: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:40:39.114830: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:40:39.114848: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:42:39.332774: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:42:39.333011: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:42:39.333051: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:42:39.333200: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:42:39.333235: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:42:39.333252: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:42:39.333267: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:44:39.546142: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:44:39.546600: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:44:39.546671: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:44:39.546864: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:44:39.546911: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:44:39.546933: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:44:39.546967: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:45:00.653553: --------------- PredBat - update at 2026-08-14 06:45:00+01:00 with clock skew 0 minutes, minutes now 405 2026-08-14 06:45:00.654480: Saved current settings to /config/predbat_config.json 2026-08-14 06:45:00.654665: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 79.9 minutes 2026-08-14 06:45:00.654811: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 06:45:00.654936: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 06:45:00.680434: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 06:45:00.680615: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 06:45:00.681435: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 06:45:00.681602: Predbat mode is set to Control charge & discharge 2026-08-14 06:45:00.918775: Found 21602 load_today datapoints going back 28 days 2026-08-14 06:45:00.919001: Using load_power data to fill gaps in load_today data 2026-08-14 06:45:01.701314: Processing 721 30-minute periods for power integration 2026-08-14 06:45:01.860083: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 06:45:01.860231: Car charging hold False, threshold 6.0kWh 2026-08-14 06:45:01.860269: Current data so far today: load 7.5kWh, import 8.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 06:45:01.871780: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 06:45:01.872508: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 06:45:01.872578: Standing charge is set to 49.98p 2026-08-14 06:45:01.899575: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 06:45:01.899672: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 06:45:01.899838: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 405.0 minutes 2026-08-14 06:45:01.900182: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 404.8 minutes 2026-08-14 06:45:01.902614: Loaded 47 datapoints of futurerate analysis 2026-08-14 06:45:01.972520: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 06:45:02.017788: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 06:45:02.022185: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 06:45:02.022514: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 06:45:02.054633: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 06:45:02.054746: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 06:45:02.055868: High export rate found rates in range 99p to -99p 2026-08-14 06:45:02.118681: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 06:45:02.118800: Car 0 charging is not planned as it is not plugged in 2026-08-14 06:45:02.136326: Battery level now 2.4kWh, -1hr ago 2.88kWh, at midnight 2.43kWh, battery value change in the last hour -11.19p, change today -0.75p, rate_forward 23.31p 2026-08-14 06:45:02.136634: Last hour: net energy 0.01kWh, import 0.01kWh, export 0.0kWh, car 0kWh, load 0.55kWh, net cost 0.38p, import 0.38p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 06:45:02.186752: Today's energy total net 8.3kWh, import 8.3kWh, export 0.0kWh, cost 259.83p, import 209.85p, export 0.0p, carbon 0.0kg 2026-08-14 06:45:02.186914: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 06:45:02.268112: Using weighted-bucket historical load forecast over 14 days 2026-08-14 06:45:02.293926: Today's load divergence 112.92%, in-day adjustment 137.1%, damping 0.95x, yesterday 146.81% today 112.27% blend 71.88% 2026-08-14 06:45:02.294035: Today's predicted so far 2.37kWh with 0.0kWh car/iBoost excluded, 1.67kWh import ignored, and 4.04kWh forecast extra. 2026-08-14 06:45:02.294123: Today's actual load so far 4.21kWh with 0.0kWh car/iBoost excluded, and 3.33kWh import ignored. 2026-08-14 06:45:02.334230: Inverter 0: Type SK Sunsynk 2026-08-14 06:45:02.334325: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 06:45:02.334575: Reserve min: 7%, battery_min: 7% 2026-08-14 06:45:02.334672: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 06:45:02.335009: Inverter 0 SoC: 2.4kW 15%, current charge rate 5000W, current discharge rate 5250W, current battery power 432W, current battery voltage 51.2V, grid power -54W, load power 491W, PV Power 0W 2026-08-14 06:45:02.335242: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:45:02.335361: Inverter 0 scheduled charge enable is False 2026-08-14 06:45:02.335412: Inverter 0 charge windows currently [] 2026-08-14 06:45:02.335469: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 06:45:02.335638: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:45:02.335682: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:45:02.335734: Inverter 0 scheduled discharge enable is False 2026-08-14 06:45:02.335924: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:45:02.335968: Inverter 0 discharge windows currently [] 2026-08-14 06:45:02.335998: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:45:02.336042: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:45:02.336078: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:45:02.396689: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 06:45:02.396799: Plan was last updated on 2026-08-14 06:35:00+01:00 and is now 10.0 minutes old 2026-08-14 06:45:02.397215: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 06:45:02.397271: Best export window [ ] 2026-08-14 06:45:02.398106: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 06:45:02.401395: Load divergence over 8.0 hours mean 487.78W, min 259.2W, max 1239.0W, std dev 174.29W, divergence 17.87% 2026-08-14 06:45:02.415097: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 06:45:02.415232: LoadML is_calculating False 2026-08-14 06:45:02.415299: Creating pool of 12 processes to match your CPU count 2026-08-14 06:45:02.530102: predict base end_record 08-15 12:40:00, final soc 1.12kWh, metric 911.23p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:50:00, load 29.81kWh, PV 0.0kWh 2026-08-14 06:45:02.651202: Battery has 2.08 hours left - now at 2.4kWh 2026-08-14 06:45:02.695235: predict base10 end_record 08-15 12:40:00, final soc 1.12kWh, metric 941.28p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:45:00, load 30.87kWh, PV 0.0kWh 2026-08-14 06:45:02.768794: predict best10 end_record 08-15 12:40:00, final soc 1.77kWh, metric 860.93p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:45:00, load 30.87kWh, PV 0.0kWh 2026-08-14 06:45:02.838798: predict best end_record 08-15 12:40:00, final soc 1.9kWh, metric 838.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:50:00, load 29.81kWh, PV 0.0kWh 2026-08-14 06:45:02.838875: Saving plan best values to HA entities 2026-08-14 06:45:02.991932: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 06:45:02.997564: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 06:45:03.003116: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.22kWh, house 6.06kWh, export 0.0kWh, metric 838.0p, metric10 860.93p 2026-08-14 06:45:03.080826: Marginal costs baseline metric (no standing charge): 788.0118 2026-08-14 06:45:03.354230: Marginal energy costs matrix computed: min=21.91 max=35.49 2026-08-14 06:45:03.431482: Rate array import [{'start': 405, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 30.5p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2200, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 405, 'end': 2200, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 06:45:03.432200: - Your estimated bill for today is £6.97 and tomorrow is £7.03 2026-08-14 06:45:03.432246: - Import rates are cheap (21.7p - 30.5p) for the next 9 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 06:45:03.432268: - The battery is currently at 15% and is in eco mode for the next 5 and three quarters hours. 2026-08-14 06:45:03.432287: - For the next 48 hours there will be no solar generation. 2026-08-14 06:45:03.432308: - You will run out of battery in 2 hours. 2026-08-14 06:45:03.432325: - Your next charge slot will be in 5 and three quarters hours where import rates will be cheap (22.2p). 2026-08-14 06:45:03.432343: 2026-08-14 06:45:03.493093: Plan calculation took 1.10 seconds 2026-08-14 06:45:03.496703: No high rate period found 2026-08-14 06:45:03.547690: Import threshold used for optimisation was 24.8p 2026-08-14 06:45:03.616909: Low import rate windows [0: 08-14 06:30:00 - 08-14 07:00:00 @ 30.48, 1: 08-14 07:00:00 - 08-14 07:30:00 @ 28.02, 2: 08-14 07:30:00 - 08-14 08:00:00 @ 28.58, 3: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 4: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 5: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 6: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 7: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 8: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 9: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 10: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 11: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 12: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 13: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 14: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 15: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 16: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 17: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 18: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 19: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 20: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 21: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 22: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 23: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 24: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 25: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 26: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 27: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 28: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 29: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 30: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 31: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 32: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 33: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 34: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 35: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 36: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 37: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 38: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 39: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 40: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 41: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 42: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 43: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 44: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 45: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 46: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 47: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 48: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 49: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 50: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 51: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 52: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 53: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 54: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 55: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 56: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 57: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 58: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 59: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 60: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 61: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 62: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 63: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 64: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 65: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 66: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 67: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 68: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 69: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 70: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 71: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 72: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 73: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 74: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 75: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 76: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 77: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 78: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 79: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 80: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 81: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 82: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 83: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 84: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 85: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 86: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 87: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 88: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 89: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 90: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 91: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 92: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 93: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 94: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48] 2026-08-14 06:45:03.623740: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 15%, target 100% 2026-08-14 06:45:03.623868: Inverter 0 disabled charge window while waiting for schedule (now 08-14 06:45:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 06:45:03.623983: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:45:03.624248: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:45:03.624356: No export window planned 2026-08-14 06:45:03.624482: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 06:45:03.624525: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:45:03.624661: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:45:03.624887: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 06:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 06:45:03.624986: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 06:45:03.625059: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 06:45:03.625181: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:45:03.625226: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:45:03.625254: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:45:03.625279: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:45:03.625304: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:45:03.625327: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:45:03.625352: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:45:03.625416: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:45:03.625452: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:45:03.625477: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:45:03.625502: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:45:03.625526: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:45:03.625550: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:45:03.625580: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:45:03.625602: Inverter 0 count register writes 0 2026-08-14 06:45:03.642470: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 06:45:03.642696: Recompute is saving previous plan... 2026-08-14 06:45:03.645931: Best charge window [ 14-08 06:30:00 - 14-08 07:00:00 @ 30.48p 0%, 14-08 07:00:00 - 14-08 07:30:00 @ 28.02p 0%, 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0% ] 2026-08-14 06:45:03.646022: Best export window [ ] 2026-08-14 06:45:03.646908: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 06:45:03.650134: Load divergence over 8.0 hours mean 487.78W, min 259.2W, max 1239.0W, std dev 174.29W, divergence 17.87% 2026-08-14 06:45:03.662379: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 06:45:03.662521: LoadML is_calculating False 2026-08-14 06:45:03.662623: Creating pool of 12 processes to match your CPU count 2026-08-14 06:45:03.755052: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 06:45:03.757297: Optimise levels pass started at 2026-08-14 06:45:03 2026-08-14 06:45:03.757364: Optimise all windows, total charge 94 export 1 2026-08-14 06:45:04.062846: >> Region optimisation pass width 960 2026-08-14 06:45:04.475467: >> Region optimisation pass width 480 2026-08-14 06:45:04.924796: >> Region optimisation pass width 240 2026-08-14 06:45:05.483079: >> Region optimisation pass width 120 2026-08-14 06:45:06.889486: Calculated end_record as 08-15 12:30:00 based on best_price 22.25p, next_charge_start 08-14 12:30:00, max_windows 59 2026-08-14 06:45:06.889675: Optimise levels pass ended at 2026-08-14 06:45:06, duration 3.1 seconds tried 322 combinations 2026-08-14 06:45:06.890042: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1027.06p, best_keep 0kWh, best_cycle 49.13kWh, best_carbon 0kg, best_import 38.47kWh 2026-08-14 06:45:06.914337: Starting detailed optimisation end_record 08-15 12:30:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 13.75, 13.75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 06:45:06.916172: Best charge windows best_metric 744.96p, best_cost 766.99p, best_carbon 0kg, best_import 50.14kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 86%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:45:06.916292: Best export windows best_metric 744.96p, best_cost 766.99p, best_carbon 0kg, best_import 50.14kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:45:06.917042: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 744.96p, best_cost 766.99p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:07.009597: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 744.81p, best_cost 766.8p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:07.122513: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 744.81p, best_cost 766.8p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:07.287765: Best charge windows best_metric 744.81p, best_cost 766.8p, best_carbon 0kg, best_import 50.14kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:45:07.287967: Best export windows best_metric 744.81p, best_cost 766.8p, best_carbon 0kg, best_import 50.14kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:45:07.289545: Best charge windows best_metric 744.81p, best_cost 766.8p, best_carbon 0kg, best_import 50.14kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:45:07.289916: Best export windows best_metric 744.81p, best_cost 766.8p, best_carbon 0kg, best_import 50.14kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:45:07.290252: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 744.81p, best_cost 766.8p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:07.527575: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 744.81p, best_cost 766.8p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:07.627854: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 744.81p, best_cost 766.8p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:07.769851: Best charge windows best_metric 744.81p, best_cost 766.8p, best_carbon 0kg, best_import 50.14kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:45:07.770257: Best export windows best_metric 744.81p, best_cost 766.8p, best_carbon 0kg, best_import 50.14kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:45:07.771714: Best charge windows best_metric 744.81p, best_cost 766.8p, best_carbon 0kg, best_import 50.14kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:45:07.771808: Best export windows best_metric 744.81p, best_cost 766.8p, best_carbon 0kg, best_import 50.14kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:45:07.771956: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 744.81p, best_cost 766.8p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:07.868427: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 744.81p, best_cost 766.8p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:07.961790: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 744.81p, best_cost 766.8p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:08.101995: Best charge windows best_metric 744.81p, best_cost 766.8p, best_carbon 0kg, best_import 50.14kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:45:08.102414: Best export windows best_metric 744.81p, best_cost 766.8p, best_carbon 0kg, best_import 50.14kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:45:08.102663: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 744.81p, best_cost 766.8p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:08.226019: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 744.81p, best_cost 766.8p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:08.309946: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 744.81p, best_cost 766.8p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:08.520978: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 744.81p, best_cost 766.8p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:08.595701: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 744.81p, best_cost 766.8p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:08.664814: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 744.81p, best_cost 766.8p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:08.733061: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 744.81p, best_cost 766.8p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:08.801370: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 744.81p, best_cost 766.8p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:08.934706: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 744.66p, best_cost 766.8p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:09.172184: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:09.218318: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:09.270471: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:09.319395: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:09.377084: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:09.426911: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:09.515911: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:09.603168: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:09.676211: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:09.714863: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:09.748044: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:09.793703: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:09.827507: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:09.869439: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:09.946747: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:09.990268: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:10.043533: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:10.089876: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:10.131340: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:10.165787: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:10.203458: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:10.247136: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:10.286693: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:10.336264: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:10.376136: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:10.420426: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:10.463318: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:10.513454: Best charge windows best_metric 744.6p, best_cost 766.82p, best_carbon 0kg, best_import 50.14kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:45:10.513664: Best export windows best_metric 744.6p, best_cost 766.82p, best_carbon 0kg, best_import 50.14kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:45:10.515725: Best charge windows best_metric 744.6p, best_cost 766.82p, best_carbon 0kg, best_import 50.14kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:45:10.516097: Best export windows best_metric 744.6p, best_cost 766.82p, best_carbon 0kg, best_import 50.14kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:45:10.516404: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:10.616419: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:10.659946: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:10.755311: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 744.6p, best_cost 766.82p, best_cycle 26.51kWh, best_carbon 0kg, best_import 50.14kWh 2026-08-14 06:45:10.855257: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 744.52p, best_cost 766.66p, best_cycle 26.01kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:45:11.003461: Best charge windows best_metric 744.52p, best_cost 766.66p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:45:11.003817: Best export windows best_metric 744.52p, best_cost 766.66p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:45:11.004206: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 744.52p, best_cost 766.66p, best_cycle 26.01kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:45:11.087511: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 744.48p, best_cost 766.67p, best_cycle 26.01kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:45:11.344514: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 744.48p, best_cost 766.67p, best_cycle 26.01kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 06:45:11.447115: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 744.47p, best_cost 766.43p, best_cycle 25.04kWh, best_carbon 0kg, best_import 50.04kWh 2026-08-14 06:45:11.586188: Best charge windows best_metric 744.47p, best_cost 766.43p, best_carbon 0kg, best_import 50.04kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:45:11.586361: Best export windows best_metric 744.47p, best_cost 766.43p, best_carbon 0kg, best_import 50.04kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:45:11.588358: Best charge windows best_metric 744.47p, best_cost 766.43p, best_carbon 0kg, best_import 50.04kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:45:11.588457: Best export windows best_metric 744.47p, best_cost 766.43p, best_carbon 0kg, best_import 50.04kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:45:11.588563: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 744.47p, best_cost 766.43p, best_cycle 25.04kWh, best_carbon 0kg, best_import 50.04kWh 2026-08-14 06:45:11.674197: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 744.47p, best_cost 766.43p, best_cycle 25.04kWh, best_carbon 0kg, best_import 50.04kWh 2026-08-14 06:45:11.759834: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 744.47p, best_cost 766.43p, best_cycle 25.04kWh, best_carbon 0kg, best_import 50.04kWh 2026-08-14 06:45:11.848153: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 744.47p, best_cost 766.43p, best_cycle 25.04kWh, best_carbon 0kg, best_import 50.04kWh 2026-08-14 06:45:11.969783: Best charge windows best_metric 744.47p, best_cost 766.43p, best_carbon 0kg, best_import 50.04kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:45:11.970227: Best export windows best_metric 744.47p, best_cost 766.43p, best_carbon 0kg, best_import 50.04kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:45:11.970411: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 744.47p, best_cost 766.43p, best_cycle 25.04kWh, best_carbon 0kg, best_import 50.04kWh 2026-08-14 06:45:12.042435: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 744.47p, best_cost 766.43p, best_cycle 25.04kWh, best_carbon 0kg, best_import 50.04kWh 2026-08-14 06:45:12.243562: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 744.47p, best_cost 766.43p, best_cycle 25.04kWh, best_carbon 0kg, best_import 50.04kWh 2026-08-14 06:45:12.310140: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 744.47p, best_cost 766.43p, best_cycle 25.04kWh, best_carbon 0kg, best_import 50.04kWh 2026-08-14 06:45:12.416703: Best charge windows best_metric 744.47p, best_cost 766.43p, best_carbon 0kg, best_import 50.04kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:45:12.416874: Best export windows best_metric 744.47p, best_cost 766.43p, best_carbon 0kg, best_import 50.04kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:45:12.417622: Tweak plan optimisation started 2026-08-14 06:45:12.686928: Tweak optimisation finished metric 744.47 cost 766.43 metric_keep 0 cycle 25.04 carbon 0 import 50.04 2026-08-14 06:45:12.710768: Swap charge optimisation started metric 744.47p, cost 766.43p, min_improvement_swap 0.1p 2026-08-14 06:45:14.982643: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 06:45:17.312077: Processing 1345 30-minute periods for power integration 2026-08-14 06:45:17.515011: ML Component: Car charging hold False, car energy reported load False 2026-08-14 06:45:17.733803: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 06:45:17.930438: ML Temperature data points: 49996 2026-08-14 06:45:18.550054: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 06:45:18.641975: ML Component: Data fetch completed, load data age 55.0 days, 16063 data points 2026-08-14 06:45:18.647255: ML Component: Starting fine-tune training (2h interval), model age is 2.0415468880555556 hours 2026-08-14 06:45:18.652434: ML Component: Waiting for current prediction cycle to complete before running ML work 2026-08-14 06:45:19.291660: Swap charge optimisation finished metric 744.47p, cost 766.43p 2026-08-14 06:45:19.304796: Raw charge windows [ 14-08 06:30:00 - 14-08 07:00:00 @ 30.48p 0%, 14-08 07:00:00 - 14-08 07:30:00 @ 28.02p 0%, 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] reserve 1.12 2026-08-14 06:45:19.305617: Unclipped charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 07:00:00 @ 29.88p 100% ] reserve 1.12 2026-08-14 06:45:19.306057: Unfiltered charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 07:00:00 @ 29.88p 100% ] reserve 1.12 2026-08-14 06:45:19.306465: Filtered charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 07:00:00 @ 29.88p 100% ] reserve 1.12 2026-08-14 06:45:19.347258: Previous plan best metric is 744.46 (cost 766.68) and new plan best metric is 744.47 (cost 766.43) 2026-08-14 06:45:19.347568: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 06:45:19.347815: Plan valid is now true after recompute was False 2026-08-14 06:45:19.376572: predict base end_record 08-15 12:30:00, final soc 1.12kWh, metric 908.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:50:00, load 29.68kWh, PV 0.0kWh 2026-08-14 06:45:19.498627: Battery has 2.08 hours left - now at 2.4kWh 2026-08-14 06:45:19.544526: predict base10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 938.3p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:45:00, load 30.74kWh, PV 0.0kWh 2026-08-14 06:45:19.622858: predict best10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 842.55p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:45:00, load 30.74kWh, PV 0.0kWh 2026-08-14 06:45:19.709974: predict best end_record 08-15 12:30:00, final soc 1.12kWh, metric 816.66p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:50:00, load 29.68kWh, PV 0.0kWh 2026-08-14 06:45:19.710072: Saving plan best values to HA entities 2026-08-14 06:45:19.878277: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 06:45:19.884017: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 06:45:19.889607: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.22kWh, house 6.06kWh, export 0.0kWh, metric 816.66p, metric10 842.55p 2026-08-14 06:45:19.964354: Marginal costs baseline metric (no standing charge): 766.681 2026-08-14 06:45:20.248853: Marginal energy costs matrix computed: min=21.91 max=35.49 2026-08-14 06:45:20.317738: Rate array import [{'start': 405, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 30.5p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2190, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 405, 'end': 2190, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 06:45:20.318522: - Your estimated bill for today is £6.97 and tomorrow is £7.03 2026-08-14 06:45:20.318574: - Import rates are cheap (21.7p - 30.5p) for the next 9 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 06:45:20.318598: - The battery is currently at 15% and is in eco mode for the next 5 and three quarters hours. 2026-08-14 06:45:20.318617: - For the next 48 hours there will be no solar generation. 2026-08-14 06:45:20.318635: - You will run out of battery in 2 hours. 2026-08-14 06:45:20.318657: - Your next charge slot will be in 5 and three quarters hours where import rates will be cheap (22.2p). 2026-08-14 06:45:20.318674: 2026-08-14 06:45:20.380011: Plan calculation took 16.74 seconds 2026-08-14 06:45:20.380405: Inverter 0: Type SK Sunsynk 2026-08-14 06:45:20.380495: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 06:45:20.380798: Reserve min: 7%, battery_min: 7% 2026-08-14 06:45:20.380921: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 06:45:20.381342: Inverter 0 SoC: 2.4kW 15%, current charge rate 5000W, current discharge rate 5250W, current battery power 448W, current battery voltage 51.2V, grid power -54W, load power 507W, PV Power 0W 2026-08-14 06:45:20.381623: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:45:20.381750: Inverter 0 scheduled charge enable is False 2026-08-14 06:45:20.381806: Inverter 0 charge windows currently [] 2026-08-14 06:45:20.381875: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 06:45:20.382057: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:45:20.382101: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:45:20.382153: Inverter 0 scheduled discharge enable is False 2026-08-14 06:45:20.382331: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:45:20.382373: Inverter 0 discharge windows currently [] 2026-08-14 06:45:20.382401: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:45:20.382425: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:45:20.382444: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:45:20.437328: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 15%, target 100% 2026-08-14 06:45:20.437470: Inverter 0 disabled charge window while waiting for schedule (now 08-14 06:45:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 06:45:20.437539: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:45:20.437715: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:45:20.437796: No export window planned 2026-08-14 06:45:20.437905: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 06:45:20.437946: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:45:20.438083: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:45:20.438287: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 06:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 06:45:20.438344: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 06:45:20.438404: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 06:45:20.438490: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:45:20.438530: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:45:20.438557: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:45:20.438583: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:45:20.438614: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:45:20.438639: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:45:20.438668: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:45:20.438758: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:45:20.438788: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:45:20.438812: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:45:20.438840: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:45:20.438865: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:45:20.438897: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:45:20.438922: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:45:20.438944: Inverter 0 count register writes 0 2026-08-14 06:45:20.460302: Total inverter register writes now 806 2026-08-14 06:45:20.496304: Info: Completed run status Demand 2026-08-14 06:45:20.502811: Info: record_status Demand 2026-08-14 06:45:20.510119: Saved current settings to /config/predbat_config.json 2026-08-14 06:45:20.510390: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 06:45:20.665710: ML Component: Doing training... 2026-08-14 06:45:20.681923: ML Predictor: Curriculum training - capped to last 4 intermediate passes (starting at window=52.0 days) 2026-08-14 06:45:20.682240: ML Predictor: Curriculum training - 5 passes, window 52.0→55.0 days + final full pass (55.8 days) 2026-08-14 06:45:20.753404: ML Predictor: Curriculum pass 1/5: window=52.0 days (1248 hours of data) 2026-08-14 06:45:20.753548: ML Predictor: Starting initial training with 30 epochs 2026-08-14 06:45:21.310611: ML Predictor: Creating dataset with 1248 hours of training data, 48 hours validation 2026-08-14 06:45:25.780442: ML Predictor: Created 14688 training samples, 576 validation samples 2026-08-14 06:45:25.825467: ML Predictor: Normalization stats [fit] target(mean=0.0588 std=0.0474) load(mean=0.0587 std=0.0472) pv(mean=0.0000 std=0.0100) temp(mean=19.5283 std=4.4098) import_rate(mean=24.2360 std=1.9826) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1939 std=0.5220) 2026-08-14 06:45:51.925009: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0070 val_mae=0.0021 kWh val_bias=+0.0005 kWh (+0.7%) combined=0.0011 kWh ema_combined=0.0011 kWh 2026-08-14 06:45:54.121444: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:45:54.121973: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:45:54.122150: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:45:54.122571: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:45:54.122736: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:45:54.122894: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:45:54.123031: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:46:15.720029: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0087 val_mae=0.0025 kWh val_bias=+0.0010 kWh (+1.5%) combined=0.0024 kWh ema_combined=0.0015 kWh 2026-08-14 06:46:39.462234: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0096 val_mae=0.0025 kWh val_bias=+0.0010 kWh (+1.6%) combined=0.0018 kWh ema_combined=0.0016 kWh 2026-08-14 06:47:01.751809: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0075 val_mae=0.0027 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0021 kWh ema_combined=0.0018 kWh 2026-08-14 06:47:25.583645: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0086 val_mae=0.0021 kWh val_bias=-0.0006 kWh (-0.9%) combined=0.0012 kWh ema_combined=0.0016 kWh 2026-08-14 06:47:50.437912: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0100 val_mae=0.0030 kWh val_bias=+0.0015 kWh (+2.3%) combined=0.0035 kWh ema_combined=0.0021 kWh 2026-08-14 06:47:54.525238: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:47:54.525658: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:47:54.525739: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:47:54.525967: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:47:54.526028: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:47:54.526066: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:47:54.526194: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:48:14.938448: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0114 val_mae=0.0024 kWh val_bias=+0.0000 kWh (+0.1%) combined=0.0015 kWh ema_combined=0.0019 kWh 2026-08-14 06:48:38.395302: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0100 val_mae=0.0026 kWh val_bias=-0.0008 kWh (-1.2%) combined=0.0013 kWh ema_combined=0.0018 kWh 2026-08-14 06:49:02.675262: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0093 val_mae=0.0023 kWh val_bias=-0.0012 kWh (-1.9%) combined=0.0023 kWh ema_combined=0.0019 kWh 2026-08-14 06:49:24.891215: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0074 val_mae=0.0018 kWh val_bias=-0.0004 kWh (-0.6%) combined=0.0012 kWh ema_combined=0.0017 kWh 2026-08-14 06:49:49.412528: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0070 val_mae=0.0018 kWh val_bias=-0.0002 kWh (-0.2%) combined=0.0009 kWh ema_combined=0.0015 kWh 2026-08-14 06:49:49.412823: ML Predictor: Early stopping at epoch 11 2026-08-14 06:49:49.413793: ML Predictor: Restored best weights from epoch with val_mae=0.0021 kWh val_bias=+0.0005 kWh (+0.7%) 2026-08-14 06:49:49.414016: ML Predictor: Training complete, final val_mae=0.0021 kWh val_bias=+0.0005 kWh (+0.7%) 2026-08-14 06:49:57.986543: ML Predictor: AR rollout over holdout: ar_mae=0.0023 kWh ar_bias=+0.0003 kWh (+0.5%) [drift vs teacher-forced: +0.0002 kWh] 2026-08-14 06:49:57.991906: ML Predictor: Curriculum pass 1/5 complete, val_mae=0.0021 kWh 2026-08-14 06:49:58.069350: ML Predictor: Curriculum pass 2/5: window=53.0 days (1272 hours of data) 2026-08-14 06:49:58.069627: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 06:49:58.760027: ML Predictor: Creating dataset with 1272 hours of training data, 48 hours validation 2026-08-14 06:50:00.055886: --------------- PredBat - update at 2026-08-14 06:50:00+01:00 with clock skew 0 minutes, minutes now 410 2026-08-14 06:50:00.082282: Saved current settings to /config/predbat_config.json 2026-08-14 06:50:00.087601: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 84.8 minutes 2026-08-14 06:50:00.092811: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 06:50:00.098027: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 06:50:00.305195: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 06:50:00.305453: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 06:50:00.311306: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 06:50:00.312342: Predbat mode is set to Control charge & discharge 2026-08-14 06:50:01.381804: Found 21602 load_today datapoints going back 28 days 2026-08-14 06:50:01.387118: Using load_power data to fill gaps in load_today data 2026-08-14 06:50:03.133258: Processing 721 30-minute periods for power integration 2026-08-14 06:50:03.520657: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 06:50:03.525967: Car charging hold False, threshold 6.0kWh 2026-08-14 06:50:03.531194: Current data so far today: load 7.55kWh, import 8.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 06:50:03.560906: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 06:50:03.566869: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 06:50:03.572102: Standing charge is set to 49.98p 2026-08-14 06:50:03.727631: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 06:50:03.738120: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 06:50:03.743501: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 410.0 minutes 2026-08-14 06:50:03.749192: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 409.8 minutes 2026-08-14 06:50:03.757041: Loaded 47 datapoints of futurerate analysis 2026-08-14 06:50:03.928062: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 06:50:04.052989: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 06:50:04.063250: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 06:50:04.068875: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 06:50:04.156002: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 06:50:04.161420: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 06:50:04.173145: High export rate found rates in range 99p to -99p 2026-08-14 06:50:04.356380: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 06:50:04.366895: Car 0 charging is not planned as it is not plugged in 2026-08-14 06:50:04.532842: Battery level now 2.4kWh, -1hr ago 2.82kWh, at midnight 2.43kWh, battery value change in the last hour -9.88p, change today -0.75p, rate_forward 23.31p 2026-08-14 06:50:04.538455: Last hour: net energy 0.01kWh, import 0.01kWh, export 0.0kWh, car 0kWh, load 0.58kWh, net cost 0.19p, import 0.19p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 06:50:05.057394: Today's energy total net 8.3kWh, import 8.3kWh, export 0.0kWh, cost 259.83p, import 209.85p, export 0.0p, carbon 0.0kg 2026-08-14 06:50:05.062692: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 06:50:05.257098: Using weighted-bucket historical load forecast over 14 days 2026-08-14 06:50:05.303740: Today's load divergence 114.64%, in-day adjustment 137.44%, damping 0.95x, yesterday 146.81% today 113.91% blend 71.53% 2026-08-14 06:50:05.309090: Today's predicted so far 2.46kWh with 0.0kWh car/iBoost excluded, 1.6kWh import ignored, and 4.06kWh forecast extra. 2026-08-14 06:50:05.324767: Today's actual load so far 4.61kWh with 0.0kWh car/iBoost excluded, and 2.93kWh import ignored. 2026-08-14 06:50:05.594506: Inverter 0: Type SK Sunsynk 2026-08-14 06:50:05.599819: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 06:50:05.605297: Reserve min: 7%, battery_min: 7% 2026-08-14 06:50:05.610618: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 06:50:05.616237: Inverter 0 SoC: 2.33kW 15%, current charge rate 5000W, current discharge rate 5250W, current battery power 452W, current battery voltage 51.2V, grid power -54W, load power 513W, PV Power 0W 2026-08-14 06:50:05.621774: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:50:05.627030: Inverter 0 scheduled charge enable is False 2026-08-14 06:50:05.627091: Inverter 0 charge windows currently [] 2026-08-14 06:50:05.627131: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 06:50:05.627277: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:50:05.627327: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:50:05.632477: Inverter 0 scheduled discharge enable is False 2026-08-14 06:50:05.632647: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:50:05.637868: Inverter 0 discharge windows currently [] 2026-08-14 06:50:05.643091: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:50:05.648314: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:50:05.653541: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:50:05.738195: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 06:50:05.738321: Plan was last updated on 2026-08-14 06:45:00+01:00 and is now 5.0 minutes old 2026-08-14 06:50:05.738612: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 06:50:05.738672: Best export window [ ] 2026-08-14 06:50:05.739599: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 06:50:05.743101: Load divergence over 8.0 hours mean 481.06W, min 289.2W, max 1260.6W, std dev 163.81W, divergence 17.03% 2026-08-14 06:50:05.756497: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 06:50:05.756605: LoadML is_calculating True 2026-08-14 06:50:05.756646: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 06:50:05.794139: predict base end_record 08-15 12:35:00, final soc 1.12kWh, metric 911.64p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:50:00, load 29.8kWh, PV 0.0kWh 2026-08-14 06:50:05.897349: ML Predictor: Created 14976 training samples, 576 validation samples 2026-08-14 06:50:05.960288: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0588 std=0.0474) load(mean=0.0587 std=0.0472) pv(mean=0.0000 std=0.0100) temp(mean=19.5241 std=4.4090) import_rate(mean=24.2363 std=1.9807) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1936 std=0.5221) 2026-08-14 06:50:05.985280: Battery has 2.0 hours left - now at 2.33kWh 2026-08-14 06:50:06.039416: predict base10 end_record 08-15 12:35:00, final soc 1.12kWh, metric 941.63p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:40:00, load 30.86kWh, PV 0.0kWh 2026-08-14 06:50:06.046534: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 06:50:06.067180: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 06:50:06.117990: ML Predictor: Baseline (pre-finetune) val_mae=0.0018 kWh val_bias=+0.0002 kWh 2026-08-14 06:50:06.247760: predict best10 end_record 08-15 12:35:00, final soc 1.44kWh, metric 853.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:40:00, load 30.86kWh, PV 0.0kWh 2026-08-14 06:50:06.399842: predict best end_record 08-15 12:35:00, final soc 1.51kWh, metric 829.05p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:50:00, load 29.8kWh, PV 0.0kWh 2026-08-14 06:50:06.399962: Saving plan best values to HA entities 2026-08-14 06:50:06.723217: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 06:50:06.740791: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 06:50:06.750441: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.24kWh, house 6.12kWh, export 0.0kWh, metric 829.05p, metric10 853.47p 2026-08-14 06:50:06.937665: Marginal costs baseline metric (no standing charge): 779.0689 2026-08-14 06:50:07.232524: Marginal energy costs matrix computed: min=21.88 max=35.12 2026-08-14 06:50:07.408056: Rate array import [{'start': 410, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 30.5p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2195, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 410, 'end': 2195, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 06:50:07.408835: - Your estimated bill for today is £6.98 and tomorrow is £7.04 2026-08-14 06:50:07.408902: - Import rates are cheap (21.7p - 30.5p) for the next 9 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 06:50:07.408927: - The battery is currently at 15% and is in eco mode for the next 5 and three quarters hours. 2026-08-14 06:50:07.424998: - For the next 48 hours there will be no solar generation. 2026-08-14 06:50:07.425119: - You will run out of battery in 2 hours. 2026-08-14 06:50:07.425145: - Your next charge slot will be in 5 and three quarters hours where import rates will be cheap (22.2p). 2026-08-14 06:50:07.425164: 2026-08-14 06:50:07.475013: Plan calculation took 1.74 seconds 2026-08-14 06:50:07.478316: No high rate period found 2026-08-14 06:50:07.595950: Import threshold used for optimisation was 24.8p 2026-08-14 06:50:07.693348: Low import rate windows [0: 08-14 06:30:00 - 08-14 07:00:00 @ 30.48, 1: 08-14 07:00:00 - 08-14 07:30:00 @ 28.02, 2: 08-14 07:30:00 - 08-14 08:00:00 @ 28.58, 3: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 4: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 5: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 6: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 7: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 8: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 9: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 10: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 11: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 12: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 13: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 14: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 15: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 16: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 17: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 18: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 19: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 20: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 21: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 22: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 23: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 24: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 25: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 26: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 27: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 28: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 29: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 30: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 31: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 32: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 33: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 34: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 35: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 36: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 37: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 38: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 39: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 40: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 41: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 42: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 43: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 44: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 45: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 46: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 47: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 48: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 49: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 50: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 51: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 52: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 53: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 54: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 55: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 56: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 57: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 58: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 59: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 60: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 61: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 62: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 63: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 64: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 65: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 66: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 67: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 68: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 69: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 70: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 71: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 72: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 73: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 74: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 75: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 76: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 77: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 78: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 79: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 80: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 81: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 82: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 83: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 84: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 85: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 86: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 87: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 88: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 89: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 90: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 91: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 92: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 93: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 94: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48] 2026-08-14 06:50:07.708244: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 15%, target 100% 2026-08-14 06:50:07.708394: Inverter 0 disabled charge window while waiting for schedule (now 08-14 06:50:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 06:50:07.708456: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:50:07.708637: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:50:07.708712: No export window planned 2026-08-14 06:50:07.708840: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 06:50:07.708878: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:50:07.709053: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:50:07.709210: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 06:50:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 06:50:07.709261: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 06:50:07.709310: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 06:50:07.709395: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:50:07.709460: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:50:07.709580: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:50:07.709631: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:50:07.709764: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:50:07.709814: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:50:07.709924: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:50:07.710053: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:50:07.710103: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:50:07.710216: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:50:07.710262: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:50:07.710369: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:50:07.710416: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:50:07.710512: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:50:07.710552: Inverter 0 count register writes 0 2026-08-14 06:50:07.743946: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 06:50:07.749395: Total inverter register writes now 806 2026-08-14 06:50:07.806038: Info: Completed run status Demand 2026-08-14 06:50:07.832800: Info: record_status Demand 2026-08-14 06:50:07.840853: Saved current settings to /config/predbat_config.json 2026-08-14 06:50:07.841155: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 06:50:31.042801: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0076 val_mae=0.0021 kWh val_bias=+0.0008 kWh (+1.3%) combined=0.0019 kWh ema_combined=0.0019 kWh 2026-08-14 06:50:39.055127: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:50:39.055382: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:50:39.055428: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:50:39.055560: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:50:39.055601: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:50:39.055622: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:50:39.055724: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:50:55.150265: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0083 val_mae=0.0022 kWh val_bias=+0.0001 kWh (+0.1%) combined=0.0016 kWh ema_combined=0.0018 kWh 2026-08-14 06:51:21.180576: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0090 val_mae=0.0023 kWh val_bias=-0.0017 kWh (-2.9%) combined=0.0028 kWh ema_combined=0.0021 kWh 2026-08-14 06:51:47.135817: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0113 val_mae=0.0030 kWh val_bias=-0.0024 kWh (-4.1%) combined=0.0032 kWh ema_combined=0.0024 kWh 2026-08-14 06:52:13.415726: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0096 val_mae=0.0021 kWh val_bias=+0.0012 kWh (+2.1%) combined=0.0022 kWh ema_combined=0.0023 kWh 2026-08-14 06:52:39.155565: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0088 val_mae=0.0019 kWh val_bias=-0.0009 kWh (-1.6%) combined=0.0016 kWh ema_combined=0.0021 kWh 2026-08-14 06:52:39.397011: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:52:39.397272: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:52:39.397320: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:52:39.397457: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:52:39.397497: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:52:39.397518: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:52:39.397620: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:53:04.191472: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0092 val_mae=0.0017 kWh val_bias=-0.0004 kWh (-0.8%) combined=0.0011 kWh ema_combined=0.0018 kWh 2026-08-14 06:53:29.472402: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0075 val_mae=0.0018 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0009 kWh ema_combined=0.0016 kWh 2026-08-14 06:53:55.063873: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0078 val_mae=0.0016 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0009 kWh ema_combined=0.0014 kWh 2026-08-14 06:54:19.998358: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0080 val_mae=0.0017 kWh val_bias=-0.0008 kWh (-1.4%) combined=0.0017 kWh ema_combined=0.0015 kWh 2026-08-14 06:54:19.998630: ML Predictor: Early stopping at epoch 10 2026-08-14 06:54:19.999850: ML Predictor: Restored best weights from epoch with val_mae=0.0018 kWh val_bias=+0.0002 kWh (+0.4%) 2026-08-14 06:54:20.000165: ML Predictor: Training complete, final val_mae=0.0018 kWh val_bias=+0.0002 kWh (+0.4%) 2026-08-14 06:54:27.762293: ML Predictor: AR rollout over holdout: ar_mae=0.0020 kWh ar_bias=+0.0001 kWh (+0.1%) [drift vs teacher-forced: +0.0002 kWh] 2026-08-14 06:54:27.774405: ML Predictor: Curriculum pass 2/5 complete, val_mae=0.0018 kWh 2026-08-14 06:54:27.901706: ML Predictor: Curriculum pass 3/5: window=54.0 days (1296 hours of data) 2026-08-14 06:54:27.901822: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 06:54:28.471824: ML Predictor: Creating dataset with 1296 hours of training data, 48 hours validation 2026-08-14 06:54:32.812667: ML Predictor: Created 15264 training samples, 576 validation samples 2026-08-14 06:54:32.860834: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0588 std=0.0474) load(mean=0.0587 std=0.0472) pv(mean=0.0000 std=0.0100) temp(mean=19.5216 std=4.4095) import_rate(mean=24.2370 std=1.9772) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1931 std=0.5224) 2026-08-14 06:54:32.935398: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 06:54:32.949725: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 06:54:32.993788: ML Predictor: Baseline (pre-finetune) val_mae=0.0021 kWh val_bias=-0.0000 kWh 2026-08-14 06:54:39.594831: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:54:39.595159: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:54:39.595221: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:54:39.595425: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:54:39.595479: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:54:39.595508: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:54:39.595538: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:54:59.622435: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0075 val_mae=0.0021 kWh val_bias=-0.0008 kWh (-1.4%) combined=0.0014 kWh ema_combined=0.0014 kWh 2026-08-14 06:55:00.826421: --------------- PredBat - update at 2026-08-14 06:55:00+01:00 with clock skew 0 minutes, minutes now 415 2026-08-14 06:55:00.827135: Saved current settings to /config/predbat_config.json 2026-08-14 06:55:00.827282: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 89.9 minutes 2026-08-14 06:55:00.827411: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 06:55:00.827487: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 06:55:00.868155: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 06:55:00.868324: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 06:55:00.869254: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 06:55:00.869450: Predbat mode is set to Control charge & discharge 2026-08-14 06:55:01.173356: Found 21602 load_today datapoints going back 28 days 2026-08-14 06:55:01.173648: Using load_power data to fill gaps in load_today data 2026-08-14 06:55:02.331476: Processing 721 30-minute periods for power integration 2026-08-14 06:55:02.532685: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 06:55:02.532850: Car charging hold False, threshold 6.0kWh 2026-08-14 06:55:02.532907: Current data so far today: load 7.6kWh, import 8.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 06:55:02.582219: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 06:55:02.583306: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 06:55:02.583518: Standing charge is set to 49.98p 2026-08-14 06:55:02.701628: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 06:55:02.701923: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 06:55:02.702269: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 415.0 minutes 2026-08-14 06:55:02.702830: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 414.8 minutes 2026-08-14 06:55:02.705926: Loaded 47 datapoints of futurerate analysis 2026-08-14 06:55:02.794862: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 06:55:02.872156: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 06:55:02.880607: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 06:55:02.881091: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 06:55:02.942948: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 06:55:02.943232: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 06:55:02.945090: High export rate found rates in range 99p to -99p 2026-08-14 06:55:03.081364: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 06:55:03.081697: Car 0 charging is not planned as it is not plugged in 2026-08-14 06:55:03.099799: Battery level now 2.33kWh, -1hr ago 2.82kWh, at midnight 2.43kWh, battery value change in the last hour -11.56p, change today -2.42p, rate_forward 23.31p 2026-08-14 06:55:03.100499: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.6kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 06:55:03.187087: Today's energy total net 8.3kWh, import 8.3kWh, export 0.0kWh, cost 259.83p, import 209.85p, export 0.0p, carbon 0.0kg 2026-08-14 06:55:03.187506: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 06:55:03.352171: Using weighted-bucket historical load forecast over 14 days 2026-08-14 06:55:03.384681: Today's load divergence 114.88%, in-day adjustment 137.39%, damping 0.95x, yesterday 146.81% today 114.14% blend 71.18% 2026-08-14 06:55:03.384798: Today's predicted so far 2.52kWh with 0.0kWh car/iBoost excluded, 1.58kWh import ignored, and 4.1kWh forecast extra. 2026-08-14 06:55:03.384838: Today's actual load so far 4.7kWh with 0.0kWh car/iBoost excluded, and 2.84kWh import ignored. 2026-08-14 06:55:03.427841: Inverter 0: Type SK Sunsynk 2026-08-14 06:55:03.428077: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 06:55:03.428380: Reserve min: 7%, battery_min: 7% 2026-08-14 06:55:03.428541: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 06:55:03.429005: Inverter 0 SoC: 2.33kW 15%, current charge rate 5000W, current discharge rate 5250W, current battery power 437W, current battery voltage 51.2V, grid power -54W, load power 496W, PV Power 0W 2026-08-14 06:55:03.429266: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:55:03.429461: Inverter 0 scheduled charge enable is False 2026-08-14 06:55:03.429518: Inverter 0 charge windows currently [] 2026-08-14 06:55:03.429639: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 06:55:03.429856: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:55:03.429914: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:55:03.430043: Inverter 0 scheduled discharge enable is False 2026-08-14 06:55:03.430299: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:55:03.430356: Inverter 0 discharge windows currently [] 2026-08-14 06:55:03.430487: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:55:03.430538: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:55:03.430602: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:55:03.517325: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 06:55:03.517479: Plan was last updated on 2026-08-14 06:45:00+01:00 and is now 10.0 minutes old 2026-08-14 06:55:03.517910: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 06:55:03.518059: Best export window [ ] 2026-08-14 06:55:03.519430: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 06:55:03.524489: Load divergence over 8.0 hours mean 474.26W, min 274.8W, max 1439.4W, std dev 186.12W, divergence 19.62% 2026-08-14 06:55:03.545565: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 06:55:03.545715: LoadML is_calculating True 2026-08-14 06:55:03.545751: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 06:55:03.606071: predict base end_record 08-15 12:40:00, final soc 1.12kWh, metric 911.16p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:55:00, load 29.84kWh, PV 0.0kWh 2026-08-14 06:55:03.817742: Battery has 2.0 hours left - now at 2.33kWh 2026-08-14 06:55:03.889104: predict base10 end_record 08-15 12:40:00, final soc 1.12kWh, metric 941.13p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:50:00, load 30.9kWh, PV 0.0kWh 2026-08-14 06:55:04.027374: predict best10 end_record 08-15 12:40:00, final soc 1.77kWh, metric 860.73p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:50:00, load 30.9kWh, PV 0.0kWh 2026-08-14 06:55:04.182830: predict best end_record 08-15 12:40:00, final soc 1.9kWh, metric 837.85p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:55:00, load 29.84kWh, PV 0.0kWh 2026-08-14 06:55:04.182956: Saving plan best values to HA entities 2026-08-14 06:55:04.551976: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 06:55:04.558282: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 06:55:04.564627: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.24kWh, house 6.05kWh, export 0.0kWh, metric 837.85p, metric10 860.73p 2026-08-14 06:55:04.652456: Marginal costs baseline metric (no standing charge): 787.8674 2026-08-14 06:55:05.044449: Marginal energy costs matrix computed: min=21.84 max=35.51 2026-08-14 06:55:05.194310: Rate array import [{'start': 415, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 30.5p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2200, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 415, 'end': 2200, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 06:55:05.195286: - Your estimated bill for today is £6.96 and tomorrow is £7.04 2026-08-14 06:55:05.195340: - Import rates are cheap (21.7p - 30.5p) for the next 9 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 06:55:05.195368: - The battery is currently at 15% and is in eco mode for the next 5 and a half hours. 2026-08-14 06:55:05.195495: - For the next 48 hours there will be no solar generation. 2026-08-14 06:55:05.195542: - You will run out of battery in 2 hours. 2026-08-14 06:55:05.195611: - Your next charge slot will be in 5 and a half hours where import rates will be cheap (22.2p). 2026-08-14 06:55:05.195650: 2026-08-14 06:55:05.250698: Plan calculation took 1.73 seconds 2026-08-14 06:55:05.255312: No high rate period found 2026-08-14 06:55:05.337633: Import threshold used for optimisation was 24.8p 2026-08-14 06:55:05.432462: Low import rate windows [0: 08-14 06:30:00 - 08-14 07:00:00 @ 30.48, 1: 08-14 07:00:00 - 08-14 07:30:00 @ 28.02, 2: 08-14 07:30:00 - 08-14 08:00:00 @ 28.58, 3: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 4: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 5: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 6: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 7: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 8: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 9: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 10: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 11: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 12: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 13: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 14: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 15: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 16: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 17: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 18: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 19: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 20: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 21: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 22: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 23: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 24: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 25: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 26: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 27: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 28: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 29: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 30: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 31: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 32: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 33: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 34: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 35: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 36: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 37: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 38: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 39: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 40: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 41: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 42: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 43: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 44: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 45: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 46: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 47: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 48: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 49: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 50: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 51: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 52: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 53: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 54: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 55: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 56: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 57: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 58: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 59: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 60: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 61: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 62: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 63: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 64: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 65: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 66: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 67: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 68: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 69: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 70: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 71: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 72: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 73: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 74: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 75: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 76: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 77: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 78: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 79: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 80: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 81: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 82: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 83: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 84: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 85: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 86: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 87: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 88: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 89: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 90: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 91: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 92: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 93: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 94: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48] 2026-08-14 06:55:05.449163: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 15%, target 100% 2026-08-14 06:55:05.449330: Inverter 0 disabled charge window while waiting for schedule (now 08-14 06:55:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 06:55:05.449432: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:55:05.449660: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:55:05.449748: No export window planned 2026-08-14 06:55:05.449903: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 06:55:05.449949: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:55:05.450247: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:55:05.450524: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 06:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 06:55:05.450643: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 06:55:05.450756: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 06:55:05.450985: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:55:05.451086: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:55:05.451190: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:55:05.451245: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:55:05.451364: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:55:05.451473: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:55:05.451721: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:55:05.451872: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:55:05.452005: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:55:05.452060: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:55:05.452182: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:55:05.452262: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:55:05.452355: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:55:05.452461: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:55:05.452512: Inverter 0 count register writes 0 2026-08-14 06:55:05.497931: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 06:55:05.498125: Recompute is saving previous plan... 2026-08-14 06:55:05.501306: Best charge window [ 14-08 06:30:00 - 14-08 07:00:00 @ 30.48p 0%, 14-08 07:00:00 - 14-08 07:30:00 @ 28.02p 0%, 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0% ] 2026-08-14 06:55:05.501392: Best export window [ ] 2026-08-14 06:55:05.503756: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 06:55:05.506932: Load divergence over 8.0 hours mean 474.26W, min 274.8W, max 1439.4W, std dev 186.12W, divergence 19.62% 2026-08-14 06:55:05.537794: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 06:55:05.538003: LoadML is_calculating True 2026-08-14 06:55:05.538044: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 06:55:05.546831: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 06:55:05.563983: Optimise levels pass started at 2026-08-14 06:55:05 2026-08-14 06:55:05.564158: Optimise all windows, total charge 94 export 1 2026-08-14 06:55:07.168159: >> Region optimisation pass width 960 2026-08-14 06:55:08.179230: >> Region optimisation pass width 480 2026-08-14 06:55:09.425463: >> Region optimisation pass width 240 2026-08-14 06:55:10.698711: >> Region optimisation pass width 120 2026-08-14 06:55:15.143814: Calculated end_record as 08-15 12:30:00 based on best_price 22.25p, next_charge_start 08-14 12:30:00, max_windows 59 2026-08-14 06:55:15.143930: Optimise levels pass ended at 2026-08-14 06:55:15, duration 9.6 seconds tried 322 combinations 2026-08-14 06:55:15.143976: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1029.31p, best_keep 0kWh, best_cycle 49.15kWh, best_carbon 0kg, best_import 38.48kWh 2026-08-14 06:55:15.161512: Starting detailed optimisation end_record 08-15 12:30:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 13.75, 13.75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 06:55:15.162774: Best charge windows best_metric 744.78p, best_cost 766.8p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 86%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:55:15.162872: Best export windows best_metric 744.78p, best_cost 766.8p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:55:15.162970: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 744.78p, best_cost 766.8p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:15.693538: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 744.62p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:16.272938: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 744.62p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:17.150234: Best charge windows best_metric 744.62p, best_cost 766.62p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:55:17.150737: Best export windows best_metric 744.62p, best_cost 766.62p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:55:17.151953: Best charge windows best_metric 744.62p, best_cost 766.62p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:55:17.152143: Best export windows best_metric 744.62p, best_cost 766.62p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:55:17.152329: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 744.62p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:18.223270: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 744.62p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:18.335187: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 744.62p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:18.548828: Best charge windows best_metric 744.62p, best_cost 766.62p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:55:18.549038: Best export windows best_metric 744.62p, best_cost 766.62p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:55:18.550981: Best charge windows best_metric 744.62p, best_cost 766.62p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:55:18.551080: Best export windows best_metric 744.62p, best_cost 766.62p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:55:18.551211: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 744.62p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:18.712376: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 744.62p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:18.866026: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 744.62p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:19.121443: Best charge windows best_metric 744.62p, best_cost 766.62p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:55:19.121641: Best export windows best_metric 744.62p, best_cost 766.62p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:55:19.121729: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 744.62p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:19.302279: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 744.62p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:19.488525: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 744.62p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:19.831450: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 744.62p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:20.351509: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 744.62p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:20.636164: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 744.62p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:21.015499: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 744.62p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:21.549481: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 744.62p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:22.237538: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 744.48p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:23.759746: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:24.061235: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:24.352473: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:24.655980: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:24.889545: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:25.110545: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:25.752760: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:26.313246: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:26.784047: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:26.988259: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:27.190680: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:27.385150: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:27.677421: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:27.893784: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:28.415145: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:28.805146: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:29.085231: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:29.461287: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:29.748351: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:30.017146: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:30.271505: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:30.650149: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:30.916024: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:31.267546: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:31.538283: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:31.852163: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:32.092210: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:32.326778: Best charge windows best_metric 744.4p, best_cost 766.62p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:55:32.326964: Best export windows best_metric 744.4p, best_cost 766.62p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:55:32.329073: Best charge windows best_metric 744.4p, best_cost 766.62p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:55:32.329171: Best export windows best_metric 744.4p, best_cost 766.62p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:55:32.329292: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:32.785552: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 744.4p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:33.113643: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 744.39p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:33.886141: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 744.39p, best_cost 766.62p, best_cycle 26.44kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 06:55:34.427801: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 744.36p, best_cost 766.49p, best_cycle 25.96kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 06:55:35.526674: Best charge windows best_metric 744.36p, best_cost 766.49p, best_carbon 0kg, best_import 50.21kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:55:35.526839: Best export windows best_metric 744.36p, best_cost 766.49p, best_carbon 0kg, best_import 50.21kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:55:35.526963: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 744.36p, best_cost 766.49p, best_cycle 25.96kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 06:55:35.909761: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 744.28p, best_cost 766.48p, best_cycle 25.94kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 06:55:37.398470: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 744.28p, best_cost 766.48p, best_cycle 25.94kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 06:55:38.073448: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 744.28p, best_cost 766.48p, best_cycle 25.94kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 06:55:39.113776: Best charge windows best_metric 744.28p, best_cost 766.48p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:55:39.113990: Best export windows best_metric 744.28p, best_cost 766.48p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:55:39.115165: Best charge windows best_metric 744.28p, best_cost 766.48p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:55:39.115235: Best export windows best_metric 744.28p, best_cost 766.48p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:55:39.115435: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 744.28p, best_cost 766.48p, best_cycle 25.94kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 06:55:39.517924: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 744.28p, best_cost 766.48p, best_cycle 25.94kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 06:55:39.635863: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 744.28p, best_cost 766.48p, best_cycle 25.94kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 06:55:39.755457: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 744.28p, best_cost 766.48p, best_cycle 25.94kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 06:55:40.020191: Best charge windows best_metric 744.28p, best_cost 766.48p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:55:40.020347: Best export windows best_metric 744.28p, best_cost 766.48p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:55:40.020552: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 744.28p, best_cost 766.48p, best_cycle 25.94kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 06:55:40.157183: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 744.28p, best_cost 766.48p, best_cycle 25.94kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 06:55:40.605067: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 744.28p, best_cost 766.48p, best_cycle 25.94kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 06:55:40.764657: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 744.28p, best_cost 766.48p, best_cycle 25.94kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 06:55:40.939422: Best charge windows best_metric 744.28p, best_cost 766.48p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] 2026-08-14 06:55:40.939754: Best export windows best_metric 744.28p, best_cost 766.48p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 06:55:40.940059: Tweak plan optimisation started 2026-08-14 06:55:42.925499: Tweak optimisation finished metric 744.28 cost 766.48 metric_keep 0 cycle 25.94 carbon 0 import 50.2 2026-08-14 06:55:42.944620: Swap charge optimisation started metric 744.28p, cost 766.48p, min_improvement_swap 0.1p 2026-08-14 06:55:50.200697: Swap charge optimisation finished metric 744.28p, cost 766.48p 2026-08-14 06:55:50.216302: Raw charge windows [ 14-08 06:30:00 - 14-08 07:00:00 @ 30.48p 0%, 14-08 07:00:00 - 14-08 07:30:00 @ 28.02p 0%, 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100% ] reserve 1.12 2026-08-14 06:55:50.217513: Unclipped charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 07:00:00 @ 29.88p 100% ] reserve 1.12 2026-08-14 06:55:50.218389: Unfiltered charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 07:00:00 @ 29.88p 100% ] reserve 1.12 2026-08-14 06:55:50.223554: Filtered charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 07:00:00 @ 29.88p 100% ] reserve 1.12 2026-08-14 06:55:50.313475: Previous plan best metric is 744.23 (cost 766.47) and new plan best metric is 744.28 (cost 766.48) 2026-08-14 06:55:50.318030: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 06:55:50.318475: Plan valid is now true after recompute was False 2026-08-14 06:55:50.372907: predict base end_record 08-15 12:30:00, final soc 1.12kWh, metric 908.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:55:00, load 29.71kWh, PV 0.0kWh 2026-08-14 06:55:50.696615: Battery has 2.0 hours left - now at 2.33kWh 2026-08-14 06:55:50.859506: predict base10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 938.08p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:50:00, load 30.76kWh, PV 0.0kWh 2026-08-14 06:55:50.921943: Info: HAHistory: Pruning history data started. 2026-08-14 06:55:50.925155: Info: HAHistory: Pruning history data completed. 2026-08-14 06:55:51.065150: predict best10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 842.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:50:00, load 30.76kWh, PV 0.0kWh 2026-08-14 06:55:51.215275: predict best end_record 08-15 12:30:00, final soc 1.12kWh, metric 816.45p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:55:00, load 29.71kWh, PV 0.0kWh 2026-08-14 06:55:51.215377: Saving plan best values to HA entities 2026-08-14 06:55:51.546230: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 06:55:51.553035: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 06:55:51.560032: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.24kWh, house 6.05kWh, export 0.0kWh, metric 816.45p, metric10 842.27p 2026-08-14 06:55:51.645284: Marginal costs baseline metric (no standing charge): 766.4655 2026-08-14 06:55:52.122211: Marginal energy costs matrix computed: min=21.84 max=35.51 2026-08-14 06:55:52.244338: Rate array import [{'start': 415, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 30.5p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2190, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 415, 'end': 2190, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 06:55:52.245309: - Your estimated bill for today is £6.96 and tomorrow is £7.04 2026-08-14 06:55:52.245377: - Import rates are cheap (21.7p - 30.5p) for the next 9 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 06:55:52.245401: - The battery is currently at 15% and is in eco mode for the next 5 and a half hours. 2026-08-14 06:55:52.245419: - For the next 48 hours there will be no solar generation. 2026-08-14 06:55:52.245436: - You will run out of battery in 2 hours. 2026-08-14 06:55:52.245462: - Your next charge slot will be in 5 and a half hours where import rates will be cheap (22.2p). 2026-08-14 06:55:52.245502: 2026-08-14 06:55:52.286751: Plan calculation took 46.79 seconds 2026-08-14 06:55:52.287004: Inverter 0: Type SK Sunsynk 2026-08-14 06:55:52.287048: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 06:55:52.287258: Reserve min: 7%, battery_min: 7% 2026-08-14 06:55:52.289064: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 06:55:52.289421: Inverter 0 SoC: 2.24kW 14%, current charge rate 5000W, current discharge rate 5250W, current battery power 454W, current battery voltage 51.2V, grid power -54W, load power 512W, PV Power 0W 2026-08-14 06:55:52.289618: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:55:52.289725: Inverter 0 scheduled charge enable is False 2026-08-14 06:55:52.289767: Inverter 0 charge windows currently [] 2026-08-14 06:55:52.289796: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 06:55:52.289911: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:55:52.289955: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:55:52.290008: Inverter 0 scheduled discharge enable is False 2026-08-14 06:55:52.290258: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:55:52.290370: Inverter 0 discharge windows currently [] 2026-08-14 06:55:52.290480: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:55:52.290592: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:55:52.290697: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:55:52.429603: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 14%, target 100% 2026-08-14 06:55:52.429874: Inverter 0 disabled charge window while waiting for schedule (now 08-14 06:55:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 06:55:52.429999: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:55:52.430250: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:55:52.430403: No export window planned 2026-08-14 06:55:52.430634: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 06:55:52.430760: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 06:55:52.431012: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 06:55:52.431248: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 06:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 06:55:52.431392: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 06:55:52.441102: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 06:55:52.441371: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:55:52.441429: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:55:52.441524: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:55:52.441630: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:55:52.441742: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:55:52.441838: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:55:52.441919: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 06:55:52.442041: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:55:52.442165: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:55:52.442285: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:55:52.442397: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:55:52.442504: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:55:52.442624: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:55:52.442718: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 06:55:52.442816: Inverter 0 count register writes 0 2026-08-14 06:55:52.509455: Total inverter register writes now 806 2026-08-14 06:55:52.595632: Info: Completed run status Demand 2026-08-14 06:55:52.603179: Info: record_status Demand 2026-08-14 06:55:52.615008: Saved current settings to /config/predbat_config.json 2026-08-14 06:55:52.615392: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 06:55:58.143452: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0077 val_mae=0.0023 kWh val_bias=+0.0004 kWh (+0.8%) combined=0.0019 kWh ema_combined=0.0015 kWh 2026-08-14 06:56:22.726349: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0075 val_mae=0.0021 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0013 kWh ema_combined=0.0015 kWh 2026-08-14 06:56:23.743852: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:56:23.744219: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:56:23.744279: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:56:23.744449: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:56:23.744498: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:56:23.744638: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:56:23.744688: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:56:49.029661: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0103 val_mae=0.0021 kWh val_bias=-0.0002 kWh (-0.3%) combined=0.0011 kWh ema_combined=0.0014 kWh 2026-08-14 06:57:14.343450: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0103 val_mae=0.0027 kWh val_bias=-0.0019 kWh (-3.6%) combined=0.0032 kWh ema_combined=0.0019 kWh 2026-08-14 06:57:43.155855: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0101 val_mae=0.0024 kWh val_bias=+0.0013 kWh (+2.5%) combined=0.0025 kWh ema_combined=0.0021 kWh 2026-08-14 06:58:08.024721: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0087 val_mae=0.0022 kWh val_bias=-0.0006 kWh (-1.2%) combined=0.0013 kWh ema_combined=0.0019 kWh 2026-08-14 06:58:24.153215: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 06:58:24.153504: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 06:58:24.153557: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 06:58:24.153721: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 06:58:24.153788: Note: Inverter does not support discharge freeze - disabled 2026-08-14 06:58:24.153817: Note: Inverter does not support charge freeze - disabled 2026-08-14 06:58:24.153933: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 06:58:35.759640: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0078 val_mae=0.0023 kWh val_bias=-0.0010 kWh (-1.9%) combined=0.0021 kWh ema_combined=0.0019 kWh 2026-08-14 06:59:01.715840: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0102 val_mae=0.0027 kWh val_bias=+0.0008 kWh (+1.5%) combined=0.0019 kWh ema_combined=0.0019 kWh 2026-08-14 06:59:27.951843: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0080 val_mae=0.0019 kWh val_bias=-0.0000 kWh (-0.1%) combined=0.0010 kWh ema_combined=0.0016 kWh 2026-08-14 06:59:27.951985: ML Predictor: Early stopping at epoch 10 2026-08-14 06:59:27.952655: ML Predictor: Restored best weights from epoch with val_mae=0.0021 kWh val_bias=-0.0000 kWh (-0.0%) 2026-08-14 06:59:27.952828: ML Predictor: Training complete, final val_mae=0.0021 kWh val_bias=-0.0000 kWh (-0.0%) 2026-08-14 06:59:36.701377: ML Predictor: AR rollout over holdout: ar_mae=0.0025 kWh ar_bias=-0.0001 kWh (-0.2%) [drift vs teacher-forced: +0.0004 kWh] 2026-08-14 06:59:36.712683: ML Predictor: Curriculum pass 3/5 complete, val_mae=0.0021 kWh 2026-08-14 06:59:36.840177: ML Predictor: Curriculum pass 4/5: window=55.0 days (1320 hours of data) 2026-08-14 06:59:36.840280: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 06:59:37.417426: ML Predictor: Creating dataset with 1320 hours of training data, 48 hours validation 2026-08-14 06:59:42.432641: ML Predictor: Created 15552 training samples, 576 validation samples 2026-08-14 06:59:42.482322: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0588 std=0.0474) load(mean=0.0587 std=0.0472) pv(mean=0.0000 std=0.0100) temp(mean=19.5286 std=4.4159) import_rate(mean=24.2381 std=1.9725) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1926 std=0.5227) 2026-08-14 06:59:42.564156: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 06:59:42.580658: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 06:59:42.775728: ML Predictor: Baseline (pre-finetune) val_mae=0.0033 kWh val_bias=-0.0002 kWh 2026-08-14 07:00:00.266526: --------------- PredBat - update at 2026-08-14 07:00:00+01:00 with clock skew 0 minutes, minutes now 420 2026-08-14 07:00:00.267583: Saved current settings to /config/predbat_config.json 2026-08-14 07:00:00.267760: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 94.8 minutes 2026-08-14 07:00:00.267852: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 07:00:00.268104: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 07:00:00.322746: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 07:00:00.322880: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 07:00:00.323487: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 07:00:00.323640: Predbat mode is set to Control charge & discharge 2026-08-14 07:00:00.570657: Found 21602 load_today datapoints going back 27 days 2026-08-14 07:00:00.570824: Using load_power data to fill gaps in load_today data 2026-08-14 07:00:01.937612: Processing 721 30-minute periods for power integration 2026-08-14 07:00:02.243559: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 07:00:02.244309: Car charging hold False, threshold 6.0kWh 2026-08-14 07:00:02.244377: Current data so far today: load 7.5kWh, import 8.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 07:00:02.257237: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 07:00:02.258059: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 07:00:02.258152: Standing charge is set to 49.98p 2026-08-14 07:00:02.288243: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 07:00:02.288344: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 07:00:02.288513: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 420.0 minutes 2026-08-14 07:00:02.288855: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 419.8 minutes 2026-08-14 07:00:02.291283: Loaded 47 datapoints of futurerate analysis 2026-08-14 07:00:02.378993: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 07:00:02.496567: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 07:00:02.505729: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 07:00:02.508749: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 07:00:02.636239: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 07:00:02.636372: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 07:00:02.646247: High export rate found rates in range 99p to -99p 2026-08-14 07:00:03.020347: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 07:00:03.020600: Car 0 charging is not planned as it is not plugged in 2026-08-14 07:00:03.038481: Battery level now 2.33kWh, -1hr ago 2.72kWh, at midnight 2.43kWh, battery value change in the last hour -9.14p, change today -2.42p, rate_forward 23.31p 2026-08-14 07:00:03.038908: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.45kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 07:00:03.113468: Today's energy total net 8.3kWh, import 8.3kWh, export 0.0kWh, cost 259.83p, import 209.85p, export 0.0p, carbon 0.0kg 2026-08-14 07:00:03.113669: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 07:00:03.309297: Using weighted-bucket historical load forecast over 14 days 2026-08-14 07:00:03.369454: Today's load divergence 113.58%, in-day adjustment 136.92%, damping 0.95x, yesterday 146.81% today 112.9% blend 70.83% 2026-08-14 07:00:03.385068: Today's predicted so far 2.78kWh with 0.0kWh car/iBoost excluded, 1.42kWh import ignored, and 4.2kWh forecast extra. 2026-08-14 07:00:03.385173: Today's actual load so far 4.77kWh with 0.0kWh car/iBoost excluded, and 2.81kWh import ignored. 2026-08-14 07:00:03.452400: Inverter 0: Type SK Sunsynk 2026-08-14 07:00:03.452755: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 07:00:03.453133: Reserve min: 7%, battery_min: 7% 2026-08-14 07:00:03.453322: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 07:00:03.453721: Inverter 0 SoC: 2.24kW 14%, current charge rate 5000W, current discharge rate 5250W, current battery power 481W, current battery voltage 51.2V, grid power -54W, load power 538W, PV Power 0W 2026-08-14 07:00:03.454013: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:00:03.454213: Inverter 0 scheduled charge enable is False 2026-08-14 07:00:03.454340: Inverter 0 charge windows currently [] 2026-08-14 07:00:03.454466: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 07:00:03.454724: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:00:03.454857: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:00:03.455016: Inverter 0 scheduled discharge enable is False 2026-08-14 07:00:03.455273: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:00:03.455404: Inverter 0 discharge windows currently [] 2026-08-14 07:00:03.455523: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:00:03.455637: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:00:03.455751: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:00:03.556753: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 07:00:03.557085: Plan was last updated on 2026-08-14 06:55:00+01:00 and is now 5.0 minutes old 2026-08-14 07:00:03.557494: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 07:00:03.557631: Best export window [ ] 2026-08-14 07:00:03.558757: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 07:00:03.562703: Load divergence over 8.0 hours mean 470.78W, min 249.0W, max 1403.4W, std dev 178.38W, divergence 18.95% 2026-08-14 07:00:03.584925: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 07:00:03.585118: LoadML is_calculating True 2026-08-14 07:00:03.585162: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 07:00:03.630329: predict base end_record 08-15 12:35:00, final soc 1.12kWh, metric 907.99p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:55:00, load 29.54kWh, PV 0.0kWh 2026-08-14 07:00:03.839975: Battery has 1.92 hours left - now at 2.24kWh 2026-08-14 07:00:03.923961: predict base10 end_record 08-15 12:35:00, final soc 1.12kWh, metric 937.7p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:50:00, load 30.59kWh, PV 0.0kWh 2026-08-14 07:00:04.082309: predict best10 end_record 08-15 12:35:00, final soc 1.44kWh, metric 850.08p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:50:00, load 30.59kWh, PV 0.0kWh 2026-08-14 07:00:04.215275: predict best end_record 08-15 12:35:00, final soc 1.51kWh, metric 825.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:55:00, load 29.54kWh, PV 0.0kWh 2026-08-14 07:00:04.215495: Saving plan best values to HA entities 2026-08-14 07:00:04.583542: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 07:00:04.591733: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 07:00:04.599984: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.22kWh, house 6.01kWh, export 0.0kWh, metric 825.95p, metric10 850.08p 2026-08-14 07:00:04.698280: Marginal costs baseline metric (no standing charge): 775.9712 2026-08-14 07:00:05.083138: Marginal energy costs matrix computed: min=21.81 max=35.85 2026-08-14 07:00:05.250121: Rate array import [{'start': 420, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 28.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2195, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 420, 'end': 2195, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 07:00:05.251180: - Your estimated bill for today is £6.96 and tomorrow is £7.01 2026-08-14 07:00:05.265043: - Import rates are cheap (21.7p - 28.6p) for the next 9 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 07:00:05.265167: - The battery is currently at 14% and is in eco mode for the next 5 and a half hours. 2026-08-14 07:00:05.265201: - For the next 48 hours there will be no solar generation. 2026-08-14 07:00:05.265230: - You will run out of battery in 1 hours. 2026-08-14 07:00:05.265388: - Your next charge slot will be in 5 and a half hours where import rates will be cheap (22.2p). 2026-08-14 07:00:05.265545: 2026-08-14 07:00:05.357558: Plan calculation took 1.80 seconds 2026-08-14 07:00:05.362576: No high rate period found 2026-08-14 07:00:05.474338: Import threshold used for optimisation was 24.8p 2026-08-14 07:00:05.585379: Low import rate windows [0: 08-14 07:00:00 - 08-14 07:30:00 @ 28.02, 1: 08-14 07:30:00 - 08-14 08:00:00 @ 28.58, 2: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 3: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 4: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 5: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 6: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 7: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 8: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 9: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 10: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 11: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 12: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 13: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 14: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 15: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 16: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 17: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 18: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 19: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 20: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 21: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 22: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 23: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 24: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 25: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 26: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 27: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 28: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 29: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 30: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 31: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 32: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 33: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 34: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 35: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 36: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 37: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 38: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 39: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 40: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 41: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 42: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 43: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 44: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 45: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 46: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 47: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 48: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 49: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 50: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 51: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 52: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 53: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 54: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 55: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 56: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 57: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 58: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 59: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 60: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 61: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 62: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 63: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 64: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 65: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 66: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 67: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 68: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 69: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 70: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 71: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 72: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 73: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 74: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 75: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 76: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 77: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 78: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 79: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 80: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 81: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 82: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 83: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 84: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 85: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 86: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 87: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 88: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 89: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 90: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 91: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 92: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 93: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48] 2026-08-14 07:00:05.613526: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 14%, target 100% 2026-08-14 07:00:05.613779: Inverter 0 disabled charge window while waiting for schedule (now 08-14 07:00:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 07:00:05.613936: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:00:05.614271: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:00:05.614428: No export window planned 2026-08-14 07:00:05.614663: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 07:00:05.614725: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:00:05.615007: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:00:05.615286: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 07:00:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 07:00:05.615364: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 07:00:05.615524: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 07:00:05.615692: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:00:05.615765: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:00:05.615910: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:00:05.615974: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:00:05.616129: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:00:05.616191: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:00:05.616238: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:00:05.616378: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:00:05.616446: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:00:05.616624: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:00:05.616762: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:00:05.616967: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:00:05.617138: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:00:05.617304: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:00:05.617439: Inverter 0 count register writes 0 2026-08-14 07:00:05.658185: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 07:00:05.667009: Total inverter register writes now 806 2026-08-14 07:00:05.739981: Info: Completed run status Demand 2026-08-14 07:00:05.749949: Info: record_status Demand 2026-08-14 07:00:05.760487: Saved current settings to /config/predbat_config.json 2026-08-14 07:00:05.760750: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 07:00:16.082052: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0089 val_mae=0.0039 kWh val_bias=-0.0015 kWh (-2.1%) combined=0.0022 kWh ema_combined=0.0022 kWh 2026-08-14 07:00:38.941540: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:00:38.941974: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:00:38.942125: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:00:38.942383: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:00:38.942515: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:00:38.942623: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:00:38.942740: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:00:47.943805: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0101 val_mae=0.0036 kWh val_bias=-0.0005 kWh (-0.7%) combined=0.0019 kWh ema_combined=0.0021 kWh 2026-08-14 07:01:21.027983: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0094 val_mae=0.0035 kWh val_bias=-0.0003 kWh (-0.4%) combined=0.0019 kWh ema_combined=0.0021 kWh 2026-08-14 07:01:51.735583: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0099 val_mae=0.0032 kWh val_bias=-0.0008 kWh (-1.1%) combined=0.0020 kWh ema_combined=0.0020 kWh 2026-08-14 07:02:24.353807: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0102 val_mae=0.0047 kWh val_bias=-0.0036 kWh (-5.1%) combined=0.0037 kWh ema_combined=0.0025 kWh 2026-08-14 07:02:39.518018: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:02:39.518548: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:02:39.518717: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:02:39.519023: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:02:39.519198: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:02:39.519334: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:02:39.519459: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:02:59.565906: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0098 val_mae=0.0034 kWh val_bias=+0.0015 kWh (+2.1%) combined=0.0033 kWh ema_combined=0.0028 kWh 2026-08-14 07:03:29.841543: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0098 val_mae=0.0036 kWh val_bias=-0.0011 kWh (-1.6%) combined=0.0023 kWh ema_combined=0.0026 kWh 2026-08-14 07:04:02.691060: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0099 val_mae=0.0036 kWh val_bias=-0.0013 kWh (-1.8%) combined=0.0030 kWh ema_combined=0.0027 kWh 2026-08-14 07:04:32.129619: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0104 val_mae=0.0034 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0019 kWh ema_combined=0.0025 kWh 2026-08-14 07:04:54.100933: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:04:54.101341: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:04:54.101479: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:04:54.101728: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:04:54.101837: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:04:54.101918: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:04:54.101994: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:05:00.302158: --------------- PredBat - update at 2026-08-14 07:05:00+01:00 with clock skew 0 minutes, minutes now 425 2026-08-14 07:05:00.305797: Saved current settings to /config/predbat_config.json 2026-08-14 07:05:00.305940: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 99.8 minutes 2026-08-14 07:05:00.306022: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 07:05:00.306144: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 07:05:00.354800: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 07:05:00.354957: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 07:05:00.355713: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 07:05:00.355857: Predbat mode is set to Control charge & discharge 2026-08-14 07:05:00.783550: Found 21602 load_today datapoints going back 27 days 2026-08-14 07:05:00.784380: Using load_power data to fill gaps in load_today data 2026-08-14 07:05:02.274453: Processing 721 30-minute periods for power integration 2026-08-14 07:05:02.387764: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0083 val_mae=0.0032 kWh val_bias=-0.0007 kWh (-1.0%) combined=0.0019 kWh ema_combined=0.0023 kWh 2026-08-14 07:05:02.387869: ML Predictor: Early stopping at epoch 10 2026-08-14 07:05:02.388892: ML Predictor: Restored best weights from epoch with val_mae=0.0033 kWh val_bias=-0.0002 kWh (-0.2%) 2026-08-14 07:05:02.389044: ML Predictor: Training complete, final val_mae=0.0033 kWh val_bias=-0.0002 kWh (-0.2%) 2026-08-14 07:05:02.698506: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 07:05:02.703784: Car charging hold False, threshold 6.0kWh 2026-08-14 07:05:02.709025: Current data so far today: load 7.5kWh, import 8.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 07:05:02.739543: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 07:05:02.740524: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 07:05:02.740632: Standing charge is set to 49.98p 2026-08-14 07:05:02.952931: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 07:05:02.958352: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 07:05:02.974119: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 425.0 minutes 2026-08-14 07:05:02.979691: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 424.8 minutes 2026-08-14 07:05:02.982969: Loaded 47 datapoints of futurerate analysis 2026-08-14 07:05:03.168063: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 07:05:03.278685: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 07:05:03.289240: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 07:05:03.299887: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 07:05:03.365736: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 07:05:03.371021: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 07:05:03.377462: High export rate found rates in range 99p to -99p 2026-08-14 07:05:03.554293: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 07:05:03.559531: Car 0 charging is not planned as it is not plugged in 2026-08-14 07:05:03.653607: Battery level now 2.24kWh, -1hr ago 2.72kWh, at midnight 2.43kWh, battery value change in the last hour -11.19p, change today -4.47p, rate_forward 23.31p 2026-08-14 07:05:03.654150: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.4kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 07:05:03.753571: Today's energy total net 8.3kWh, import 8.3kWh, export 0.0kWh, cost 259.83p, import 209.85p, export 0.0p, carbon 0.0kg 2026-08-14 07:05:03.753732: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 07:05:04.048462: Using weighted-bucket historical load forecast over 14 days 2026-08-14 07:05:04.129505: Today's load divergence 113.04%, in-day adjustment 136.65%, damping 0.95x, yesterday 146.81% today 112.39% blend 70.49% 2026-08-14 07:05:04.137121: Today's predicted so far 2.84kWh with 0.0kWh car/iBoost excluded, 1.43kWh import ignored, and 4.27kWh forecast extra. 2026-08-14 07:05:04.137360: Today's actual load so far 4.74kWh with 0.0kWh car/iBoost excluded, and 2.94kWh import ignored. 2026-08-14 07:05:04.246043: Inverter 0: Type SK Sunsynk 2026-08-14 07:05:04.246198: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 07:05:04.246502: Reserve min: 7%, battery_min: 7% 2026-08-14 07:05:04.246627: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 07:05:04.247063: Inverter 0 SoC: 2.24kW 14%, current charge rate 5000W, current discharge rate 5250W, current battery power 260W, current battery voltage 51.2V, grid power -54W, load power 321W, PV Power 0W 2026-08-14 07:05:04.247330: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:05:04.247475: Inverter 0 scheduled charge enable is False 2026-08-14 07:05:04.247534: Inverter 0 charge windows currently [] 2026-08-14 07:05:04.247579: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 07:05:04.247755: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:05:04.247816: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:05:04.247995: Inverter 0 scheduled discharge enable is False 2026-08-14 07:05:04.248298: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:05:04.248364: Inverter 0 discharge windows currently [] 2026-08-14 07:05:04.248471: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:05:04.248553: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:05:04.248666: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:05:04.410343: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 07:05:04.410510: Plan was last updated on 2026-08-14 06:55:00+01:00 and is now 10.0 minutes old 2026-08-14 07:05:04.411259: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 07:05:04.411472: Best export window [ ] 2026-08-14 07:05:04.413089: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 07:05:04.420021: Load divergence over 8.0 hours mean 467.23W, min 230.4W, max 1260.0W, std dev 176.98W, divergence 18.94% 2026-08-14 07:05:04.474549: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 07:05:04.474947: LoadML is_calculating True 2026-08-14 07:05:04.475110: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 07:05:04.591357: predict base end_record 08-15 12:40:00, final soc 1.12kWh, metric 906.8p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:00:00, load 29.5kWh, PV 0.0kWh 2026-08-14 07:05:04.889300: Battery has 1.92 hours left - now at 2.24kWh 2026-08-14 07:05:05.031477: predict base10 end_record 08-15 12:40:00, final soc 1.12kWh, metric 936.4p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:55:00, load 30.55kWh, PV 0.0kWh 2026-08-14 07:05:05.230690: predict best10 end_record 08-15 12:40:00, final soc 1.77kWh, metric 856.69p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:55:00, load 30.55kWh, PV 0.0kWh 2026-08-14 07:05:05.485562: predict best end_record 08-15 12:40:00, final soc 1.9kWh, metric 834.14p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:00:00, load 29.5kWh, PV 0.0kWh 2026-08-14 07:05:05.485690: Saving plan best values to HA entities 2026-08-14 07:05:05.906943: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 07:05:05.915667: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 07:05:05.934336: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.15kWh, house 5.99kWh, export 0.0kWh, metric 834.14p, metric10 856.69p 2026-08-14 07:05:06.172436: Marginal costs baseline metric (no standing charge): 784.1567 2026-08-14 07:05:06.839726: Marginal energy costs matrix computed: min=21.8 max=36.14 2026-08-14 07:05:07.023159: Rate array import [{'start': 425, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 28.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2200, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 425, 'end': 2200, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 07:05:07.024033: - Your estimated bill for today is £6.94 and tomorrow is £6.99 2026-08-14 07:05:07.024175: - Import rates are cheap (21.7p - 28.6p) for the next 8 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 07:05:07.024333: - The battery is currently at 14% and is in eco mode for the next 5 and a half hours. 2026-08-14 07:05:07.024443: - For the next 48 hours there will be no solar generation. 2026-08-14 07:05:07.024540: - You will run out of battery in 1 hours. 2026-08-14 07:05:07.024647: - Your next charge slot will be in 5 and a half hours where import rates will be cheap (22.2p). 2026-08-14 07:05:07.024752: 2026-08-14 07:05:07.077234: Plan calculation took 2.67 seconds 2026-08-14 07:05:07.080551: No high rate period found 2026-08-14 07:05:07.205968: Import threshold used for optimisation was 24.8p 2026-08-14 07:05:07.366648: Low import rate windows [0: 08-14 07:00:00 - 08-14 07:30:00 @ 28.02, 1: 08-14 07:30:00 - 08-14 08:00:00 @ 28.58, 2: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 3: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 4: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 5: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 6: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 7: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 8: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 9: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 10: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 11: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 12: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 13: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 14: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 15: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 16: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 17: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 18: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 19: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 20: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 21: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 22: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 23: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 24: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 25: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 26: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 27: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 28: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 29: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 30: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 31: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 32: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 33: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 34: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 35: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 36: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 37: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 38: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 39: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 40: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 41: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 42: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 43: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 44: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 45: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 46: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 47: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 48: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 49: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 50: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 51: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 52: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 53: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 54: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 55: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 56: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 57: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 58: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 59: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 60: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 61: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 62: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 63: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 64: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 65: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 66: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 67: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 68: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 69: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 70: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 71: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 72: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 73: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 74: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 75: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 76: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 77: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 78: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 79: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 80: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 81: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 82: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 83: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 84: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 85: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 86: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 87: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 88: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 89: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 90: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 91: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 92: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 93: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 94: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02] 2026-08-14 07:05:07.394858: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 14%, target 100% 2026-08-14 07:05:07.395202: Inverter 0 disabled charge window while waiting for schedule (now 08-14 07:05:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 07:05:07.395399: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:05:07.395706: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:05:07.395844: No export window planned 2026-08-14 07:05:07.396044: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 07:05:07.396099: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:05:07.396343: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:05:07.396629: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 07:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 07:05:07.396705: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 07:05:07.397229: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 07:05:07.397748: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:05:07.397984: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:05:07.398032: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:05:07.398393: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:05:07.398570: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:05:07.398619: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:05:07.398665: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:05:07.398843: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:05:07.398903: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:05:07.399028: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:05:07.399084: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:05:07.399228: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:05:07.399294: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:05:07.399413: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:05:07.399462: Inverter 0 count register writes 0 2026-08-14 07:05:07.434016: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 07:05:07.434311: Recompute is saving previous plan... 2026-08-14 07:05:07.439526: Best charge window [ 14-08 07:00:00 - 14-08 07:30:00 @ 28.02p 0%, 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 0% ] 2026-08-14 07:05:07.439709: Best export window [ ] 2026-08-14 07:05:07.441063: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 07:05:07.445920: Load divergence over 8.0 hours mean 467.23W, min 230.4W, max 1260.0W, std dev 176.98W, divergence 18.94% 2026-08-14 07:05:07.483971: Calculating data from yesterday for savings calculation 2026-08-14 07:05:07.525510: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 07:05:07.640936: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 858.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 07:05:07.674738: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 872.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 07:05:07.727859: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 858.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 07:05:07.817368: Yesterday: Predbat disabled was £8.58 (adjusted £8.32) vs £6.21 (adjusted £5.62), saving £2.37 (adjusted £2.71) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 26.1kWh 2026-08-14 07:05:07.932470: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 902.27p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 07:05:07.932613: Yesterday: No Battery/PV system cost predicted was £9.02 (adjusted £9.02) vs £6.21 (adjusted £5.62), saving £2.81 (adjusted £3.41) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 07:05:07.962497: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 07:05:07.962626: LoadML is_calculating True 2026-08-14 07:05:07.962699: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 07:05:07.971608: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 07:05:07.986389: Optimise levels pass started at 2026-08-14 07:05:07 2026-08-14 07:05:07.986994: Optimise all windows, total charge 94 export 1 2026-08-14 07:05:10.895094: >> Region optimisation pass width 960 2026-08-14 07:05:11.046987: ML Predictor: AR rollout over holdout: ar_mae=0.0040 kWh ar_bias=-0.0006 kWh (-0.8%) [drift vs teacher-forced: +0.0006 kWh] 2026-08-14 07:05:11.064577: ML Predictor: Curriculum pass 4/5 complete, val_mae=0.0033 kWh 2026-08-14 07:05:11.072979: ML Predictor: Curriculum final pass 5/5: full dataset (55.8 days) 2026-08-14 07:05:11.077314: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 07:05:12.234784: ML Predictor: Creating dataset with 1338 hours of training data, 48 hours validation 2026-08-14 07:05:12.595527: >> Region optimisation pass width 480 2026-08-14 07:05:14.487830: >> Region optimisation pass width 240 2026-08-14 07:05:16.607742: >> Region optimisation pass width 120 2026-08-14 07:05:22.490793: Calculated end_record as 08-15 12:30:00 based on best_price 22.25p, next_charge_start 08-14 12:30:00, max_windows 58 2026-08-14 07:05:22.490940: Optimise levels pass ended at 2026-08-14 07:05:22, duration 14.5 seconds tried 338 combinations 2026-08-14 07:05:22.490987: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1027.66p, best_keep 0kWh, best_cycle 48.39kWh, best_carbon 0kg, best_import 38.02kWh 2026-08-14 07:05:22.507389: Starting detailed optimisation end_record 08-15 12:30:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 07:05:22.508586: Best charge windows best_metric 741.18p, best_cost 763.13p, best_carbon 0kg, best_import 50.13kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:05:22.508660: Best export windows best_metric 741.18p, best_cost 763.13p, best_carbon 0kg, best_import 50.13kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:05:22.508749: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 741.18p, best_cost 763.13p, best_cycle 25.86kWh, best_carbon 0kg, best_import 50.13kWh 2026-08-14 07:05:22.813161: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 741.08p, best_cost 763.01p, best_cycle 25.86kWh, best_carbon 0kg, best_import 50.13kWh 2026-08-14 07:05:23.150310: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 741.08p, best_cost 763.01p, best_cycle 25.86kWh, best_carbon 0kg, best_import 50.13kWh 2026-08-14 07:05:23.665121: Best charge windows best_metric 741.08p, best_cost 763.01p, best_carbon 0kg, best_import 50.13kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:05:23.665345: Best export windows best_metric 741.08p, best_cost 763.01p, best_carbon 0kg, best_import 50.13kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:05:23.666739: Best charge windows best_metric 741.08p, best_cost 763.01p, best_carbon 0kg, best_import 50.13kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:05:23.666851: Best export windows best_metric 741.08p, best_cost 763.01p, best_carbon 0kg, best_import 50.13kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:05:23.667024: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 741.08p, best_cost 763.01p, best_cycle 25.86kWh, best_carbon 0kg, best_import 50.13kWh 2026-08-14 07:05:24.356000: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 741.08p, best_cost 763.01p, best_cycle 25.86kWh, best_carbon 0kg, best_import 50.13kWh 2026-08-14 07:05:24.640742: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 741.03p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:25.228153: Best charge windows best_metric 741.03p, best_cost 763.26p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 88%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:05:25.228288: Best export windows best_metric 741.03p, best_cost 763.26p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:05:25.229501: Best charge windows best_metric 741.03p, best_cost 763.26p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 88%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:05:25.229595: Best export windows best_metric 741.03p, best_cost 763.26p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:05:25.229735: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 741.03p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:25.519128: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 741.03p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:25.687409: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 741.03p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:25.844000: ML Predictor: Created 15774 training samples, 576 validation samples 2026-08-14 07:05:25.847165: Best charge windows best_metric 741.03p, best_cost 763.26p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 88%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:05:25.847333: Best export windows best_metric 741.03p, best_cost 763.26p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:05:25.847392: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 741.03p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:25.937594: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0588 std=0.0474) load(mean=0.0588 std=0.0472) pv(mean=0.0000 std=0.0100) temp(mean=19.5455 std=4.4304) import_rate(mean=24.2460 std=2.0088) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1925 std=0.5231) 2026-08-14 07:05:25.955808: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 741.03p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:26.031989: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 741.03p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:26.032097: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 07:05:26.073757: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 07:05:26.180162: ML Predictor: Baseline (pre-finetune) val_mae=0.0085 kWh val_bias=+0.0009 kWh 2026-08-14 07:05:27.290968: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 741.03p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:27.558370: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 741.03p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:27.982580: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 741.03p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:28.290901: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 741.03p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:28.691864: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 741.03p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:29.371007: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:30.641583: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:30.929463: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:31.122130: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:31.489859: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:31.787458: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:32.137569: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:32.733677: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:33.109404: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:33.645246: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:33.942784: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:34.164747: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:34.517174: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:34.827070: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:35.260391: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:35.525612: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:35.808998: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:36.138875: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:36.418734: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:36.773772: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:36.958773: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:37.165192: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:37.485922: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:37.682846: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:37.956397: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:38.146776: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:38.430930: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:38.685239: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:39.032589: Best charge windows best_metric 740.96p, best_cost 763.26p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 88%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:05:39.032735: Best export windows best_metric 740.96p, best_cost 763.26p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:05:39.034169: Best charge windows best_metric 740.96p, best_cost 763.26p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 88%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:05:39.034286: Best export windows best_metric 740.96p, best_cost 763.26p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:05:39.034387: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:39.129630: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:39.670980: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 740.96p, best_cost 763.26p, best_cycle 26.86kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:05:40.286736: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 740.75p, best_cost 762.85p, best_cycle 25.86kWh, best_carbon 0kg, best_import 50.13kWh 2026-08-14 07:05:41.148334: Best charge windows best_metric 740.75p, best_cost 762.85p, best_carbon 0kg, best_import 50.13kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:05:41.148533: Best export windows best_metric 740.75p, best_cost 762.85p, best_carbon 0kg, best_import 50.13kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:05:41.148717: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 740.75p, best_cost 762.85p, best_cycle 25.86kWh, best_carbon 0kg, best_import 50.13kWh 2026-08-14 07:05:41.381364: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 740.75p, best_cost 762.85p, best_cycle 25.86kWh, best_carbon 0kg, best_import 50.13kWh 2026-08-14 07:05:42.848904: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 740.75p, best_cost 762.85p, best_cycle 25.86kWh, best_carbon 0kg, best_import 50.13kWh 2026-08-14 07:05:43.433203: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 740.75p, best_cost 762.85p, best_cycle 25.86kWh, best_carbon 0kg, best_import 50.13kWh 2026-08-14 07:05:43.799458: Best charge windows best_metric 740.75p, best_cost 762.85p, best_carbon 0kg, best_import 50.13kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:05:43.799780: Best export windows best_metric 740.75p, best_cost 762.85p, best_carbon 0kg, best_import 50.13kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:05:43.801398: Best charge windows best_metric 740.75p, best_cost 762.85p, best_carbon 0kg, best_import 50.13kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:05:43.801598: Best export windows best_metric 740.75p, best_cost 762.85p, best_carbon 0kg, best_import 50.13kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:05:43.801796: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 740.75p, best_cost 762.85p, best_cycle 25.86kWh, best_carbon 0kg, best_import 50.13kWh 2026-08-14 07:05:44.032432: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 740.75p, best_cost 762.85p, best_cycle 25.86kWh, best_carbon 0kg, best_import 50.13kWh 2026-08-14 07:05:44.685652: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 740.75p, best_cost 762.85p, best_cycle 25.86kWh, best_carbon 0kg, best_import 50.13kWh 2026-08-14 07:05:45.337300: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 740.75p, best_cost 762.85p, best_cycle 25.86kWh, best_carbon 0kg, best_import 50.13kWh 2026-08-14 07:05:45.721271: Best charge windows best_metric 740.75p, best_cost 762.85p, best_carbon 0kg, best_import 50.13kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:05:45.721544: Best export windows best_metric 740.75p, best_cost 762.85p, best_carbon 0kg, best_import 50.13kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:05:45.721799: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 740.75p, best_cost 762.85p, best_cycle 25.86kWh, best_carbon 0kg, best_import 50.13kWh 2026-08-14 07:05:45.764734: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 740.75p, best_cost 762.85p, best_cycle 25.86kWh, best_carbon 0kg, best_import 50.13kWh 2026-08-14 07:05:46.844447: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 740.75p, best_cost 762.85p, best_cycle 25.86kWh, best_carbon 0kg, best_import 50.13kWh 2026-08-14 07:05:46.916789: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 740.75p, best_cost 762.85p, best_cycle 25.86kWh, best_carbon 0kg, best_import 50.13kWh 2026-08-14 07:05:47.043209: Best charge windows best_metric 740.75p, best_cost 762.85p, best_carbon 0kg, best_import 50.13kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:05:47.043523: Best export windows best_metric 740.75p, best_cost 762.85p, best_carbon 0kg, best_import 50.13kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:05:47.043780: Tweak plan optimisation started 2026-08-14 07:05:48.750532: Tweak optimisation finished metric 740.75 cost 762.85 metric_keep 0 cycle 25.86 carbon 0 import 50.13 2026-08-14 07:05:48.771473: Swap charge optimisation started metric 740.75p, cost 762.85p, min_improvement_swap 0.1p 2026-08-14 07:05:54.526366: Swap charge optimisation finished metric 740.75p, cost 762.85p 2026-08-14 07:05:54.539898: Raw charge windows [ 14-08 07:00:00 - 14-08 07:30:00 @ 28.02p 0%, 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] reserve 1.12 2026-08-14 07:05:54.540794: Unclipped charge windows [ 14-08 12:30:00 - 14-08 14:00:00 @ 21.89p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 07:30:00 @ 28.95p 100% ] reserve 1.12 2026-08-14 07:05:54.541331: Unfiltered charge windows [ 14-08 12:30:00 - 14-08 14:00:00 @ 21.89p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 07:30:00 @ 28.95p 100% ] reserve 1.12 2026-08-14 07:05:54.542789: Filtered charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 07:30:00 @ 28.95p 100% ] reserve 1.12 2026-08-14 07:05:54.605850: Previous plan best metric is 740.59 (cost 762.87) and new plan best metric is 740.75 (cost 762.85) 2026-08-14 07:05:54.606115: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 07:05:54.606293: Plan valid is now true after recompute was False 2026-08-14 07:05:54.692070: predict base end_record 08-15 12:30:00, final soc 1.12kWh, metric 904.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:00:00, load 29.38kWh, PV 0.0kWh 2026-08-14 07:05:55.009532: Battery has 1.92 hours left - now at 2.24kWh 2026-08-14 07:05:55.111528: predict base10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 933.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:55:00, load 30.42kWh, PV 0.0kWh 2026-08-14 07:05:55.316369: predict best10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 838.35p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:55:00, load 30.42kWh, PV 0.0kWh 2026-08-14 07:05:55.467005: predict best end_record 08-15 12:30:00, final soc 1.12kWh, metric 812.86p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:00:00, load 29.38kWh, PV 0.0kWh 2026-08-14 07:05:55.467132: Saving plan best values to HA entities 2026-08-14 07:05:55.812078: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 07:05:55.820540: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 07:05:55.829418: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.15kWh, house 5.99kWh, export 0.0kWh, metric 812.86p, metric10 838.35p 2026-08-14 07:05:56.046122: Marginal costs baseline metric (no standing charge): 762.8724 2026-08-14 07:05:56.335808: Marginal energy costs matrix computed: min=21.8 max=36.14 2026-08-14 07:05:56.430407: Rate array import [{'start': 425, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 28.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2190, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 425, 'end': 2190, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 07:05:56.431669: - Your estimated bill for today is £6.94 and tomorrow is £6.99 2026-08-14 07:05:56.431734: - Import rates are cheap (21.7p - 28.6p) for the next 8 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 07:05:56.431758: - The battery is currently at 14% and is in eco mode for the next 5 and a half hours. 2026-08-14 07:05:56.431779: - For the next 48 hours there will be no solar generation. 2026-08-14 07:05:56.431798: - You will run out of battery in 1 hours. 2026-08-14 07:05:56.431824: - Your next charge slot will be in 5 and a half hours where import rates will be cheap (22.2p). 2026-08-14 07:05:56.431844: 2026-08-14 07:05:56.471428: Plan calculation took 49.04 seconds 2026-08-14 07:05:56.471680: Inverter 0: Type SK Sunsynk 2026-08-14 07:05:56.471831: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 07:05:56.472126: Reserve min: 7%, battery_min: 7% 2026-08-14 07:05:56.472313: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 07:05:56.472696: Inverter 0 SoC: 2.24kW 14%, current charge rate 5000W, current discharge rate 5250W, current battery power 306W, current battery voltage 51.2V, grid power -59W, load power 372W, PV Power 0W 2026-08-14 07:05:56.472980: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:05:56.473177: Inverter 0 scheduled charge enable is False 2026-08-14 07:05:56.473296: Inverter 0 charge windows currently [] 2026-08-14 07:05:56.473362: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 07:05:56.473528: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:05:56.473660: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:05:56.473794: Inverter 0 scheduled discharge enable is False 2026-08-14 07:05:56.474037: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:05:56.474167: Inverter 0 discharge windows currently [] 2026-08-14 07:05:56.474295: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:05:56.474406: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:05:56.474484: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:05:56.580128: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 14%, target 100% 2026-08-14 07:05:56.580384: Inverter 0 disabled charge window while waiting for schedule (now 08-14 07:05:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 07:05:56.580539: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:05:56.580778: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:05:56.580902: No export window planned 2026-08-14 07:05:56.581110: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 07:05:56.581161: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:05:56.581376: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:05:56.581579: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 07:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 07:05:56.581731: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 07:05:56.581878: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 07:05:56.582055: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:05:56.582187: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:05:56.582331: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:05:56.582430: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:05:56.582474: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:05:56.582503: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:05:56.582617: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:05:56.582778: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:05:56.582907: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:05:56.583027: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:05:56.583147: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:05:56.583281: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:05:56.583406: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:05:56.583554: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:05:56.583669: Inverter 0 count register writes 0 2026-08-14 07:05:56.631657: Total inverter register writes now 806 2026-08-14 07:05:56.692482: Info: Completed run status Demand 2026-08-14 07:05:56.699289: Info: record_status Demand 2026-08-14 07:05:56.708375: Saved current settings to /config/predbat_config.json 2026-08-14 07:05:56.708610: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 07:06:11.348104: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0148 val_mae=0.0076 kWh val_bias=-0.0012 kWh (-1.4%) combined=0.0045 kWh ema_combined=0.0045 kWh 2026-08-14 07:06:38.846605: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:06:38.847092: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:06:38.847162: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:06:38.847453: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:06:38.847631: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:06:38.847781: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:06:38.847923: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:06:40.816344: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0132 val_mae=0.0078 kWh val_bias=+0.0002 kWh (+0.2%) combined=0.0047 kWh ema_combined=0.0046 kWh 2026-08-14 07:07:07.020407: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0146 val_mae=0.0077 kWh val_bias=+0.0012 kWh (+1.5%) combined=0.0045 kWh ema_combined=0.0045 kWh 2026-08-14 07:07:34.295922: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0128 val_mae=0.0080 kWh val_bias=-0.0007 kWh (-0.9%) combined=0.0048 kWh ema_combined=0.0046 kWh 2026-08-14 07:08:00.691261: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0138 val_mae=0.0076 kWh val_bias=-0.0027 kWh (-3.2%) combined=0.0052 kWh ema_combined=0.0048 kWh 2026-08-14 07:08:27.439339: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0124 val_mae=0.0072 kWh val_bias=+0.0007 kWh (+0.8%) combined=0.0038 kWh ema_combined=0.0045 kWh 2026-08-14 07:08:39.349047: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:08:39.349396: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:08:39.349459: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:08:39.349642: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:08:39.349694: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:08:39.349722: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:08:39.349856: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:08:56.258245: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0124 val_mae=0.0075 kWh val_bias=-0.0018 kWh (-2.1%) combined=0.0039 kWh ema_combined=0.0043 kWh 2026-08-14 07:09:22.075691: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0125 val_mae=0.0064 kWh val_bias=-0.0000 kWh (-0.0%) combined=0.0034 kWh ema_combined=0.0040 kWh 2026-08-14 07:09:48.612675: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0118 val_mae=0.0071 kWh val_bias=-0.0027 kWh (-3.2%) combined=0.0048 kWh ema_combined=0.0042 kWh 2026-08-14 07:10:00.705577: --------------- PredBat - update at 2026-08-14 07:10:00+01:00 with clock skew 0 minutes, minutes now 430 2026-08-14 07:10:00.707482: Saved current settings to /config/predbat_config.json 2026-08-14 07:10:00.707748: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 104.9 minutes 2026-08-14 07:10:00.707886: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 07:10:00.708098: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 07:10:00.758726: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 07:10:00.758886: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 07:10:00.760859: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 07:10:00.761051: Predbat mode is set to Control charge & discharge 2026-08-14 07:10:01.241026: Found 21602 load_today datapoints going back 28 days 2026-08-14 07:10:01.241161: Using load_power data to fill gaps in load_today data 2026-08-14 07:10:02.402771: Processing 721 30-minute periods for power integration 2026-08-14 07:10:02.608977: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 07:10:02.609153: Car charging hold False, threshold 6.0kWh 2026-08-14 07:10:02.609218: Current data so far today: load 7.62kWh, import 8.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 07:10:02.632294: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 07:10:02.633420: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 07:10:02.633538: Standing charge is set to 49.98p 2026-08-14 07:10:02.712244: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 07:10:02.712370: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 07:10:02.712637: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 430.0 minutes 2026-08-14 07:10:02.713302: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 429.8 minutes 2026-08-14 07:10:02.717288: Loaded 47 datapoints of futurerate analysis 2026-08-14 07:10:02.848348: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 07:10:02.938715: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 07:10:02.950981: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 07:10:02.951552: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 07:10:03.022553: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 07:10:03.022838: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 07:10:03.024746: High export rate found rates in range 99p to -99p 2026-08-14 07:10:03.187409: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 07:10:03.187634: Car 0 charging is not planned as it is not plugged in 2026-08-14 07:10:03.203137: Battery level now 2.24kWh, -1hr ago 2.72kWh, at midnight 2.43kWh, battery value change in the last hour -11.19p, change today -4.47p, rate_forward 23.31p 2026-08-14 07:10:03.203677: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.47kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 07:10:03.298406: Today's energy total net 8.3kWh, import 8.3kWh, export 0.0kWh, cost 259.83p, import 209.85p, export 0.0p, carbon 0.0kg 2026-08-14 07:10:03.298601: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 07:10:03.413863: Using weighted-bucket historical load forecast over 14 days 2026-08-14 07:10:03.458934: Today's load divergence 112.55%, in-day adjustment 136.39%, damping 0.95x, yesterday 146.81% today 111.92% blend 70.14% 2026-08-14 07:10:03.459237: Today's predicted so far 2.78kWh with 0.0kWh car/iBoost excluded, 1.48kWh import ignored, and 4.27kWh forecast extra. 2026-08-14 07:10:03.459390: Today's actual load so far 4.59kWh with 0.0kWh car/iBoost excluded, and 3.15kWh import ignored. 2026-08-14 07:10:04.170458: Inverter 0: Type SK Sunsynk 2026-08-14 07:10:04.170565: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 07:10:04.170753: Reserve min: 7%, battery_min: 7% 2026-08-14 07:10:04.170840: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 07:10:04.171108: Inverter 0 SoC: 2.24kW 14%, current charge rate 5000W, current discharge rate 5250W, current battery power 253W, current battery voltage 51.2V, grid power -54W, load power 316W, PV Power 0W 2026-08-14 07:10:04.171272: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:10:04.171366: Inverter 0 scheduled charge enable is False 2026-08-14 07:10:04.171395: Inverter 0 charge windows currently [] 2026-08-14 07:10:04.171421: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 07:10:04.171560: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:10:04.171601: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:10:04.171639: Inverter 0 scheduled discharge enable is False 2026-08-14 07:10:04.171765: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:10:04.171804: Inverter 0 discharge windows currently [] 2026-08-14 07:10:04.171827: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:10:04.171845: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:10:04.171862: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:10:04.526044: Dynamic load last period 0.30kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 07:10:04.526186: Plan was last updated on 2026-08-14 07:05:00+01:00 and is now 5.0 minutes old 2026-08-14 07:10:04.526602: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 07:10:04.526668: Best export window [ ] 2026-08-14 07:10:04.527993: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 07:10:04.532998: Load divergence over 8.0 hours mean 465.24W, min 240.6W, max 1225.8W, std dev 168.77W, divergence 18.14% 2026-08-14 07:10:04.590866: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 07:10:04.591027: LoadML is_calculating True 2026-08-14 07:10:04.591066: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 07:10:04.702551: predict base end_record 08-15 12:35:00, final soc 1.12kWh, metric 903.85p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:05:00, load 29.5kWh, PV 0.0kWh 2026-08-14 07:10:05.047663: Battery has 1.92 hours left - now at 2.24kWh 2026-08-14 07:10:05.133014: predict base10 end_record 08-15 12:35:00, final soc 1.12kWh, metric 933.41p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:00:00, load 30.55kWh, PV 0.0kWh 2026-08-14 07:10:05.514033: predict best10 end_record 08-15 12:35:00, final soc 1.44kWh, metric 846.02p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:00:00, load 30.55kWh, PV 0.0kWh 2026-08-14 07:10:05.827251: predict best end_record 08-15 12:35:00, final soc 1.51kWh, metric 822.01p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:05:00, load 29.5kWh, PV 0.0kWh 2026-08-14 07:10:05.835845: Saving plan best values to HA entities 2026-08-14 07:10:06.199173: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 07:10:06.205950: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 07:10:06.217491: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.14kWh, house 5.93kWh, export 0.0kWh, metric 822.01p, metric10 846.02p 2026-08-14 07:10:06.379149: Marginal costs baseline metric (no standing charge): 772.0313 2026-08-14 07:10:06.786227: Marginal energy costs matrix computed: min=21.78 max=36.5 2026-08-14 07:10:06.905473: Rate array import [{'start': 430, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 28.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2195, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 430, 'end': 2195, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 07:10:06.906202: - Your estimated bill for today is £6.93 and tomorrow is £7.00 2026-08-14 07:10:06.906266: - Import rates are cheap (21.7p - 28.6p) for the next 8 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 07:10:06.906297: - The battery is currently at 14% and is in eco mode for the next 5 and a quarter hours. 2026-08-14 07:10:06.906319: - For the next 48 hours there will be no solar generation. 2026-08-14 07:10:06.906339: - You will run out of battery in 1 hours. 2026-08-14 07:10:06.906459: - Your next charge slot will be in 5 and a quarter hours where import rates will be cheap (22.2p). 2026-08-14 07:10:06.906506: 2026-08-14 07:10:06.969100: Plan calculation took 2.44 seconds 2026-08-14 07:10:06.974319: No high rate period found 2026-08-14 07:10:07.099036: Import threshold used for optimisation was 24.64p 2026-08-14 07:10:07.284599: Low import rate windows [0: 08-14 07:00:00 - 08-14 07:30:00 @ 28.02, 1: 08-14 07:30:00 - 08-14 08:00:00 @ 28.58, 2: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 3: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 4: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 5: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 6: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 7: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 8: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 9: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 10: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 11: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 12: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 13: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 14: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 15: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 16: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 17: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 18: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 19: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 20: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 21: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 22: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 23: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 24: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 25: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 26: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 27: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 28: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 29: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 30: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 31: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 32: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 33: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 34: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 35: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 36: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 37: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 38: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 39: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 40: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 41: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 42: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 43: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 44: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 45: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 46: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 47: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 48: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 49: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 50: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 51: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 52: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 53: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 54: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 55: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 56: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 57: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 58: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 59: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 60: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 61: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 62: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 63: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 64: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 65: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 66: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 67: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 68: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 69: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 70: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 71: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 72: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 73: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 74: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 75: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 76: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 77: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 78: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 79: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 80: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 81: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 82: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 83: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 84: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 85: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 86: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 87: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 88: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 89: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 90: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 91: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 92: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 93: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 94: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02] 2026-08-14 07:10:07.298162: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 14%, target 100% 2026-08-14 07:10:07.298310: Inverter 0 disabled charge window while waiting for schedule (now 08-14 07:10:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 07:10:07.298383: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:10:07.299033: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:10:07.299137: No export window planned 2026-08-14 07:10:07.299244: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 07:10:07.299283: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:10:07.299422: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:10:07.299664: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 07:10:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 07:10:07.299722: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 07:10:07.299790: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 07:10:07.299865: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:10:07.299906: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:10:07.299940: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:10:07.299977: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:10:07.300010: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:10:07.300042: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:10:07.300075: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:10:07.300137: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:10:07.300174: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:10:07.300208: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:10:07.300341: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:10:07.300400: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:10:07.300454: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:10:07.300488: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:10:07.300510: Inverter 0 count register writes 0 2026-08-14 07:10:07.333078: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 07:10:07.350002: Total inverter register writes now 806 2026-08-14 07:10:07.426314: Info: Completed run status Demand 2026-08-14 07:10:07.434927: Info: record_status Demand 2026-08-14 07:10:07.443842: Saved current settings to /config/predbat_config.json 2026-08-14 07:10:07.444081: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 07:10:19.491370: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0132 val_mae=0.0077 kWh val_bias=-0.0039 kWh (-4.6%) combined=0.0052 kWh ema_combined=0.0045 kWh 2026-08-14 07:10:39.582070: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:10:39.582349: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:10:39.582405: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:10:39.582573: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:10:39.582618: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:10:39.582640: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:10:39.582658: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:10:44.615544: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0109 val_mae=0.0068 kWh val_bias=-0.0032 kWh (-3.8%) combined=0.0054 kWh ema_combined=0.0048 kWh 2026-08-14 07:11:11.302111: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0109 val_mae=0.0064 kWh val_bias=-0.0003 kWh (-0.4%) combined=0.0033 kWh ema_combined=0.0043 kWh 2026-08-14 07:11:35.674208: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0096 val_mae=0.0061 kWh val_bias=-0.0023 kWh (-2.7%) combined=0.0040 kWh ema_combined=0.0042 kWh 2026-08-14 07:12:03.857728: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0099 val_mae=0.0065 kWh val_bias=-0.0014 kWh (-1.7%) combined=0.0033 kWh ema_combined=0.0040 kWh 2026-08-14 07:12:32.220427: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0107 val_mae=0.0065 kWh val_bias=-0.0023 kWh (-2.7%) combined=0.0047 kWh ema_combined=0.0042 kWh 2026-08-14 07:12:54.030577: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:12:54.030821: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:12:54.030868: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:12:54.031007: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:12:54.031048: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:12:54.031070: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:12:54.031088: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:12:59.959995: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0097 val_mae=0.0057 kWh val_bias=-0.0016 kWh (-1.9%) combined=0.0035 kWh ema_combined=0.0040 kWh 2026-08-14 07:13:26.644007: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0093 val_mae=0.0059 kWh val_bias=-0.0013 kWh (-1.5%) combined=0.0031 kWh ema_combined=0.0037 kWh 2026-08-14 07:13:51.387908: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0094 val_mae=0.0051 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0031 kWh ema_combined=0.0035 kWh 2026-08-14 07:14:17.787380: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0079 val_mae=0.0049 kWh val_bias=+0.0003 kWh (+0.3%) combined=0.0028 kWh ema_combined=0.0033 kWh 2026-08-14 07:14:41.775437: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0079 val_mae=0.0049 kWh val_bias=-0.0007 kWh (-0.8%) combined=0.0025 kWh ema_combined=0.0031 kWh 2026-08-14 07:14:54.488690: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:14:54.488969: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:14:54.489020: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:14:54.489173: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:14:54.489216: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:14:54.489238: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:14:54.489256: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:15:00.668605: --------------- PredBat - update at 2026-08-14 07:15:00+01:00 with clock skew 0 minutes, minutes now 435 2026-08-14 07:15:00.694706: Saved current settings to /config/predbat_config.json 2026-08-14 07:15:00.694938: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 109.9 minutes 2026-08-14 07:15:00.695050: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 07:15:00.695193: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 07:15:00.729064: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 07:15:00.729226: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 07:15:00.730160: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 07:15:00.730613: Predbat mode is set to Control charge & discharge 2026-08-14 07:15:01.150440: Found 21602 load_today datapoints going back 28 days 2026-08-14 07:15:01.150723: Using load_power data to fill gaps in load_today data 2026-08-14 07:15:02.375282: Processing 721 30-minute periods for power integration 2026-08-14 07:15:02.678986: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 07:15:02.679145: Car charging hold False, threshold 6.0kWh 2026-08-14 07:15:02.679201: Current data so far today: load 7.65kWh, import 8.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 07:15:02.700338: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 07:15:02.701432: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 07:15:02.701531: Standing charge is set to 49.98p 2026-08-14 07:15:02.788467: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 07:15:02.788579: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 07:15:02.788866: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 435.0 minutes 2026-08-14 07:15:02.789380: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 434.8 minutes 2026-08-14 07:15:02.792556: Loaded 47 datapoints of futurerate analysis 2026-08-14 07:15:02.942408: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 07:15:03.074992: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 07:15:03.097472: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 07:15:03.098280: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 07:15:03.144413: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 07:15:03.145168: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 07:15:03.146532: High export rate found rates in range 99p to -99p 2026-08-14 07:15:03.234031: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 07:15:03.234363: Car 0 charging is not planned as it is not plugged in 2026-08-14 07:15:03.256092: Battery level now 2.24kWh, -1hr ago 2.68kWh, at midnight 2.43kWh, battery value change in the last hour -10.26p, change today -4.47p, rate_forward 23.31p 2026-08-14 07:15:03.256658: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.45kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 07:15:03.400014: Today's energy total net 8.3kWh, import 8.3kWh, export 0.0kWh, cost 259.83p, import 209.85p, export 0.0p, carbon 0.0kg 2026-08-14 07:15:03.400338: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 07:15:03.550301: Using weighted-bucket historical load forecast over 14 days 2026-08-14 07:15:03.611527: Today's load divergence 112.67%, in-day adjustment 136.31%, damping 0.95x, yesterday 146.81% today 112.04% blend 69.79% 2026-08-14 07:15:03.611684: Today's predicted so far 2.59kWh with 0.0kWh car/iBoost excluded, 1.67kWh import ignored, and 4.26kWh forecast extra. 2026-08-14 07:15:03.611762: Today's actual load so far 4.39kWh with 0.0kWh car/iBoost excluded, and 3.33kWh import ignored. 2026-08-14 07:15:03.698432: Inverter 0: Type SK Sunsynk 2026-08-14 07:15:03.698690: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 07:15:03.699027: Reserve min: 7%, battery_min: 7% 2026-08-14 07:15:03.699185: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 07:15:03.699618: Inverter 0 SoC: 2.12kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power 239W, current battery voltage 51.2V, grid power -55W, load power 299W, PV Power 0W 2026-08-14 07:15:03.699906: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:15:03.700091: Inverter 0 scheduled charge enable is False 2026-08-14 07:15:03.700151: Inverter 0 charge windows currently [] 2026-08-14 07:15:03.700288: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 07:15:03.700521: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:15:03.700582: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:15:03.700757: Inverter 0 scheduled discharge enable is False 2026-08-14 07:15:03.701043: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:15:03.701105: Inverter 0 discharge windows currently [] 2026-08-14 07:15:03.701226: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:15:03.701278: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:15:03.701348: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:15:03.839602: Dynamic load last period 0.30kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 07:15:03.839933: Plan was last updated on 2026-08-14 07:05:00+01:00 and is now 10.0 minutes old 2026-08-14 07:15:03.840557: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 07:15:03.840797: Best export window [ ] 2026-08-14 07:15:03.842222: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 07:15:03.849551: Load divergence over 8.0 hours mean 463.01W, min 220.2W, max 1101.0W, std dev 165.12W, divergence 17.83% 2026-08-14 07:15:03.885001: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 07:15:03.897876: LoadML is_calculating True 2026-08-14 07:15:03.897953: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 07:15:04.002912: predict base end_record 08-15 12:40:00, final soc 1.12kWh, metric 907.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:55:00, load 29.57kWh, PV 0.0kWh 2026-08-14 07:15:04.230121: Battery has 1.67 hours left - now at 2.12kWh 2026-08-14 07:15:04.323401: predict base10 end_record 08-15 12:40:00, final soc 1.12kWh, metric 937.17p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:50:00, load 30.61kWh, PV 0.0kWh 2026-08-14 07:15:04.445688: predict best10 end_record 08-15 12:40:00, final soc 1.77kWh, metric 857.35p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:50:00, load 30.61kWh, PV 0.0kWh 2026-08-14 07:15:04.599082: predict best end_record 08-15 12:40:00, final soc 1.9kWh, metric 834.8p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:55:00, load 29.57kWh, PV 0.0kWh 2026-08-14 07:15:04.599350: Saving plan best values to HA entities 2026-08-14 07:15:04.912503: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 07:15:04.920556: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 07:15:04.928633: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.13kWh, house 6.02kWh, export 0.0kWh, metric 834.8p, metric10 857.35p 2026-08-14 07:15:05.099584: Marginal costs baseline metric (no standing charge): 784.8161 2026-08-14 07:15:05.691243: Marginal energy costs matrix computed: min=21.77 max=36.87 2026-08-14 07:15:05.903346: Rate array import [{'start': 435, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 28.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2200, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 435, 'end': 2200, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 07:15:05.904379: - Your estimated bill for today is £6.95 and tomorrow is £7.02 2026-08-14 07:15:05.904436: - Import rates are cheap (21.7p - 28.6p) for the next 8 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 07:15:05.904465: - The battery is currently at 13% and is in eco mode for the next 5 and a quarter hours. 2026-08-14 07:15:05.904582: - For the next 48 hours there will be no solar generation. 2026-08-14 07:15:05.904631: - You will run out of battery in 1 and three quarters hours. 2026-08-14 07:15:05.904733: - Your next charge slot will be in 5 and a quarter hours where import rates will be cheap (22.2p). 2026-08-14 07:15:05.904812: 2026-08-14 07:15:05.974786: Plan calculation took 2.13 seconds 2026-08-14 07:15:05.979683: No high rate period found 2026-08-14 07:15:06.091865: Import threshold used for optimisation was 24.64p 2026-08-14 07:15:06.230832: Low import rate windows [0: 08-14 07:00:00 - 08-14 07:30:00 @ 28.02, 1: 08-14 07:30:00 - 08-14 08:00:00 @ 28.58, 2: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 3: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 4: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 5: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 6: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 7: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 8: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 9: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 10: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 11: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 12: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 13: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 14: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 15: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 16: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 17: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 18: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 19: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 20: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 21: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 22: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 23: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 24: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 25: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 26: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 27: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 28: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 29: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 30: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 31: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 32: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 33: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 34: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 35: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 36: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 37: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 38: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 39: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 40: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 41: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 42: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 43: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 44: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 45: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 46: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 47: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 48: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 49: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 50: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 51: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 52: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 53: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 54: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 55: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 56: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 57: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 58: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 59: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 60: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 61: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 62: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 63: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 64: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 65: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 66: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 67: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 68: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 69: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 70: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 71: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 72: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 73: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 74: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 75: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 76: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 77: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 78: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 79: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 80: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 81: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 82: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 83: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 84: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 85: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 86: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 87: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 88: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 89: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 90: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 91: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 92: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 93: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 94: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02] 2026-08-14 07:15:06.242003: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-14 07:15:06.242175: Inverter 0 disabled charge window while waiting for schedule (now 08-14 07:15:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 07:15:06.242258: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:15:06.242478: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:15:06.242565: No export window planned 2026-08-14 07:15:06.242715: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 07:15:06.242762: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:15:06.242930: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:15:06.243106: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 07:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 07:15:06.243165: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 07:15:06.243217: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 07:15:06.243303: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:15:06.243352: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:15:06.243397: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:15:06.243436: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:15:06.243504: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:15:06.243540: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:15:06.243573: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:15:06.243672: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:15:06.243722: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:15:06.243757: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:15:06.243798: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:15:06.243831: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:15:06.243872: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:15:06.243905: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:15:06.244021: Inverter 0 count register writes 0 2026-08-14 07:15:06.268467: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 07:15:06.268721: Recompute is saving previous plan... 2026-08-14 07:15:06.273656: Best charge window [ 14-08 07:00:00 - 14-08 07:30:00 @ 28.02p 0%, 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 0% ] 2026-08-14 07:15:06.273860: Best export window [ ] 2026-08-14 07:15:06.275173: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 07:15:06.280036: Load divergence over 8.0 hours mean 463.01W, min 220.2W, max 1101.0W, std dev 165.12W, divergence 17.83% 2026-08-14 07:15:06.309789: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 07:15:06.309912: LoadML is_calculating True 2026-08-14 07:15:06.309938: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 07:15:06.319152: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 07:15:06.334212: Optimise levels pass started at 2026-08-14 07:15:06 2026-08-14 07:15:06.334269: Optimise all windows, total charge 94 export 1 2026-08-14 07:15:08.532764: >> Region optimisation pass width 960 2026-08-14 07:15:09.353127: >> Region optimisation pass width 480 2026-08-14 07:15:10.245597: >> Region optimisation pass width 240 2026-08-14 07:15:11.553028: >> Region optimisation pass width 120 2026-08-14 07:15:16.272033: Calculated end_record as 08-15 12:30:00 based on best_price 22.25p, next_charge_start 08-14 12:30:00, max_windows 58 2026-08-14 07:15:16.272173: Optimise levels pass ended at 2026-08-14 07:15:16, duration 9.9 seconds tried 338 combinations 2026-08-14 07:15:16.272247: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1029.53p, best_keep 0kWh, best_cycle 48.33kWh, best_carbon 0kg, best_import 38.04kWh 2026-08-14 07:15:16.304330: Starting detailed optimisation end_record 08-15 12:30:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 07:15:16.306401: Best charge windows best_metric 741.84p, best_cost 763.79p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:15:16.306563: Best export windows best_metric 741.84p, best_cost 763.79p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:15:16.306859: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 741.84p, best_cost 763.79p, best_cycle 25.74kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:15:16.915040: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 741.74p, best_cost 763.67p, best_cycle 25.74kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:15:17.367531: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 741.74p, best_cost 763.67p, best_cycle 25.74kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:15:18.143364: Best charge windows best_metric 741.74p, best_cost 763.67p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:15:18.144379: Best export windows best_metric 741.74p, best_cost 763.67p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:15:18.145662: Best charge windows best_metric 741.74p, best_cost 763.67p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:15:18.145841: Best export windows best_metric 741.74p, best_cost 763.67p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:15:18.146019: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 741.74p, best_cost 763.67p, best_cycle 25.74kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:15:18.766893: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0074 val_mae=0.0050 kWh val_bias=-0.0013 kWh (-1.6%) combined=0.0032 kWh ema_combined=0.0031 kWh 2026-08-14 07:15:19.011952: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 741.74p, best_cost 763.67p, best_cycle 25.74kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:15:19.348676: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 741.64p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:20.239485: Best charge windows best_metric 741.64p, best_cost 763.85p, best_carbon 0kg, best_import 50.27kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 88%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:15:20.239628: Best export windows best_metric 741.64p, best_cost 763.85p, best_carbon 0kg, best_import 50.27kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:15:20.241096: Best charge windows best_metric 741.64p, best_cost 763.85p, best_carbon 0kg, best_import 50.27kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 88%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:15:20.241298: Best export windows best_metric 741.64p, best_cost 763.85p, best_carbon 0kg, best_import 50.27kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:15:20.241473: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 741.64p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:20.978082: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 741.64p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:21.280446: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 741.64p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:21.455864: Best charge windows best_metric 741.64p, best_cost 763.85p, best_carbon 0kg, best_import 50.27kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 88%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:15:21.456201: Best export windows best_metric 741.64p, best_cost 763.85p, best_carbon 0kg, best_import 50.27kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:15:21.456273: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 741.64p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:21.590089: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 741.64p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:21.710024: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 741.64p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:22.591778: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 741.64p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:23.064459: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 741.64p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:23.534972: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 741.64p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:23.846033: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 741.64p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:24.066699: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 741.64p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:24.992993: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:26.277111: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:26.568466: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:26.929160: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:27.235644: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:27.678251: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:27.843250: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:28.417274: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:28.987312: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:29.546023: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:30.002841: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:30.230991: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:30.434529: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:30.593535: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:30.889196: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:31.173880: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:31.560036: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:31.931523: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:32.228707: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:32.584757: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:32.743071: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:32.917864: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:33.236239: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:33.428845: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:33.711328: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:33.913505: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:34.162711: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:34.425879: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:34.731120: Best charge windows best_metric 741.56p, best_cost 763.85p, best_carbon 0kg, best_import 50.27kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 88%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:15:34.731283: Best export windows best_metric 741.56p, best_cost 763.85p, best_carbon 0kg, best_import 50.27kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:15:34.733292: Best charge windows best_metric 741.56p, best_cost 763.85p, best_carbon 0kg, best_import 50.27kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 88%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:15:34.741994: Best export windows best_metric 741.56p, best_cost 763.85p, best_carbon 0kg, best_import 50.27kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:15:34.742388: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:34.819565: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:35.389165: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 741.56p, best_cost 763.85p, best_cycle 26.74kWh, best_carbon 0kg, best_import 50.27kWh 2026-08-14 07:15:35.932233: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 741.37p, best_cost 763.47p, best_cycle 25.74kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:15:37.040210: Best charge windows best_metric 741.37p, best_cost 763.47p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:15:37.040400: Best export windows best_metric 741.37p, best_cost 763.47p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:15:37.040559: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 741.37p, best_cost 763.47p, best_cycle 25.74kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:15:37.375752: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 741.37p, best_cost 763.47p, best_cycle 25.74kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:15:38.307030: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 741.37p, best_cost 763.47p, best_cycle 25.74kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:15:38.784758: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 741.37p, best_cost 763.47p, best_cycle 25.74kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:15:39.258210: Best charge windows best_metric 741.37p, best_cost 763.47p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:15:39.258483: Best export windows best_metric 741.37p, best_cost 763.47p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:15:39.259994: Best charge windows best_metric 741.37p, best_cost 763.47p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:15:39.260083: Best export windows best_metric 741.37p, best_cost 763.47p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:15:39.260294: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 741.37p, best_cost 763.47p, best_cycle 25.74kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:15:39.463633: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 741.37p, best_cost 763.47p, best_cycle 25.74kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:15:40.045880: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 741.37p, best_cost 763.47p, best_cycle 25.74kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:15:40.613306: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 741.37p, best_cost 763.47p, best_cycle 25.74kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:15:40.941476: Best charge windows best_metric 741.37p, best_cost 763.47p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:15:40.941676: Best export windows best_metric 741.37p, best_cost 763.47p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:15:40.941819: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 741.37p, best_cost 763.47p, best_cycle 25.74kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:15:40.993618: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 741.37p, best_cost 763.47p, best_cycle 25.74kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:15:42.065184: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 741.37p, best_cost 763.47p, best_cycle 25.74kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:15:42.263994: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 741.37p, best_cost 763.47p, best_cycle 25.74kWh, best_carbon 0kg, best_import 50.2kWh 2026-08-14 07:15:42.432177: Best charge windows best_metric 741.37p, best_cost 763.47p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:15:42.432511: Best export windows best_metric 741.37p, best_cost 763.47p, best_carbon 0kg, best_import 50.2kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:15:42.432848: Tweak plan optimisation started 2026-08-14 07:15:44.215363: Tweak optimisation finished metric 741.37 cost 763.47 metric_keep 0 cycle 25.74 carbon 0 import 50.2 2026-08-14 07:15:44.261395: Swap charge optimisation started metric 741.37p, cost 763.47p, min_improvement_swap 0.1p 2026-08-14 07:15:49.680651: Swap charge optimisation finished metric 741.37p, cost 763.47p 2026-08-14 07:15:49.700399: Raw charge windows [ 14-08 07:00:00 - 14-08 07:30:00 @ 28.02p 0%, 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] reserve 1.12 2026-08-14 07:15:49.701393: Unclipped charge windows [ 14-08 12:30:00 - 14-08 14:00:00 @ 21.89p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 07:30:00 @ 28.95p 100% ] reserve 1.12 2026-08-14 07:15:49.702112: Unfiltered charge windows [ 14-08 12:30:00 - 14-08 14:00:00 @ 21.89p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 07:30:00 @ 28.95p 100% ] reserve 1.12 2026-08-14 07:15:49.702851: Filtered charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 07:30:00 @ 28.95p 100% ] reserve 1.12 2026-08-14 07:15:49.760252: Previous plan best metric is 741.21 (cost 763.49) and new plan best metric is 741.37 (cost 763.47) 2026-08-14 07:15:49.760714: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 07:15:49.760923: Plan valid is now true after recompute was False 2026-08-14 07:15:49.800923: predict base end_record 08-15 12:30:00, final soc 1.12kWh, metric 904.7p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:55:00, load 29.44kWh, PV 0.0kWh 2026-08-14 07:15:50.009839: Battery has 1.67 hours left - now at 2.12kWh 2026-08-14 07:15:50.111223: predict base10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 934.19p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:50:00, load 30.48kWh, PV 0.0kWh 2026-08-14 07:15:50.318975: predict best10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 838.96p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:50:00, load 30.48kWh, PV 0.0kWh 2026-08-14 07:15:50.529886: predict best end_record 08-15 12:30:00, final soc 1.12kWh, metric 813.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:55:00, load 29.44kWh, PV 0.0kWh 2026-08-14 07:15:50.529996: Saving plan best values to HA entities 2026-08-14 07:15:50.818887: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 07:15:50.825917: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 07:15:50.832942: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.13kWh, house 6.02kWh, export 0.0kWh, metric 813.47p, metric10 838.96p 2026-08-14 07:15:50.918063: Marginal costs baseline metric (no standing charge): 763.4852 2026-08-14 07:15:51.303591: Marginal energy costs matrix computed: min=21.77 max=36.87 2026-08-14 07:15:51.409355: Rate array import [{'start': 435, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 28.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2190, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 435, 'end': 2190, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 07:15:51.410318: - Your estimated bill for today is £6.95 and tomorrow is £7.02 2026-08-14 07:15:51.410372: - Import rates are cheap (21.7p - 28.6p) for the next 8 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 07:15:51.410400: - The battery is currently at 13% and is in eco mode for the next 5 and a quarter hours. 2026-08-14 07:15:51.410434: - For the next 48 hours there will be no solar generation. 2026-08-14 07:15:51.410458: - You will run out of battery in 1 and three quarters hours. 2026-08-14 07:15:51.410491: - Your next charge slot will be in 5 and a quarter hours where import rates will be cheap (22.2p). 2026-08-14 07:15:51.410525: 2026-08-14 07:15:51.460081: Plan calculation took 45.19 seconds 2026-08-14 07:15:51.460591: Inverter 0: Type SK Sunsynk 2026-08-14 07:15:51.460835: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 07:15:51.461198: Reserve min: 7%, battery_min: 7% 2026-08-14 07:15:51.461351: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 07:15:51.462401: Inverter 0 SoC: 2.12kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power 239W, current battery voltage 51.2V, grid power -55W, load power 299W, PV Power 0W 2026-08-14 07:15:51.462579: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:15:51.462688: Inverter 0 scheduled charge enable is False 2026-08-14 07:15:51.462719: Inverter 0 charge windows currently [] 2026-08-14 07:15:51.462754: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 07:15:51.462868: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:15:51.462898: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:15:51.462933: Inverter 0 scheduled discharge enable is False 2026-08-14 07:15:51.463053: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:15:51.463087: Inverter 0 discharge windows currently [] 2026-08-14 07:15:51.463111: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:15:51.463155: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:15:51.463175: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:15:51.580715: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-14 07:15:51.581111: Inverter 0 disabled charge window while waiting for schedule (now 08-14 07:15:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 07:15:51.581313: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:15:51.581650: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:15:51.581870: No export window planned 2026-08-14 07:15:51.582119: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 07:15:51.582267: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:15:51.582564: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:15:51.582912: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 07:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 07:15:51.583091: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 07:15:51.583260: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 07:15:51.583468: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:15:51.583624: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:15:51.583792: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:15:51.583938: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:15:51.584079: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:15:51.584221: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:15:51.584365: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:15:51.584554: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:15:51.584724: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:15:51.584873: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:15:51.585050: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:15:51.585201: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:15:51.585345: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:15:51.585487: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:15:51.585618: Inverter 0 count register writes 0 2026-08-14 07:15:51.634806: Total inverter register writes now 806 2026-08-14 07:15:51.680310: Info: Completed run status Demand 2026-08-14 07:15:51.688221: Info: record_status Demand 2026-08-14 07:15:51.697466: Saved current settings to /config/predbat_config.json 2026-08-14 07:15:51.697827: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 07:16:06.308307: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0077 val_mae=0.0057 kWh val_bias=-0.0010 kWh (-1.2%) combined=0.0034 kWh ema_combined=0.0032 kWh 2026-08-14 07:16:23.830699: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:16:23.830988: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:16:23.831040: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:16:23.831206: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:16:23.831251: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:16:23.831277: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:16:23.831301: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:16:33.491499: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0069 val_mae=0.0047 kWh val_bias=-0.0002 kWh (-0.3%) combined=0.0024 kWh ema_combined=0.0030 kWh 2026-08-14 07:16:59.581838: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0078 val_mae=0.0046 kWh val_bias=-0.0011 kWh (-1.3%) combined=0.0027 kWh ema_combined=0.0029 kWh 2026-08-14 07:17:32.153591: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0072 val_mae=0.0046 kWh val_bias=-0.0005 kWh (-0.6%) combined=0.0024 kWh ema_combined=0.0027 kWh 2026-08-14 07:18:00.717728: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0069 val_mae=0.0044 kWh val_bias=-0.0006 kWh (-0.7%) combined=0.0024 kWh ema_combined=0.0026 kWh 2026-08-14 07:18:24.297491: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:18:24.297741: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:18:24.297803: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:18:24.297941: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:18:24.298062: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:18:24.298102: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:18:24.298122: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:18:26.787599: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0069 val_mae=0.0043 kWh val_bias=-0.0008 kWh (-0.9%) combined=0.0024 kWh ema_combined=0.0026 kWh 2026-08-14 07:18:55.693753: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0064 val_mae=0.0044 kWh val_bias=-0.0011 kWh (-1.3%) combined=0.0024 kWh ema_combined=0.0025 kWh 2026-08-14 07:19:24.647297: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0065 val_mae=0.0042 kWh val_bias=-0.0004 kWh (-0.5%) combined=0.0023 kWh ema_combined=0.0024 kWh 2026-08-14 07:19:50.347209: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0060 val_mae=0.0042 kWh val_bias=-0.0009 kWh (-1.1%) combined=0.0026 kWh ema_combined=0.0025 kWh 2026-08-14 07:19:50.347925: ML Predictor: Restored best weights from epoch with val_mae=0.0042 kWh val_bias=-0.0004 kWh (-0.5%) 2026-08-14 07:19:50.348042: ML Predictor: Training complete, final val_mae=0.0042 kWh val_bias=-0.0004 kWh (-0.5%) 2026-08-14 07:19:59.059345: ML Predictor: AR rollout over holdout: ar_mae=0.0044 kWh ar_bias=-0.0004 kWh (-0.5%) [drift vs teacher-forced: +0.0002 kWh] 2026-08-14 07:19:59.073752: ML Predictor: Curriculum training complete, final val_mae=0.0042 kWh 2026-08-14 07:19:59.097393: ML Component: Training successful, val_mae=0.0042 kWh 2026-08-14 07:19:59.217129: ML Predictor: Model saved to /config/predbat_ml_model.npz 2026-08-14 07:19:59.221579: ML Component: Generating predictions load data age 55.0 days, 16063 data points 2026-08-14 07:19:59.337920: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0482 max_dow {0: 0.11257187492717058, 1: 0.10418125026300548, 2: 0.1169125002540648, 3: 0.12682187521476299, 4: 0.15720625033210964, 5: 0.08722500015487894, 6: 0.1107156252272427} 2026-08-14 07:19:59.734388: ML Component: Generated 576 predictions (total 38.57 kWh over 48h) 2026-08-14 07:19:59.765754: ML Component: Prediction cycle completed 2026-08-14 07:19:59.877850: ML Component: Saved 16063 steps (55 days) of history to /config/predbat_ml_history.npz 2026-08-14 07:20:00.634146: --------------- PredBat - update at 2026-08-14 07:20:00+01:00 with clock skew 0 minutes, minutes now 440 2026-08-14 07:20:00.634918: Saved current settings to /config/predbat_config.json 2026-08-14 07:20:00.635064: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 114.9 minutes 2026-08-14 07:20:00.635149: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 07:20:00.635274: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 07:20:00.655808: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 07:20:00.655957: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 07:20:00.656549: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 07:20:00.656661: Predbat mode is set to Control charge & discharge 2026-08-14 07:20:00.855073: Found 21602 load_today datapoints going back 28 days 2026-08-14 07:20:00.855523: Using load_power data to fill gaps in load_today data 2026-08-14 07:20:01.716509: Processing 721 30-minute periods for power integration 2026-08-14 07:20:01.919008: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 07:20:01.919231: Car charging hold False, threshold 6.0kWh 2026-08-14 07:20:01.919288: Current data so far today: load 7.75kWh, import 8.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 07:20:01.930852: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 07:20:01.931567: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 07:20:01.931867: Standing charge is set to 49.98p 2026-08-14 07:20:01.964671: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 07:20:01.964775: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 07:20:01.964999: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 440.0 minutes 2026-08-14 07:20:01.965408: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 439.8 minutes 2026-08-14 07:20:01.968262: Loaded 47 datapoints of futurerate analysis 2026-08-14 07:20:02.068407: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 07:20:02.132848: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 07:20:02.138420: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 07:20:02.138750: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 07:20:02.178601: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 07:20:02.178799: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 07:20:02.180270: High export rate found rates in range 99p to -99p 2026-08-14 07:20:02.259409: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 07:20:02.259682: Car 0 charging is not planned as it is not plugged in 2026-08-14 07:20:02.282178: Battery level now 2.12kWh, -1hr ago 2.56kWh, at midnight 2.43kWh, battery value change in the last hour -10.26p, change today -7.27p, rate_forward 23.31p 2026-08-14 07:20:02.282596: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.5kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 07:20:02.358559: Today's energy total net 8.3kWh, import 8.3kWh, export 0.0kWh, cost 259.83p, import 209.85p, export 0.0p, carbon 0.0kg 2026-08-14 07:20:02.358695: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 07:20:02.433785: Using weighted-bucket historical load forecast over 14 days 2026-08-14 07:20:02.460919: Today's load divergence 114.65%, in-day adjustment 136.76%, damping 0.95x, yesterday 146.81% today 113.92% blend 69.44% 2026-08-14 07:20:02.462658: Today's predicted so far 2.68kWh with 0.0kWh car/iBoost excluded, 1.6kWh import ignored, and 4.28kWh forecast extra. 2026-08-14 07:20:02.462702: Today's actual load so far 4.82kWh with 0.0kWh car/iBoost excluded, and 2.93kWh import ignored. 2026-08-14 07:20:02.514975: Inverter 0: Type SK Sunsynk 2026-08-14 07:20:02.515057: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 07:20:02.515220: Reserve min: 7%, battery_min: 7% 2026-08-14 07:20:02.515273: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 07:20:02.515484: Inverter 0 SoC: 2.12kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power 274W, current battery voltage 51.2V, grid power -55W, load power 335W, PV Power 0W 2026-08-14 07:20:02.515622: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:20:02.515697: Inverter 0 scheduled charge enable is False 2026-08-14 07:20:02.515721: Inverter 0 charge windows currently [] 2026-08-14 07:20:02.515742: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 07:20:02.515841: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:20:02.515872: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:20:02.515902: Inverter 0 scheduled discharge enable is False 2026-08-14 07:20:02.516003: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:20:02.516033: Inverter 0 discharge windows currently [] 2026-08-14 07:20:02.516052: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:20:02.516066: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:20:02.516080: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:20:02.597579: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 07:20:02.597677: Plan was last updated on 2026-08-14 07:15:00+01:00 and is now 5.0 minutes old 2026-08-14 07:20:02.597912: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 07:20:02.597950: Best export window [ ] 2026-08-14 07:20:02.598597: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 07:20:02.601237: Load divergence over 8.0 hours mean 463.02W, min 235.2W, max 1260.6W, std dev 171.1W, divergence 18.48% 2026-08-14 07:20:02.616303: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 07:20:02.616863: LoadML is_calculating False 2026-08-14 07:20:02.616936: Creating pool of 12 processes to match your CPU count 2026-08-14 07:20:02.737094: predict base end_record 08-15 12:35:00, final soc 1.12kWh, metric 906.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:00:00, load 29.62kWh, PV 0.0kWh 2026-08-14 07:20:02.900795: Battery has 1.67 hours left - now at 2.12kWh 2026-08-14 07:20:02.944696: predict base10 end_record 08-15 12:35:00, final soc 1.12kWh, metric 936.22p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:55:00, load 30.66kWh, PV 0.0kWh 2026-08-14 07:20:03.020867: predict best10 end_record 08-15 12:35:00, final soc 1.44kWh, metric 848.52p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 08:55:00, load 30.66kWh, PV 0.0kWh 2026-08-14 07:20:03.105809: predict best end_record 08-15 12:35:00, final soc 1.51kWh, metric 824.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:00:00, load 29.62kWh, PV 0.0kWh 2026-08-14 07:20:03.106020: Saving plan best values to HA entities 2026-08-14 07:20:03.264628: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 07:20:03.269597: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 07:20:03.274994: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.22kWh, house 5.95kWh, export 0.0kWh, metric 824.62p, metric10 848.52p 2026-08-14 07:20:03.346457: Marginal costs baseline metric (no standing charge): 774.6329 2026-08-14 07:20:03.604147: Marginal energy costs matrix computed: min=21.76 max=37.21 2026-08-14 07:20:03.682845: Rate array import [{'start': 440, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 28.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2195, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 440, 'end': 2195, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 07:20:03.683430: - Your estimated bill for today is £6.94 and tomorrow is £7.03 2026-08-14 07:20:03.683468: - Import rates are cheap (21.7p - 28.6p) for the next 8 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 07:20:03.683487: - The battery is currently at 13% and is in eco mode for the next 5 and a quarter hours. 2026-08-14 07:20:03.683503: - For the next 48 hours there will be no solar generation. 2026-08-14 07:20:03.683517: - You will run out of battery in 1 and three quarters hours. 2026-08-14 07:20:03.683531: - Your next charge slot will be in 5 and a quarter hours where import rates will be cheap (22.2p). 2026-08-14 07:20:03.683545: 2026-08-14 07:20:03.740635: Plan calculation took 1.14 seconds 2026-08-14 07:20:03.743997: No high rate period found 2026-08-14 07:20:03.817573: Import threshold used for optimisation was 24.64p 2026-08-14 07:20:03.874542: Low import rate windows [0: 08-14 07:00:00 - 08-14 07:30:00 @ 28.02, 1: 08-14 07:30:00 - 08-14 08:00:00 @ 28.58, 2: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 3: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 4: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 5: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 6: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 7: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 8: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 9: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 10: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 11: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 12: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 13: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 14: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 15: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 16: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 17: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 18: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 19: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 20: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 21: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 22: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 23: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 24: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 25: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 26: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 27: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 28: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 29: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 30: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 31: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 32: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 33: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 34: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 35: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 36: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 37: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 38: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 39: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 40: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 41: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 42: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 43: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 44: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 45: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 46: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 47: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 48: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 49: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 50: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 51: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 52: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 53: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 54: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 55: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 56: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 57: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 58: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 59: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 60: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 61: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 62: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 63: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 64: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 65: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 66: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 67: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 68: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 69: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 70: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 71: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 72: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 73: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 74: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 75: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 76: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 77: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 78: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 79: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 80: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 81: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 82: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 83: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 84: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 85: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 86: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 87: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 88: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 89: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 90: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 91: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 92: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 93: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 94: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02] 2026-08-14 07:20:03.881227: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-14 07:20:03.881358: Inverter 0 disabled charge window while waiting for schedule (now 08-14 07:20:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 07:20:03.881498: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:20:03.881746: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:20:03.881864: No export window planned 2026-08-14 07:20:03.882008: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 07:20:03.882052: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:20:03.882192: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:20:03.882382: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 07:20:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 07:20:03.882441: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 07:20:03.882499: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 07:20:03.882601: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:20:03.882640: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:20:03.882673: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:20:03.882707: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:20:03.882733: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:20:03.882757: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:20:03.882789: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:20:03.882869: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:20:03.882909: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:20:03.882935: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:20:03.882965: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:20:03.882989: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:20:03.883018: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:20:03.883042: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:20:03.883068: Inverter 0 count register writes 0 2026-08-14 07:20:03.898564: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 07:20:03.915868: Total inverter register writes now 806 2026-08-14 07:20:03.949687: Info: Completed run status Demand 2026-08-14 07:20:03.955780: Info: record_status Demand 2026-08-14 07:20:03.962700: Saved current settings to /config/predbat_config.json 2026-08-14 07:20:03.963215: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 07:20:39.066502: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:20:39.066779: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:20:39.066867: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:20:39.067122: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:20:39.067201: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:20:39.067258: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:20:39.067283: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:22:39.288079: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:22:39.288344: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:22:39.288381: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:22:39.288560: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:22:39.288599: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:22:39.288620: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:22:39.288642: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:24:39.500892: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:24:39.501211: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:24:39.501263: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:24:39.501404: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:24:39.501482: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:24:39.501503: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:24:39.501525: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:24:49.603110: TemperatureAPI: Using coordinates latitude 53.4, longitude -2.2 2026-08-14 07:24:49.763084: TemperatureAPI: Successfully fetched temperature data from Open-Meteo API 2026-08-14 07:25:00.598108: --------------- PredBat - update at 2026-08-14 07:25:00+01:00 with clock skew 0 minutes, minutes now 445 2026-08-14 07:25:00.598854: Saved current settings to /config/predbat_config.json 2026-08-14 07:25:00.598973: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 119.9 minutes 2026-08-14 07:25:00.599038: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 07:25:00.599140: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 07:25:00.619466: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 07:25:00.619623: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 07:25:00.620244: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 07:25:00.620357: Predbat mode is set to Control charge & discharge 2026-08-14 07:25:00.813751: Found 21602 load_today datapoints going back 28 days 2026-08-14 07:25:00.813905: Using load_power data to fill gaps in load_today data 2026-08-14 07:25:01.679900: Processing 721 30-minute periods for power integration 2026-08-14 07:25:01.863762: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 07:25:01.864110: Car charging hold False, threshold 6.0kWh 2026-08-14 07:25:01.864199: Current data so far today: load 7.8kWh, import 8.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 07:25:01.878266: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 07:25:01.879055: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 07:25:01.879187: Standing charge is set to 49.98p 2026-08-14 07:25:01.906722: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 07:25:01.906814: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 07:25:01.907018: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 445.0 minutes 2026-08-14 07:25:01.907387: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 444.8 minutes 2026-08-14 07:25:01.910363: Loaded 47 datapoints of futurerate analysis 2026-08-14 07:25:01.997868: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 07:25:02.054484: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 07:25:02.059764: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 07:25:02.060245: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 07:25:02.103330: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 07:25:02.103846: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 07:25:02.105074: High export rate found rates in range 99p to -99p 2026-08-14 07:25:02.187613: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 07:25:02.187749: Car 0 charging is not planned as it is not plugged in 2026-08-14 07:25:02.202083: Battery level now 2.12kWh, -1hr ago 2.56kWh, at midnight 2.43kWh, battery value change in the last hour -10.26p, change today -7.27p, rate_forward 23.31p 2026-08-14 07:25:02.202456: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.5kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 07:25:02.255931: Today's energy total net 8.3kWh, import 8.3kWh, export 0.0kWh, cost 259.83p, import 209.85p, export 0.0p, carbon 0.0kg 2026-08-14 07:25:02.256074: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 07:25:02.334749: Using weighted-bucket historical load forecast over 14 days 2026-08-14 07:25:02.359968: Today's load divergence 115.0%, in-day adjustment 136.75%, damping 0.95x, yesterday 146.81% today 114.25% blend 69.1% 2026-08-14 07:25:02.360067: Today's predicted so far 2.71kWh with 0.0kWh car/iBoost excluded, 1.58kWh import ignored, and 4.29kWh forecast extra. 2026-08-14 07:25:02.360100: Today's actual load so far 4.91kWh with 0.0kWh car/iBoost excluded, and 2.84kWh import ignored. 2026-08-14 07:25:02.396075: Inverter 0: Type SK Sunsynk 2026-08-14 07:25:02.396237: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 07:25:02.396600: Reserve min: 7%, battery_min: 7% 2026-08-14 07:25:02.396812: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 07:25:02.397132: Inverter 0 SoC: 2.08kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power 221W, current battery voltage 51.2V, grid power -55W, load power 283W, PV Power 0W 2026-08-14 07:25:02.397305: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:25:02.397415: Inverter 0 scheduled charge enable is False 2026-08-14 07:25:02.397450: Inverter 0 charge windows currently [] 2026-08-14 07:25:02.397477: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 07:25:02.397602: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:25:02.397639: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:25:02.397675: Inverter 0 scheduled discharge enable is False 2026-08-14 07:25:02.397801: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:25:02.397837: Inverter 0 discharge windows currently [] 2026-08-14 07:25:02.397860: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:25:02.397882: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:25:02.397899: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:25:02.451997: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 07:25:02.452091: Plan was last updated on 2026-08-14 07:15:00+01:00 and is now 10.0 minutes old 2026-08-14 07:25:02.452394: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 07:25:02.452438: Best export window [ ] 2026-08-14 07:25:02.453132: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 07:25:02.455669: Load divergence over 8.0 hours mean 462.85W, min 250.2W, max 1439.4W, std dev 192.61W, divergence 20.81% 2026-08-14 07:25:02.466307: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 07:25:02.466388: LoadML is_calculating False 2026-08-14 07:25:02.466443: Creating pool of 12 processes to match your CPU count 2026-08-14 07:25:02.576691: predict base end_record 08-15 12:40:00, final soc 1.12kWh, metric 908.13p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:00:00, load 29.7kWh, PV 0.0kWh 2026-08-14 07:25:02.689584: Battery has 1.58 hours left - now at 2.08kWh 2026-08-14 07:25:02.727647: predict base10 end_record 08-15 12:40:00, final soc 1.12kWh, metric 937.64p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:00:00, load 30.74kWh, PV 0.0kWh 2026-08-14 07:25:02.797937: predict best10 end_record 08-15 12:40:00, final soc 1.77kWh, metric 857.66p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:00:00, load 30.74kWh, PV 0.0kWh 2026-08-14 07:25:02.882197: predict best end_record 08-15 12:40:00, final soc 1.9kWh, metric 835.26p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:00:00, load 29.7kWh, PV 0.0kWh 2026-08-14 07:25:02.882300: Saving plan best values to HA entities 2026-08-14 07:25:03.046860: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 07:25:03.051889: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 07:25:03.056772: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.23kWh, house 5.95kWh, export 0.0kWh, metric 835.26p, metric10 857.66p 2026-08-14 07:25:03.120073: Marginal costs baseline metric (no standing charge): 785.2767 2026-08-14 07:25:03.342346: Marginal energy costs matrix computed: min=21.75 max=37.48 2026-08-14 07:25:03.426316: Rate array import [{'start': 445, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 28.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2200, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 445, 'end': 2200, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 07:25:03.426941: - Your estimated bill for today is £6.94 and tomorrow is £7.03 2026-08-14 07:25:03.426980: - Import rates are cheap (21.7p - 28.6p) for the next 8 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 07:25:03.426999: - The battery is currently at 13% and is in eco mode for the next 5 hours. 2026-08-14 07:25:03.427014: - For the next 48 hours there will be no solar generation. 2026-08-14 07:25:03.427028: - You will run out of battery in 1 and a half hours. 2026-08-14 07:25:03.427041: - Your next charge slot will be in 5 hours where import rates will be cheap (22.2p). 2026-08-14 07:25:03.427055: 2026-08-14 07:25:03.477028: Plan calculation took 1.02 seconds 2026-08-14 07:25:03.479736: No high rate period found 2026-08-14 07:25:03.530090: Import threshold used for optimisation was 24.64p 2026-08-14 07:25:03.577038: Low import rate windows [0: 08-14 07:00:00 - 08-14 07:30:00 @ 28.02, 1: 08-14 07:30:00 - 08-14 08:00:00 @ 28.58, 2: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 3: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 4: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 5: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 6: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 7: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 8: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 9: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 10: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 11: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 12: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 13: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 14: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 15: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 16: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 17: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 18: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 19: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 20: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 21: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 22: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 23: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 24: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 25: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 26: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 27: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 28: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 29: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 30: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 31: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 32: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 33: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 34: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 35: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 36: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 37: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 38: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 39: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 40: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 41: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 42: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 43: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 44: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 45: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 46: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 47: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 48: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 49: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 50: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 51: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 52: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 53: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 54: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 55: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 56: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 57: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 58: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 59: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 60: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 61: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 62: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 63: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 64: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 65: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 66: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 67: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 68: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 69: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 70: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 71: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 72: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 73: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 74: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 75: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 76: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 77: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 78: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 79: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 80: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 81: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 82: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 83: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 84: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 85: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 86: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 87: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 88: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 89: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 90: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 91: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 92: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 93: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 94: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02] 2026-08-14 07:25:03.583334: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-14 07:25:03.583442: Inverter 0 disabled charge window while waiting for schedule (now 08-14 07:25:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 07:25:03.583557: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:25:03.583766: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:25:03.583853: No export window planned 2026-08-14 07:25:03.583960: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 07:25:03.583994: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:25:03.584103: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:25:03.584262: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 07:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 07:25:03.584312: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 07:25:03.584365: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 07:25:03.584454: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:25:03.584490: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:25:03.584526: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:25:03.584554: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:25:03.584593: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:25:03.584613: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:25:03.584632: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:25:03.584688: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:25:03.584712: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:25:03.584732: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:25:03.584751: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:25:03.584797: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:25:03.584819: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:25:03.584840: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:25:03.584856: Inverter 0 count register writes 0 2026-08-14 07:25:03.599790: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 07:25:03.599961: Recompute is saving previous plan... 2026-08-14 07:25:03.602551: Best charge window [ 14-08 07:00:00 - 14-08 07:30:00 @ 28.02p 0%, 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 0% ] 2026-08-14 07:25:03.602621: Best export window [ ] 2026-08-14 07:25:03.603248: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 07:25:03.605834: Load divergence over 8.0 hours mean 462.85W, min 250.2W, max 1439.4W, std dev 192.61W, divergence 20.81% 2026-08-14 07:25:03.616111: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 07:25:03.616227: LoadML is_calculating False 2026-08-14 07:25:03.616289: Creating pool of 12 processes to match your CPU count 2026-08-14 07:25:03.696627: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 07:25:03.698317: Optimise levels pass started at 2026-08-14 07:25:03 2026-08-14 07:25:03.698376: Optimise all windows, total charge 94 export 1 2026-08-14 07:25:03.991137: >> Region optimisation pass width 960 2026-08-14 07:25:04.371678: >> Region optimisation pass width 480 2026-08-14 07:25:04.771576: >> Region optimisation pass width 240 2026-08-14 07:25:05.305967: >> Region optimisation pass width 120 2026-08-14 07:25:06.665666: Calculated end_record as 08-15 12:30:00 based on best_price 22.25p, next_charge_start 08-14 12:30:00, max_windows 58 2026-08-14 07:25:06.665851: Optimise levels pass ended at 2026-08-14 07:25:06, duration 3.0 seconds tried 338 combinations 2026-08-14 07:25:06.665929: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1031.64p, best_keep 0kWh, best_cycle 49.12kWh, best_carbon 0kg, best_import 38.37kWh 2026-08-14 07:25:06.687671: Starting detailed optimisation end_record 08-15 12:30:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 13.75, 13.75, 13.75, 13.75, 13.75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 07:25:06.689524: Best charge windows best_metric 742.07p, best_cost 764.18p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 86%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 86%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 86%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 86%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:25:06.689649: Best export windows best_metric 742.07p, best_cost 764.18p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:25:06.689793: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 742.07p, best_cost 764.18p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:06.778570: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 741.91p, best_cost 763.99p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:06.878374: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 741.91p, best_cost 763.99p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:07.017904: Best charge windows best_metric 741.91p, best_cost 763.99p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 86%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 86%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 86%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:25:07.018199: Best export windows best_metric 741.91p, best_cost 763.99p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:25:07.019652: Best charge windows best_metric 741.91p, best_cost 763.99p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 86%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 86%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 86%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:25:07.019900: Best export windows best_metric 741.91p, best_cost 763.99p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:25:07.020070: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 741.91p, best_cost 763.99p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:07.225894: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 741.91p, best_cost 763.99p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:07.312261: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 741.91p, best_cost 763.99p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:07.460816: Best charge windows best_metric 741.91p, best_cost 763.99p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 86%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 86%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:25:07.461039: Best export windows best_metric 741.91p, best_cost 763.99p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:25:07.462674: Best charge windows best_metric 741.91p, best_cost 763.99p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 86%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 86%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:25:07.462841: Best export windows best_metric 741.91p, best_cost 763.99p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:25:07.463077: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 741.91p, best_cost 763.99p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:07.541347: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 741.91p, best_cost 763.99p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:07.634880: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 741.91p, best_cost 763.99p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:07.756062: Best charge windows best_metric 741.91p, best_cost 763.99p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 86%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 86%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:25:07.756218: Best export windows best_metric 741.91p, best_cost 763.99p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:25:07.756481: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 741.91p, best_cost 763.99p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:07.916133: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 741.91p, best_cost 763.99p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:07.999961: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 741.91p, best_cost 763.99p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:08.215349: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 741.91p, best_cost 763.99p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:08.283742: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 741.91p, best_cost 763.99p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:08.348802: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 741.91p, best_cost 763.99p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:08.418643: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 741.91p, best_cost 763.99p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:08.480396: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 741.91p, best_cost 763.99p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:08.590945: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 741.8p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:08.819660: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:08.855260: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:08.892084: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:08.934062: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:08.968189: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.004513: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.109713: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.170893: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.239789: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.287102: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.333098: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.376867: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.426138: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.471408: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.510846: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.544512: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.578970: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.621530: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.655657: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.687343: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.726272: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.769471: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.807114: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.847886: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.889946: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.923887: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:09.969156: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:10.016685: Best charge windows best_metric 741.73p, best_cost 764.04p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 86%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 86%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:25:10.016980: Best export windows best_metric 741.73p, best_cost 764.04p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:25:10.018483: Best charge windows best_metric 741.73p, best_cost 764.04p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 86%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 86%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 86%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:25:10.018622: Best export windows best_metric 741.73p, best_cost 764.04p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:25:10.018726: Optimise price set 26.6p, pass trim_import, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:10.063478: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:10.108923: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:10.189485: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 741.73p, best_cost 764.04p, best_cycle 26.2kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:25:10.291595: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 741.49p, best_cost 763.55p, best_cycle 24.72kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 07:25:10.452578: Best charge windows best_metric 741.49p, best_cost 763.55p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 86%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 86%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:25:10.452756: Best export windows best_metric 741.49p, best_cost 763.55p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:25:10.452974: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 741.49p, best_cost 763.55p, best_cycle 24.72kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 07:25:10.500849: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 741.49p, best_cost 763.55p, best_cycle 24.72kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 07:25:10.541920: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 741.49p, best_cost 763.55p, best_cycle 24.72kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 07:25:10.775232: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 741.49p, best_cost 763.55p, best_cycle 24.72kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 07:25:10.875540: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 741.49p, best_cost 763.55p, best_cycle 24.72kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 07:25:11.021315: Best charge windows best_metric 741.49p, best_cost 763.55p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 86%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:25:11.021674: Best export windows best_metric 741.49p, best_cost 763.55p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:25:11.023355: Best charge windows best_metric 741.49p, best_cost 763.55p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 86%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:25:11.023597: Best export windows best_metric 741.49p, best_cost 763.55p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:25:11.023725: Optimise price set 26.6p, pass trim_import, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 741.49p, best_cost 763.55p, best_cycle 24.72kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 07:25:11.062448: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 741.49p, best_cost 763.55p, best_cycle 24.72kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 07:25:11.100110: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 741.49p, best_cost 763.55p, best_cycle 24.72kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 07:25:11.182249: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 741.49p, best_cost 763.55p, best_cycle 24.72kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 07:25:11.269058: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 741.49p, best_cost 763.55p, best_cycle 24.72kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 07:25:11.397416: Best charge windows best_metric 741.49p, best_cost 763.55p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 86%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:25:11.397775: Best export windows best_metric 741.49p, best_cost 763.55p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:25:11.397933: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 741.49p, best_cost 763.55p, best_cycle 24.72kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 07:25:11.430265: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 741.49p, best_cost 763.55p, best_cycle 24.72kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 07:25:11.468075: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 741.49p, best_cost 763.55p, best_cycle 24.72kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 07:25:11.671920: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 741.49p, best_cost 763.55p, best_cycle 24.72kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 07:25:11.769898: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 741.49p, best_cost 763.55p, best_cycle 24.72kWh, best_carbon 0kg, best_import 50.22kWh 2026-08-14 07:25:11.899464: Best charge windows best_metric 741.49p, best_cost 763.55p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 86%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] 2026-08-14 07:25:11.899732: Best export windows best_metric 741.49p, best_cost 763.55p, best_carbon 0kg, best_import 50.22kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:25:11.900032: Tweak plan optimisation started 2026-08-14 07:25:12.217388: Tweak optimisation finished metric 741.49 cost 763.55 metric_keep 0 cycle 24.72 carbon 0 import 50.22 2026-08-14 07:25:12.237539: Swap charge optimisation started metric 741.49p, cost 763.55p, min_improvement_swap 0.1p 2026-08-14 07:25:16.840143: Swap charge optimisation finished metric 741.49p, cost 763.55p 2026-08-14 07:25:16.858561: Raw charge windows [ 14-08 07:00:00 - 14-08 07:30:00 @ 28.02p 0%, 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 86%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100% ] reserve 1.12 2026-08-14 07:25:16.859307: Unclipped charge windows [ 14-08 12:30:00 - 14-08 14:00:00 @ 21.89p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 86%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 07:30:00 @ 28.95p 100% ] reserve 1.12 2026-08-14 07:25:16.859656: Unfiltered charge windows [ 14-08 12:30:00 - 14-08 14:00:00 @ 21.89p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 07:30:00 @ 28.95p 100% ] reserve 1.12 2026-08-14 07:25:16.859876: Filtered charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 07:30:00 @ 28.95p 100% ] reserve 1.12 2026-08-14 07:25:16.905920: Previous plan best metric is 741.57 (cost 763.87) and new plan best metric is 741.49 (cost 763.55) 2026-08-14 07:25:16.906208: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 07:25:16.906424: Plan valid is now true after recompute was False 2026-08-14 07:25:16.935042: predict base end_record 08-15 12:30:00, final soc 1.12kWh, metric 905.22p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:00:00, load 29.57kWh, PV 0.0kWh 2026-08-14 07:25:17.054917: Battery has 1.58 hours left - now at 2.08kWh 2026-08-14 07:25:17.100562: predict base10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 934.59p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:00:00, load 30.61kWh, PV 0.0kWh 2026-08-14 07:25:17.179339: predict best10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 839.21p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:00:00, load 30.61kWh, PV 0.0kWh 2026-08-14 07:25:17.267742: predict best end_record 08-15 12:30:00, final soc 1.12kWh, metric 813.86p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:00:00, load 29.57kWh, PV 0.0kWh 2026-08-14 07:25:17.267831: Saving plan best values to HA entities 2026-08-14 07:25:17.436309: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 07:25:17.443034: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 07:25:17.449503: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.23kWh, house 5.95kWh, export 0.0kWh, metric 813.86p, metric10 839.21p 2026-08-14 07:25:17.525728: Marginal costs baseline metric (no standing charge): 763.8749 2026-08-14 07:25:17.809261: Marginal energy costs matrix computed: min=21.75 max=37.48 2026-08-14 07:25:17.892343: Rate array import [{'start': 445, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 28.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2190, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 445, 'end': 2190, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 07:25:17.893079: - Your estimated bill for today is £6.94 and tomorrow is £7.03 2026-08-14 07:25:17.893129: - Import rates are cheap (21.7p - 28.6p) for the next 8 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 07:25:17.893152: - The battery is currently at 13% and is in eco mode for the next 5 hours. 2026-08-14 07:25:17.893170: - For the next 48 hours there will be no solar generation. 2026-08-14 07:25:17.893187: - You will run out of battery in 1 and a half hours. 2026-08-14 07:25:17.893203: - Your next charge slot will be in 5 hours where import rates will be cheap (22.2p). 2026-08-14 07:25:17.893220: 2026-08-14 07:25:17.942596: Plan calculation took 14.34 seconds 2026-08-14 07:25:17.942937: Inverter 0: Type SK Sunsynk 2026-08-14 07:25:17.942977: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 07:25:17.943224: Reserve min: 7%, battery_min: 7% 2026-08-14 07:25:17.943286: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 07:25:17.943622: Inverter 0 SoC: 2.08kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power 233W, current battery voltage 51.2V, grid power -56W, load power 296W, PV Power 0W 2026-08-14 07:25:17.943819: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:25:17.943906: Inverter 0 scheduled charge enable is False 2026-08-14 07:25:17.943959: Inverter 0 charge windows currently [] 2026-08-14 07:25:17.943988: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 07:25:17.944088: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:25:17.944117: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:25:17.944147: Inverter 0 scheduled discharge enable is False 2026-08-14 07:25:17.944251: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:25:17.944281: Inverter 0 discharge windows currently [] 2026-08-14 07:25:17.944303: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:25:17.944319: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:25:17.944339: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:25:17.990406: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-14 07:25:17.990552: Inverter 0 disabled charge window while waiting for schedule (now 08-14 07:25:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 07:25:17.990615: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:25:17.990806: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:25:17.990971: No export window planned 2026-08-14 07:25:17.991087: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 07:25:17.991123: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:25:17.991272: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:25:17.991456: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 07:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 07:25:17.991520: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 07:25:17.991605: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 07:25:17.991688: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:25:17.991722: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:25:17.992002: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:25:17.992046: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:25:17.992069: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:25:17.992093: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:25:17.992113: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:25:17.992172: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:25:17.992203: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:25:17.992245: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:25:17.992282: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:25:17.992319: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:25:17.992354: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:25:17.992409: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:25:17.992447: Inverter 0 count register writes 0 2026-08-14 07:25:18.010530: Total inverter register writes now 806 2026-08-14 07:25:18.038842: Info: Completed run status Demand 2026-08-14 07:25:18.044937: Info: record_status Demand 2026-08-14 07:25:18.050996: Saved current settings to /config/predbat_config.json 2026-08-14 07:25:18.051334: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 07:25:54.153663: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:25:54.153900: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:25:54.153970: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:25:54.154132: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:25:54.154172: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:25:54.154194: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:25:54.154211: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:27:54.372038: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:27:54.372484: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:27:54.372538: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:27:54.372742: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:27:54.372788: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:27:54.372810: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:27:54.372849: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:29:54.593654: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:29:54.593950: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:29:54.593989: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:29:54.594157: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:29:54.594248: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:29:54.594272: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:29:54.594290: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:30:00.679109: --------------- PredBat - update at 2026-08-14 07:30:00+01:00 with clock skew 0 minutes, minutes now 450 2026-08-14 07:30:00.680045: Saved current settings to /config/predbat_config.json 2026-08-14 07:30:00.940298: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 07:30:00.940413: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 07:30:00.959218: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 07:30:00.959367: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 07:30:00.959993: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 07:30:00.960112: Predbat mode is set to Control charge & discharge 2026-08-14 07:30:01.161251: Found 21602 load_today datapoints going back 28 days 2026-08-14 07:30:01.161403: Using load_power data to fill gaps in load_today data 2026-08-14 07:30:01.946141: Processing 721 30-minute periods for power integration 2026-08-14 07:30:02.105924: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 07:30:02.106048: Car charging hold False, threshold 6.0kWh 2026-08-14 07:30:02.106089: Current data so far today: load 7.7kWh, import 8.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 07:30:02.117983: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 07:30:02.118669: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 07:30:02.118741: Standing charge is set to 49.98p 2026-08-14 07:30:02.140667: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 07:30:02.140782: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 07:30:02.141092: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 450.0 minutes 2026-08-14 07:30:02.141560: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 449.8 minutes 2026-08-14 07:30:02.144496: Loaded 47 datapoints of futurerate analysis 2026-08-14 07:30:02.229971: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 07:30:02.288198: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 07:30:02.293624: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 07:30:02.294122: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 07:30:02.334897: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 07:30:02.335032: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 07:30:02.336249: High export rate found rates in range 99p to -99p 2026-08-14 07:30:02.420272: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 07:30:02.420417: Car 0 charging is not planned as it is not plugged in 2026-08-14 07:30:02.433899: Battery level now 2.08kWh, -1hr ago 2.56kWh, at midnight 2.43kWh, battery value change in the last hour -11.19p, change today -8.2p, rate_forward 23.31p 2026-08-14 07:30:02.434516: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.35kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 07:30:02.502640: Today's energy total net 8.3kWh, import 8.3kWh, export 0.0kWh, cost 259.83p, import 209.85p, export 0.0p, carbon 0.0kg 2026-08-14 07:30:02.502820: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 07:30:02.583909: Using weighted-bucket historical load forecast over 14 days 2026-08-14 07:30:02.610382: Today's load divergence 113.69%, in-day adjustment 136.25%, damping 0.95x, yesterday 146.81% today 113.01% blend 68.75% 2026-08-14 07:30:02.610484: Today's predicted so far 2.96kWh with 0.0kWh car/iBoost excluded, 1.42kWh import ignored, and 4.38kWh forecast extra. 2026-08-14 07:30:02.610516: Today's actual load so far 4.97kWh with 0.0kWh car/iBoost excluded, and 2.81kWh import ignored. 2026-08-14 07:30:02.649529: Inverter 0: Type SK Sunsynk 2026-08-14 07:30:02.649645: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 07:30:02.649934: Reserve min: 7%, battery_min: 7% 2026-08-14 07:30:02.650054: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 07:30:02.650536: Inverter 0 SoC: 2.08kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power 276W, current battery voltage 51.2V, grid power -55W, load power 338W, PV Power 0W 2026-08-14 07:30:02.650798: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:30:02.650939: Inverter 0 scheduled charge enable is False 2026-08-14 07:30:02.651028: Inverter 0 charge windows currently [] 2026-08-14 07:30:02.651082: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 07:30:02.651303: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:30:02.651367: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:30:02.651439: Inverter 0 scheduled discharge enable is False 2026-08-14 07:30:02.651665: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:30:02.651725: Inverter 0 discharge windows currently [] 2026-08-14 07:30:02.651772: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:30:02.651817: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:30:02.651852: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:30:02.713654: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 07:30:02.713764: Plan was last updated on 2026-08-14 07:25:00+01:00 and is now 5.0 minutes old 2026-08-14 07:30:02.714036: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 07:30:02.714079: Best export window [ ] 2026-08-14 07:30:02.714906: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 07:30:02.718090: Load divergence over 8.0 hours mean 462.8W, min 249.0W, max 1403.4W, std dev 183.89W, divergence 19.87% 2026-08-14 07:30:02.732571: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 07:30:02.732703: LoadML is_calculating False 2026-08-14 07:30:02.732771: Creating pool of 12 processes to match your CPU count 2026-08-14 07:30:02.866612: predict base end_record 08-15 12:35:00, final soc 1.12kWh, metric 903.14p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:05:00, load 29.41kWh, PV 0.0kWh 2026-08-14 07:30:03.020740: Battery has 1.58 hours left - now at 2.08kWh 2026-08-14 07:30:03.068639: predict base10 end_record 08-15 12:35:00, final soc 1.12kWh, metric 932.4p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:05:00, load 30.44kWh, PV 0.0kWh 2026-08-14 07:30:03.155404: predict best10 end_record 08-15 12:35:00, final soc 1.44kWh, metric 845.24p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:05:00, load 30.44kWh, PV 0.0kWh 2026-08-14 07:30:03.256859: predict best end_record 08-15 12:35:00, final soc 1.51kWh, metric 821.5p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:05:00, load 29.41kWh, PV 0.0kWh 2026-08-14 07:30:03.256980: Saving plan best values to HA entities 2026-08-14 07:30:03.459871: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 07:30:03.466721: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 07:30:03.473196: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.14kWh, house 5.91kWh, export 0.0kWh, metric 821.5p, metric10 845.24p 2026-08-14 07:30:03.550315: Marginal costs baseline metric (no standing charge): 771.5121 2026-08-14 07:30:03.830805: Marginal energy costs matrix computed: min=21.73 max=37.81 2026-08-14 07:30:03.916090: Rate array import [{'start': 450, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 28.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2195, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 450, 'end': 2195, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 07:30:03.916812: - Your estimated bill for today is £6.92 and tomorrow is £7.00 2026-08-14 07:30:03.916858: - Import rates are cheap (21.7p - 28.6p) for the next 8 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 07:30:03.916880: - The battery is currently at 13% and is in eco mode for the next 5 hours. 2026-08-14 07:30:03.916899: - For the next 48 hours there will be no solar generation. 2026-08-14 07:30:03.916916: - You will run out of battery in 1 and a half hours. 2026-08-14 07:30:03.916934: - Your next charge slot will be in 5 hours where import rates will be cheap (22.2p). 2026-08-14 07:30:03.916974: 2026-08-14 07:30:03.978847: Plan calculation took 1.26 seconds 2026-08-14 07:30:03.982395: No high rate period found 2026-08-14 07:30:04.044974: Import threshold used for optimisation was 24.8p 2026-08-14 07:30:04.106672: Low import rate windows [0: 08-14 07:30:00 - 08-14 08:00:00 @ 28.58, 1: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 2: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 3: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 4: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 5: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 6: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 7: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 8: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 9: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 10: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 11: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 12: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 13: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 14: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 15: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 16: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 17: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 18: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 19: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 20: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 21: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 22: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 23: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 24: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 25: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 26: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 27: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 28: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 29: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 30: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 31: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 32: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 33: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 34: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 35: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 36: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 37: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 38: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 39: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 40: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 41: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 42: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 43: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 44: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 45: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 46: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 47: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 48: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 49: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 50: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 51: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 52: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 53: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 54: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 55: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 56: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 57: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 58: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 59: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 60: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 61: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 62: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 63: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 64: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 65: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 66: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 67: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 68: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 69: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 70: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 71: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 72: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 73: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 74: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 75: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 76: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 77: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 78: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 79: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 80: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 81: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 82: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 83: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 84: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 85: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 86: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 87: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 88: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 89: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 90: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 91: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 92: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 93: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02] 2026-08-14 07:30:04.117363: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-14 07:30:04.117592: Inverter 0 disabled charge window while waiting for schedule (now 08-14 07:30:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 07:30:04.117737: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:30:04.117993: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:30:04.118099: No export window planned 2026-08-14 07:30:04.118243: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 07:30:04.118288: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:30:04.118428: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:30:04.118620: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 07:30:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 07:30:04.118679: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 07:30:04.118738: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 07:30:04.118837: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:30:04.118871: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:30:04.118902: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:30:04.118927: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:30:04.118954: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:30:04.118978: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:30:04.119002: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:30:04.119065: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:30:04.119101: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:30:04.119127: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:30:04.119155: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:30:04.119261: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:30:04.119331: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:30:04.119392: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:30:04.119434: Inverter 0 count register writes 0 2026-08-14 07:30:04.139754: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 07:30:04.146963: Total inverter register writes now 806 2026-08-14 07:30:04.186403: Info: Completed run status Demand 2026-08-14 07:30:04.193140: Info: record_status Demand 2026-08-14 07:30:04.200519: Saved current settings to /config/predbat_config.json 2026-08-14 07:30:04.200927: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 07:30:39.320738: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:30:39.321030: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:30:39.321086: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:30:39.321288: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:30:39.321374: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:30:39.321427: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:30:39.321452: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:32:39.561084: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:32:39.561378: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:32:39.561421: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:32:39.561557: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:32:39.561595: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:32:39.561616: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:32:39.561633: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:34:00.677722: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 07:34:01.613672: Processing 1345 30-minute periods for power integration 2026-08-14 07:34:01.713364: ML Component: Car charging hold False, car energy reported load False 2026-08-14 07:34:01.806501: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 07:34:01.893135: ML Temperature data points: 49951 2026-08-14 07:34:02.137048: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 07:34:02.179533: ML Component: Data fetch completed, load data age 55.0 days, 16072 data points 2026-08-14 07:34:02.179664: ML Component: No training needed, model age is 0.17 hours 2026-08-14 07:34:02.179754: ML Component: Generating predictions load data age 55.0 days, 16072 data points 2026-08-14 07:34:02.301083: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0207 max_dow {0: 0.10909062506761402, 1: 0.09740000026300549, 2: 0.11353750061187895, 3: 0.11734375001909211, 4: 0.16123125033210967, 5: 0.09046249974276871, 6: 0.1105406252272427} 2026-08-14 07:34:10.838575: ML Component: Generated 576 predictions (total 38.56 kWh over 48h) 2026-08-14 07:34:10.897549: ML Component: Prediction cycle completed 2026-08-14 07:34:11.020033: ML Component: Saved 16072 steps (55 days) of history to /config/predbat_ml_history.npz 2026-08-14 07:34:54.260858: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:34:54.261200: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:34:54.261289: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:34:54.261459: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:34:54.261497: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:34:54.261515: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:34:54.261529: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:35:00.338063: --------------- PredBat - update at 2026-08-14 07:35:00+01:00 with clock skew 0 minutes, minutes now 455 2026-08-14 07:35:00.338777: Saved current settings to /config/predbat_config.json 2026-08-14 07:35:00.338905: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 5.0 minutes 2026-08-14 07:35:00.339016: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 07:35:00.339131: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 07:35:00.360342: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 07:35:00.360481: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 07:35:00.361247: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 07:35:00.361459: Predbat mode is set to Control charge & discharge 2026-08-14 07:35:00.550053: Found 21602 load_today datapoints going back 28 days 2026-08-14 07:35:00.550211: Using load_power data to fill gaps in load_today data 2026-08-14 07:35:01.392130: Processing 721 30-minute periods for power integration 2026-08-14 07:35:01.586191: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 07:35:01.586340: Car charging hold False, threshold 6.0kWh 2026-08-14 07:35:01.586389: Current data so far today: load 7.7kWh, import 8.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 07:35:01.601038: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 07:35:01.601853: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 07:35:01.601938: Standing charge is set to 49.98p 2026-08-14 07:35:01.628186: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 07:35:01.628295: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 07:35:01.628493: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 455.0 minutes 2026-08-14 07:35:01.628924: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 454.8 minutes 2026-08-14 07:35:01.632402: Loaded 47 datapoints of futurerate analysis 2026-08-14 07:35:01.703079: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 07:35:01.748167: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 07:35:01.752524: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 07:35:01.752822: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 07:35:01.784620: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 07:35:01.784721: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 07:35:01.785753: High export rate found rates in range 99p to -99p 2026-08-14 07:35:01.854764: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 07:35:01.854908: Car 0 charging is not planned as it is not plugged in 2026-08-14 07:35:01.868405: Battery level now 2.08kWh, -1hr ago 2.4kWh, at midnight 2.43kWh, battery value change in the last hour -7.46p, change today -8.2p, rate_forward 23.31p 2026-08-14 07:35:01.868825: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.3kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 07:35:01.918476: Today's energy total net 8.3kWh, import 8.3kWh, export 0.0kWh, cost 259.83p, import 209.85p, export 0.0p, carbon 0.0kg 2026-08-14 07:35:01.918606: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 07:35:01.982940: Using weighted-bucket historical load forecast over 14 days 2026-08-14 07:35:02.004516: Today's load divergence 113.17%, in-day adjustment 135.97%, damping 0.95x, yesterday 146.81% today 112.51% blend 68.4% 2026-08-14 07:35:02.004620: Today's predicted so far 3.02kWh with 0.0kWh car/iBoost excluded, 1.43kWh import ignored, and 4.45kWh forecast extra. 2026-08-14 07:35:02.004652: Today's actual load so far 4.93kWh with 0.0kWh car/iBoost excluded, and 2.94kWh import ignored. 2026-08-14 07:35:02.040027: Inverter 0: Type SK Sunsynk 2026-08-14 07:35:02.040130: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 07:35:02.040328: Reserve min: 7%, battery_min: 7% 2026-08-14 07:35:02.040402: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 07:35:02.040735: Inverter 0 SoC: 2.08kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power 275W, current battery voltage 51.2V, grid power -54W, load power 335W, PV Power 0W 2026-08-14 07:35:02.040906: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:35:02.041069: Inverter 0 scheduled charge enable is False 2026-08-14 07:35:02.041129: Inverter 0 charge windows currently [] 2026-08-14 07:35:02.041159: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 07:35:02.041292: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:35:02.041350: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:35:02.041415: Inverter 0 scheduled discharge enable is False 2026-08-14 07:35:02.041650: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:35:02.041727: Inverter 0 discharge windows currently [] 2026-08-14 07:35:02.041754: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:35:02.041773: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:35:02.041795: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:35:02.105686: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 07:35:02.105794: Plan was last updated on 2026-08-14 07:25:00+01:00 and is now 10.0 minutes old 2026-08-14 07:35:02.106071: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 07:35:02.106155: Best export window [ ] 2026-08-14 07:35:02.106970: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 07:35:02.110230: Load divergence over 8.0 hours mean 462.55W, min 230.4W, max 1260.0W, std dev 180.58W, divergence 19.52% 2026-08-14 07:35:02.122599: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 07:35:02.122698: LoadML is_calculating False 2026-08-14 07:35:02.122757: Creating pool of 12 processes to match your CPU count 2026-08-14 07:35:02.230531: predict base end_record 08-15 12:40:00, final soc 1.12kWh, metric 902.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:10:00, load 29.38kWh, PV 0.0kWh 2026-08-14 07:35:02.344337: Battery has 1.58 hours left - now at 2.08kWh 2026-08-14 07:35:02.383353: predict base10 end_record 08-15 12:40:00, final soc 1.12kWh, metric 931.5p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:10:00, load 30.41kWh, PV 0.0kWh 2026-08-14 07:35:02.459193: predict best10 end_record 08-15 12:40:00, final soc 1.77kWh, metric 852.24p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:10:00, load 30.41kWh, PV 0.0kWh 2026-08-14 07:35:02.547978: predict best end_record 08-15 12:40:00, final soc 1.9kWh, metric 830.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:10:00, load 29.38kWh, PV 0.0kWh 2026-08-14 07:35:02.548077: Saving plan best values to HA entities 2026-08-14 07:35:02.717832: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 07:35:02.723252: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 07:35:02.728881: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.13kWh, house 5.83kWh, export 0.0kWh, metric 830.09p, metric10 852.24p 2026-08-14 07:35:02.800887: Marginal costs baseline metric (no standing charge): 780.1085 2026-08-14 07:35:03.020060: Marginal energy costs matrix computed: min=21.76 max=38.3 2026-08-14 07:35:03.092591: Rate array import [{'start': 455, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 28.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2200, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 455, 'end': 2200, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 07:35:03.093216: - Your estimated bill for today is £6.91 and tomorrow is £6.98 2026-08-14 07:35:03.093260: - Import rates are cheap (21.7p - 28.6p) for the next 8 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 07:35:03.093279: - The battery is currently at 13% and is in eco mode for the next 4 hours. 2026-08-14 07:35:03.093293: - For the next 48 hours there will be no solar generation. 2026-08-14 07:35:03.093306: - You will run out of battery in 1 and a half hours. 2026-08-14 07:35:03.093320: - Your next charge slot will be in 4 hours where import rates will be cheap (22.2p). 2026-08-14 07:35:03.093333: 2026-08-14 07:35:03.149791: Plan calculation took 1.04 seconds 2026-08-14 07:35:03.153390: No high rate period found 2026-08-14 07:35:03.206692: Import threshold used for optimisation was 24.8p 2026-08-14 07:35:03.261060: Low import rate windows [0: 08-14 07:30:00 - 08-14 08:00:00 @ 28.58, 1: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 2: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 3: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 4: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 5: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 6: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 7: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 8: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 9: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 10: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 11: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 12: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 13: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 14: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 15: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 16: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 17: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 18: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 19: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 20: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 21: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 22: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 23: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 24: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 25: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 26: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 27: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 28: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 29: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 30: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 31: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 32: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 33: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 34: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 35: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 36: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 37: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 38: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 39: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 40: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 41: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 42: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 43: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 44: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 45: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 46: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 47: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 48: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 49: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 50: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 51: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 52: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 53: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 54: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 55: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 56: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 57: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 58: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 59: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 60: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 61: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 62: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 63: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 64: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 65: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 66: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 67: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 68: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 69: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 70: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 71: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 72: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 73: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 74: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 75: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 76: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 77: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 78: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 79: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 80: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 81: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 82: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 83: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 84: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 85: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 86: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 87: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 88: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 89: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 90: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 91: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 92: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 93: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 94: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58] 2026-08-14 07:35:03.269765: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-14 07:35:03.269925: Inverter 0 disabled charge window while waiting for schedule (now 08-14 07:35:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 07:35:03.270042: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:35:03.270307: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:35:03.270404: No export window planned 2026-08-14 07:35:03.270535: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 07:35:03.270578: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:35:03.270713: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:35:03.270910: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 07:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 07:35:03.270970: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 07:35:03.271030: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 07:35:03.271143: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:35:03.271188: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:35:03.271216: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:35:03.271243: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:35:03.271269: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:35:03.271298: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:35:03.271323: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:35:03.271393: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:35:03.271423: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:35:03.271448: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:35:03.271474: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:35:03.271498: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:35:03.271526: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:35:03.271550: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:35:03.271572: Inverter 0 count register writes 0 2026-08-14 07:35:03.288238: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 07:35:03.288443: Recompute is saving previous plan... 2026-08-14 07:35:03.291612: Best charge window [ 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 0% ] 2026-08-14 07:35:03.291696: Best export window [ ] 2026-08-14 07:35:03.292496: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 07:35:03.295667: Load divergence over 8.0 hours mean 462.55W, min 230.4W, max 1260.0W, std dev 180.58W, divergence 19.52% 2026-08-14 07:35:03.307926: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 07:35:03.308064: LoadML is_calculating False 2026-08-14 07:35:03.308154: Creating pool of 12 processes to match your CPU count 2026-08-14 07:35:03.399033: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 07:35:03.401063: Optimise levels pass started at 2026-08-14 07:35:03 2026-08-14 07:35:03.401139: Optimise all windows, total charge 94 export 1 2026-08-14 07:35:03.724336: >> Region optimisation pass width 960 2026-08-14 07:35:04.156719: >> Region optimisation pass width 480 2026-08-14 07:35:04.564416: >> Region optimisation pass width 240 2026-08-14 07:35:05.129981: >> Region optimisation pass width 120 2026-08-14 07:35:06.521326: Calculated end_record as 08-15 12:30:00 based on best_price 22.25p, next_charge_start 08-14 12:30:00, max_windows 57 2026-08-14 07:35:06.521634: Optimise levels pass ended at 2026-08-14 07:35:06, duration 3.1 seconds tried 326 combinations 2026-08-14 07:35:06.521727: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1028.03p, best_keep 0kWh, best_cycle 48.43kWh, best_carbon 0kg, best_import 37.85kWh 2026-08-14 07:35:06.545205: Starting detailed optimisation end_record 08-15 12:30:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 07:35:06.547008: Best charge windows best_metric 736.91p, best_cost 758.93p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:35:06.547147: Best export windows best_metric 736.91p, best_cost 758.93p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:35:06.547275: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 736.91p, best_cost 758.93p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:06.631485: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 736.8p, best_cost 758.81p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:06.736516: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 736.8p, best_cost 758.81p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:06.869941: Best charge windows best_metric 736.8p, best_cost 758.81p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:35:06.870070: Best export windows best_metric 736.8p, best_cost 758.81p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:35:06.871315: Best charge windows best_metric 736.8p, best_cost 758.81p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:35:06.871393: Best export windows best_metric 736.8p, best_cost 758.81p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:35:06.871486: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 736.8p, best_cost 758.81p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:07.074964: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 736.8p, best_cost 758.81p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:07.158480: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 736.8p, best_cost 758.81p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:07.284347: Best charge windows best_metric 736.8p, best_cost 758.81p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:35:07.284649: Best export windows best_metric 736.8p, best_cost 758.81p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:35:07.285979: Best charge windows best_metric 736.8p, best_cost 758.81p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:35:07.286124: Best export windows best_metric 736.8p, best_cost 758.81p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:35:07.286291: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 736.8p, best_cost 758.81p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:07.364685: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 736.8p, best_cost 758.81p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:07.451155: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 736.8p, best_cost 758.81p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:07.569262: Best charge windows best_metric 736.8p, best_cost 758.81p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:35:07.569692: Best export windows best_metric 736.8p, best_cost 758.81p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:35:07.569895: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 736.8p, best_cost 758.81p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:07.679401: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 736.8p, best_cost 758.81p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:07.757264: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 736.8p, best_cost 758.81p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:07.962935: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 736.8p, best_cost 758.81p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:08.030461: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 736.8p, best_cost 758.81p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:08.094258: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 736.8p, best_cost 758.81p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:08.160379: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 736.8p, best_cost 758.81p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:08.227182: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 736.8p, best_cost 758.81p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:08.342698: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 736.58p, best_cost 758.81p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:08.556251: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 736.49p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:08.599783: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:08.633403: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:08.676169: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:08.710247: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:08.753338: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:08.838561: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:08.882009: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:08.961965: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:08.997899: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.032775: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.070803: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.110052: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.146532: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.187613: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.227744: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.265176: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.311244: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.358674: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.408820: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.451698: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.493905: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.535673: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.583960: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.624433: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.665994: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.711330: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.765258: Best charge windows best_metric 736.47p, best_cost 758.8p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:35:09.765395: Best export windows best_metric 736.47p, best_cost 758.8p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:35:09.766643: Best charge windows best_metric 736.47p, best_cost 758.8p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:35:09.766714: Best export windows best_metric 736.47p, best_cost 758.8p, best_carbon 0kg, best_import 50.15kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:35:09.766796: Optimise price set 26.8p, pass trim_import, price 24.94p, start_at_low False, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.808782: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.895146: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:09.942255: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:10.027787: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 736.47p, best_cost 758.8p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.15kWh 2026-08-14 07:35:10.123279: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 736.27p, best_cost 758.54p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.07kWh 2026-08-14 07:35:10.265141: Best charge windows best_metric 736.27p, best_cost 758.54p, best_carbon 0kg, best_import 50.07kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:35:10.265356: Best export windows best_metric 736.27p, best_cost 758.54p, best_carbon 0kg, best_import 50.07kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:35:10.265489: Optimise price set 26.8p, pass normal, price 24.94p, start_at_low False, best_price_charge 22.25p, best_metric 736.27p, best_cost 758.54p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.07kWh 2026-08-14 07:35:10.305190: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 736.27p, best_cost 758.54p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.07kWh 2026-08-14 07:35:10.386369: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 736.26p, best_cost 758.54p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.07kWh 2026-08-14 07:35:10.603148: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 736.26p, best_cost 758.54p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.07kWh 2026-08-14 07:35:10.709189: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 736.26p, best_cost 758.54p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.07kWh 2026-08-14 07:35:10.848298: Best charge windows best_metric 736.26p, best_cost 758.54p, best_carbon 0kg, best_import 50.07kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:35:10.848495: Best export windows best_metric 736.26p, best_cost 758.54p, best_carbon 0kg, best_import 50.07kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:35:10.850205: Best charge windows best_metric 736.26p, best_cost 758.54p, best_carbon 0kg, best_import 50.07kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:35:10.850558: Best export windows best_metric 736.26p, best_cost 758.54p, best_carbon 0kg, best_import 50.07kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:35:10.850707: Optimise price set 26.8p, pass trim_import, price 24.94p, start_at_low False, best_price_charge 22.25p, best_metric 736.26p, best_cost 758.54p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.07kWh 2026-08-14 07:35:10.899335: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 736.26p, best_cost 758.54p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.07kWh 2026-08-14 07:35:10.979224: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 736.26p, best_cost 758.54p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.07kWh 2026-08-14 07:35:11.068199: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 736.26p, best_cost 758.54p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.07kWh 2026-08-14 07:35:11.156674: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 736.26p, best_cost 758.54p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.07kWh 2026-08-14 07:35:11.283975: Best charge windows best_metric 736.26p, best_cost 758.54p, best_carbon 0kg, best_import 50.07kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:35:11.284185: Best export windows best_metric 736.26p, best_cost 758.54p, best_carbon 0kg, best_import 50.07kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:35:11.284361: Optimise price set 26.8p, pass normal, price 24.94p, start_at_low False, best_price_charge 22.25p, best_metric 736.26p, best_cost 758.54p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.07kWh 2026-08-14 07:35:11.319129: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 736.26p, best_cost 758.54p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.07kWh 2026-08-14 07:35:11.402316: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 736.26p, best_cost 758.54p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.07kWh 2026-08-14 07:35:11.607572: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 736.26p, best_cost 758.54p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.07kWh 2026-08-14 07:35:11.691832: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 736.26p, best_cost 758.54p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.07kWh 2026-08-14 07:35:11.814493: Best charge windows best_metric 736.26p, best_cost 758.54p, best_carbon 0kg, best_import 50.07kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:35:11.814990: Best export windows best_metric 736.26p, best_cost 758.54p, best_carbon 0kg, best_import 50.07kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:35:11.815329: Tweak plan optimisation started 2026-08-14 07:35:12.111205: Tweak optimisation finished metric 736.26 cost 758.54 metric_keep 0 cycle 24.7 carbon 0 import 50.07 2026-08-14 07:35:12.131185: Swap charge optimisation started metric 736.26p, cost 758.54p, min_improvement_swap 0.1p 2026-08-14 07:35:16.889178: Swap charge optimisation finished metric 736.26p, cost 758.54p 2026-08-14 07:35:16.902573: Raw charge windows [ 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] reserve 1.12 2026-08-14 07:35:16.903243: Unclipped charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 01:30:00 - 15-08 02:30:00 @ 24.87p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 08:00:00 @ 28.77p 100% ] reserve 1.12 2026-08-14 07:35:16.903536: Unfiltered charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 01:30:00 - 15-08 02:30:00 @ 24.87p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 08:00:00 @ 28.77p 100% ] reserve 1.12 2026-08-14 07:35:16.903746: Filtered charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 01:30:00 - 15-08 02:30:00 @ 24.87p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 08:00:00 @ 28.77p 100% ] reserve 1.12 2026-08-14 07:35:16.942677: Previous plan best metric is 736.48 (cost 758.82) and new plan best metric is 736.26 (cost 758.54) 2026-08-14 07:35:16.942923: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 07:35:16.943204: Plan valid is now true after recompute was False 2026-08-14 07:35:16.972013: predict base end_record 08-15 12:30:00, final soc 1.12kWh, metric 899.49p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:10:00, load 29.26kWh, PV 0.0kWh 2026-08-14 07:35:17.081214: Battery has 1.58 hours left - now at 2.08kWh 2026-08-14 07:35:17.119934: predict base10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 928.57p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:10:00, load 30.28kWh, PV 0.0kWh 2026-08-14 07:35:17.194555: predict best10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 833.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:10:00, load 30.28kWh, PV 0.0kWh 2026-08-14 07:35:17.281953: predict best end_record 08-15 12:30:00, final soc 1.12kWh, metric 808.81p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:10:00, load 29.26kWh, PV 0.0kWh 2026-08-14 07:35:17.282061: Saving plan best values to HA entities 2026-08-14 07:35:17.420446: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 07:35:17.426165: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 07:35:17.432022: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.13kWh, house 5.83kWh, export 0.0kWh, metric 808.81p, metric10 833.9p 2026-08-14 07:35:17.495078: Marginal costs baseline metric (no standing charge): 758.8242 2026-08-14 07:35:17.743599: Marginal energy costs matrix computed: min=21.76 max=38.3 2026-08-14 07:35:17.813923: Rate array import [{'start': 455, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 28.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2190, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 455, 'end': 2190, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 07:35:17.814756: - Your estimated bill for today is £6.91 and tomorrow is £6.98 2026-08-14 07:35:17.814819: - Import rates are cheap (21.7p - 28.6p) for the next 8 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 07:35:17.814861: - The battery is currently at 13% and is in eco mode for the next 4 hours. 2026-08-14 07:35:17.814896: - For the next 48 hours there will be no solar generation. 2026-08-14 07:35:17.814934: - You will run out of battery in 1 and a half hours. 2026-08-14 07:35:17.814968: - Your next charge slot will be in 4 hours where import rates will be cheap (22.2p). 2026-08-14 07:35:17.815000: 2026-08-14 07:35:17.872700: Plan calculation took 14.58 seconds 2026-08-14 07:35:17.873142: Inverter 0: Type SK Sunsynk 2026-08-14 07:35:17.873207: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 07:35:17.873459: Reserve min: 7%, battery_min: 7% 2026-08-14 07:35:17.873536: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 07:35:17.873944: Inverter 0 SoC: 2.08kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power 275W, current battery voltage 51.2V, grid power -54W, load power 335W, PV Power 0W 2026-08-14 07:35:17.874242: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:35:17.874346: Inverter 0 scheduled charge enable is False 2026-08-14 07:35:17.874386: Inverter 0 charge windows currently [] 2026-08-14 07:35:17.874420: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 07:35:17.874534: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:35:17.874570: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:35:17.874610: Inverter 0 scheduled discharge enable is False 2026-08-14 07:35:17.874733: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:35:17.874770: Inverter 0 discharge windows currently [] 2026-08-14 07:35:17.874798: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:35:17.874819: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:35:17.874836: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:35:17.930917: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-14 07:35:17.931086: Inverter 0 disabled charge window while waiting for schedule (now 08-14 07:35:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 07:35:17.931267: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:35:17.931479: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:35:17.931559: No export window planned 2026-08-14 07:35:17.931675: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 07:35:17.931717: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:35:17.931851: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:35:17.932017: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 07:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 07:35:17.932071: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 07:35:17.932144: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 07:35:17.932267: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:35:17.932318: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:35:17.932346: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:35:17.932398: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:35:17.932423: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:35:17.932452: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:35:17.932477: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:35:17.932543: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:35:17.932572: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:35:17.932613: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:35:17.932649: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:35:17.932673: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:35:17.932697: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:35:17.932725: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:35:17.932748: Inverter 0 count register writes 0 2026-08-14 07:35:17.960493: Total inverter register writes now 806 2026-08-14 07:35:18.005157: Info: Completed run status Demand 2026-08-14 07:35:18.012161: Info: record_status Demand 2026-08-14 07:35:18.021326: Saved current settings to /config/predbat_config.json 2026-08-14 07:35:18.021741: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 07:35:54.132788: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:35:54.133131: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:35:54.133175: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:35:54.133307: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:35:54.133346: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:35:54.133390: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:35:54.133411: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:37:54.358856: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:37:54.359139: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:37:54.359177: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:37:54.359360: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:37:54.359411: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:37:54.359432: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:37:54.359450: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:39:54.576261: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:39:54.576501: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:39:54.576545: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:39:54.576716: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:39:54.576763: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:39:54.576784: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:39:54.576801: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:40:00.659036: --------------- PredBat - update at 2026-08-14 07:40:00+01:00 with clock skew 0 minutes, minutes now 460 2026-08-14 07:40:00.659970: Saved current settings to /config/predbat_config.json 2026-08-14 07:40:00.660151: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 10.0 minutes 2026-08-14 07:40:00.660228: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 07:40:00.660356: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 07:40:00.686151: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 07:40:00.686283: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 07:40:00.686903: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 07:40:00.687017: Predbat mode is set to Control charge & discharge 2026-08-14 07:40:00.904157: Found 21602 load_today datapoints going back 28 days 2026-08-14 07:40:00.904302: Using load_power data to fill gaps in load_today data 2026-08-14 07:40:01.775207: Processing 721 30-minute periods for power integration 2026-08-14 07:40:01.969236: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 07:40:01.969387: Car charging hold False, threshold 6.0kWh 2026-08-14 07:40:01.969434: Current data so far today: load 7.83kWh, import 8.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 07:40:01.984043: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 07:40:01.984777: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 07:40:01.984853: Standing charge is set to 49.98p 2026-08-14 07:40:02.012730: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 07:40:02.012842: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 07:40:02.013116: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 460.0 minutes 2026-08-14 07:40:02.013546: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 459.8 minutes 2026-08-14 07:40:02.016685: Loaded 47 datapoints of futurerate analysis 2026-08-14 07:40:02.104025: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 07:40:02.154305: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 07:40:02.159022: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 07:40:02.159449: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 07:40:02.194458: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 07:40:02.194593: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 07:40:02.195779: High export rate found rates in range 99p to -99p 2026-08-14 07:40:02.278434: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 07:40:02.278582: Car 0 charging is not planned as it is not plugged in 2026-08-14 07:40:02.293704: Battery level now 2.08kWh, -1hr ago 2.4kWh, at midnight 2.43kWh, battery value change in the last hour -7.46p, change today -8.2p, rate_forward 23.31p 2026-08-14 07:40:02.294098: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.38kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 07:40:02.346900: Today's energy total net 8.3kWh, import 8.3kWh, export 0.0kWh, cost 259.83p, import 209.85p, export 0.0p, carbon 0.0kg 2026-08-14 07:40:02.347123: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 07:40:02.427894: Using weighted-bucket historical load forecast over 14 days 2026-08-14 07:40:02.453435: Today's load divergence 112.66%, in-day adjustment 135.7%, damping 0.95x, yesterday 146.81% today 112.03% blend 68.06% 2026-08-14 07:40:02.453539: Today's predicted so far 2.96kWh with 0.0kWh car/iBoost excluded, 1.48kWh import ignored, and 4.44kWh forecast extra. 2026-08-14 07:40:02.453570: Today's actual load so far 4.78kWh with 0.0kWh car/iBoost excluded, and 3.15kWh import ignored. 2026-08-14 07:40:02.489538: Inverter 0: Type SK Sunsynk 2026-08-14 07:40:02.489628: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 07:40:02.489808: Reserve min: 7%, battery_min: 7% 2026-08-14 07:40:02.489878: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 07:40:02.490159: Inverter 0 SoC: 2.08kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power 236W, current battery voltage 51.2V, grid power -54W, load power 296W, PV Power 0W 2026-08-14 07:40:02.490315: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:40:02.490403: Inverter 0 scheduled charge enable is False 2026-08-14 07:40:02.490432: Inverter 0 charge windows currently [] 2026-08-14 07:40:02.490485: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 07:40:02.490601: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:40:02.490638: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:40:02.490674: Inverter 0 scheduled discharge enable is False 2026-08-14 07:40:02.490796: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:40:02.490833: Inverter 0 discharge windows currently [] 2026-08-14 07:40:02.490857: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:40:02.490876: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:40:02.490894: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:40:02.545999: Dynamic load last period 0.30kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 07:40:02.546108: Plan was last updated on 2026-08-14 07:35:00+01:00 and is now 5.0 minutes old 2026-08-14 07:40:02.546413: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 07:40:02.546450: Best export window [ ] 2026-08-14 07:40:02.547247: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 07:40:02.549988: Load divergence over 8.0 hours mean 461.36W, min 240.6W, max 1225.8W, std dev 171.83W, divergence 18.62% 2026-08-14 07:40:02.560576: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 07:40:02.560658: LoadML is_calculating False 2026-08-14 07:40:02.560710: Creating pool of 12 processes to match your CPU count 2026-08-14 07:40:02.663764: predict base end_record 08-15 12:35:00, final soc 1.12kWh, metric 899.34p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:15:00, load 29.38kWh, PV 0.0kWh 2026-08-14 07:40:02.783230: Battery has 1.58 hours left - now at 2.08kWh 2026-08-14 07:40:02.833011: predict base10 end_record 08-15 12:35:00, final soc 1.12kWh, metric 928.43p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:10:00, load 30.41kWh, PV 0.0kWh 2026-08-14 07:40:02.918572: predict best10 end_record 08-15 12:35:00, final soc 1.44kWh, metric 841.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:10:00, load 30.41kWh, PV 0.0kWh 2026-08-14 07:40:02.995242: predict best end_record 08-15 12:35:00, final soc 1.51kWh, metric 817.97p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:15:00, load 29.38kWh, PV 0.0kWh 2026-08-14 07:40:02.995329: Saving plan best values to HA entities 2026-08-14 07:40:03.147030: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 07:40:03.152609: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 07:40:03.157998: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.13kWh, house 5.77kWh, export 0.0kWh, metric 817.97p, metric10 841.54p 2026-08-14 07:40:03.227462: Marginal costs baseline metric (no standing charge): 767.9905 2026-08-14 07:40:03.445915: Marginal energy costs matrix computed: min=21.78 max=38.64 2026-08-14 07:40:03.510105: Rate array import [{'start': 460, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 28.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2195, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 460, 'end': 2195, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 07:40:03.510724: - Your estimated bill for today is £6.90 and tomorrow is £6.99 2026-08-14 07:40:03.510761: - Import rates are cheap (21.7p - 28.6p) for the next 8 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 07:40:03.510779: - The battery is currently at 13% and is in eco mode for the next 4 and three quarters hours. 2026-08-14 07:40:03.510794: - For the next 48 hours there will be no solar generation. 2026-08-14 07:40:03.510808: - You will run out of battery in 1 and a half hours. 2026-08-14 07:40:03.510822: - Your next charge slot will be in 4 and three quarters hours where import rates will be cheap (22.2p). 2026-08-14 07:40:03.510836: 2026-08-14 07:40:03.567336: Plan calculation took 1.02 seconds 2026-08-14 07:40:03.570112: No high rate period found 2026-08-14 07:40:03.615249: Import threshold used for optimisation was 24.94p 2026-08-14 07:40:03.665483: Low import rate windows [0: 08-14 07:30:00 - 08-14 08:00:00 @ 28.58, 1: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 2: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 3: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 4: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 5: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 6: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 7: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 8: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 9: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 10: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 11: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 12: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 13: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 14: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 15: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 16: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 17: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 18: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 19: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 20: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 21: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 22: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 23: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 24: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 25: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 26: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 27: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 28: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 29: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 30: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 31: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 32: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 33: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 34: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 35: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 36: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 37: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 38: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 39: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 40: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 41: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 42: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 43: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 44: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 45: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 46: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 47: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 48: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 49: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 50: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 51: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 52: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 53: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 54: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 55: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 56: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 57: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 58: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 59: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 60: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 61: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 62: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 63: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 64: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 65: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 66: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 67: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 68: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 69: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 70: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 71: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 72: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 73: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 74: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 75: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 76: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 77: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 78: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 79: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 80: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 81: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 82: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 83: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 84: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 85: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 86: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 87: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 88: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 89: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 90: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 91: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 92: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 93: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 94: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58] 2026-08-14 07:40:03.673068: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-14 07:40:03.673193: Inverter 0 disabled charge window while waiting for schedule (now 08-14 07:40:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 07:40:03.673297: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:40:03.673501: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:40:03.673581: No export window planned 2026-08-14 07:40:03.673689: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 07:40:03.673723: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:40:03.673846: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:40:03.674034: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 07:40:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 07:40:03.674102: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 07:40:03.674157: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 07:40:03.674240: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:40:03.674266: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:40:03.674291: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:40:03.674311: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:40:03.674335: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:40:03.674354: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:40:03.674376: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:40:03.674428: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:40:03.674459: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:40:03.674481: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:40:03.674500: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:40:03.674519: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:40:03.674566: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:40:03.674589: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:40:03.674606: Inverter 0 count register writes 0 2026-08-14 07:40:03.688994: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 07:40:03.694201: Total inverter register writes now 806 2026-08-14 07:40:03.724282: Info: Completed run status Demand 2026-08-14 07:40:03.730912: Info: record_status Demand 2026-08-14 07:40:03.737623: Saved current settings to /config/predbat_config.json 2026-08-14 07:40:03.737950: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 07:40:38.840761: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:40:38.840992: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:40:38.841034: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:40:38.841199: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:40:38.841240: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:40:38.841259: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:40:38.841273: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:42:39.043775: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:42:39.044030: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:42:39.044091: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:42:39.044231: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:42:39.044270: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:42:39.044291: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:42:39.044308: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:44:39.265125: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:44:39.265403: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:44:39.265456: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:44:39.265668: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:44:39.265715: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:44:39.265738: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:44:39.265756: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:45:00.380444: --------------- PredBat - update at 2026-08-14 07:45:00+01:00 with clock skew 0 minutes, minutes now 465 2026-08-14 07:45:00.381319: Saved current settings to /config/predbat_config.json 2026-08-14 07:45:00.381540: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 15.0 minutes 2026-08-14 07:45:00.381668: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 07:45:00.381817: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 07:45:00.401149: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 07:45:00.401280: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 07:45:00.401908: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 07:45:00.402077: Predbat mode is set to Control charge & discharge 2026-08-14 07:45:00.573315: Found 21602 load_today datapoints going back 28 days 2026-08-14 07:45:00.573479: Using load_power data to fill gaps in load_today data 2026-08-14 07:45:01.320230: Processing 721 30-minute periods for power integration 2026-08-14 07:45:01.478655: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 07:45:01.478798: Car charging hold False, threshold 6.0kWh 2026-08-14 07:45:01.478839: Current data so far today: load 7.85kWh, import 8.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 07:45:01.490425: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 07:45:01.491028: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 07:45:01.491109: Standing charge is set to 49.98p 2026-08-14 07:45:01.517577: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 07:45:01.517697: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 07:45:01.517969: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 465.0 minutes 2026-08-14 07:45:01.518585: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 464.8 minutes 2026-08-14 07:45:01.521376: Loaded 47 datapoints of futurerate analysis 2026-08-14 07:45:01.592452: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 07:45:01.639388: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 07:45:01.643828: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 07:45:01.644572: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 07:45:01.678078: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 07:45:01.679132: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 07:45:01.680176: High export rate found rates in range 99p to -99p 2026-08-14 07:45:01.747423: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 07:45:01.747538: Car 0 charging is not planned as it is not plugged in 2026-08-14 07:45:01.758755: Battery level now 2.08kWh, -1hr ago 2.4kWh, at midnight 2.43kWh, battery value change in the last hour -7.46p, change today -8.2p, rate_forward 23.31p 2026-08-14 07:45:01.759075: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.35kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 07:45:01.806937: Today's energy total net 8.3kWh, import 8.3kWh, export 0.0kWh, cost 259.83p, import 209.85p, export 0.0p, carbon 0.0kg 2026-08-14 07:45:01.807100: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 07:45:01.870938: Using weighted-bucket historical load forecast over 14 days 2026-08-14 07:45:01.894030: Today's load divergence 112.75%, in-day adjustment 135.61%, damping 0.95x, yesterday 146.81% today 112.11% blend 67.71% 2026-08-14 07:45:01.894624: Today's predicted so far 2.77kWh with 0.0kWh car/iBoost excluded, 1.67kWh import ignored, and 4.44kWh forecast extra. 2026-08-14 07:45:01.894670: Today's actual load so far 4.58kWh with 0.0kWh car/iBoost excluded, and 3.33kWh import ignored. 2026-08-14 07:45:01.927206: Inverter 0: Type SK Sunsynk 2026-08-14 07:45:01.927299: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 07:45:01.927497: Reserve min: 7%, battery_min: 7% 2026-08-14 07:45:01.927572: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 07:45:01.927845: Inverter 0 SoC: 2.08kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power 275W, current battery voltage 51.2V, grid power -55W, load power 338W, PV Power 0W 2026-08-14 07:45:01.927996: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:45:01.928100: Inverter 0 scheduled charge enable is False 2026-08-14 07:45:01.928131: Inverter 0 charge windows currently [] 2026-08-14 07:45:01.928157: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 07:45:01.928274: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:45:01.928308: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:45:01.928343: Inverter 0 scheduled discharge enable is False 2026-08-14 07:45:01.928466: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:45:01.928502: Inverter 0 discharge windows currently [] 2026-08-14 07:45:01.928525: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:45:01.928548: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:45:01.928565: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:45:01.990563: Dynamic load last period 0.30kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 07:45:01.990673: Plan was last updated on 2026-08-14 07:35:00+01:00 and is now 10.0 minutes old 2026-08-14 07:45:01.990993: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 07:45:01.991039: Best export window [ ] 2026-08-14 07:45:01.991956: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 07:45:01.995120: Load divergence over 8.0 hours mean 459.88W, min 220.2W, max 1101.0W, std dev 167.56W, divergence 18.22% 2026-08-14 07:45:02.008254: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 07:45:02.008388: LoadML is_calculating False 2026-08-14 07:45:02.008468: Creating pool of 12 processes to match your CPU count 2026-08-14 07:45:02.130650: predict base end_record 08-15 12:40:00, final soc 1.12kWh, metric 900.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:20:00, load 29.43kWh, PV 0.0kWh 2026-08-14 07:45:02.265237: Battery has 1.58 hours left - now at 2.08kWh 2026-08-14 07:45:02.303524: predict base10 end_record 08-15 12:40:00, final soc 1.12kWh, metric 929.24p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:15:00, load 30.46kWh, PV 0.0kWh 2026-08-14 07:45:02.391004: predict best10 end_record 08-15 12:40:00, final soc 1.77kWh, metric 849.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:15:00, load 30.46kWh, PV 0.0kWh 2026-08-14 07:45:02.482001: predict best end_record 08-15 12:40:00, final soc 1.9kWh, metric 827.82p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:20:00, load 29.43kWh, PV 0.0kWh 2026-08-14 07:45:02.482111: Saving plan best values to HA entities 2026-08-14 07:45:02.650488: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 07:45:02.655812: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 07:45:02.661162: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.11kWh, house 5.74kWh, export 0.0kWh, metric 827.82p, metric10 849.9p 2026-08-14 07:45:02.735527: Marginal costs baseline metric (no standing charge): 777.8325 2026-08-14 07:45:03.026472: Marginal energy costs matrix computed: min=21.8 max=38.94 2026-08-14 07:45:03.114351: Rate array import [{'start': 465, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 28.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2200, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 465, 'end': 2200, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 07:45:03.115132: - Your estimated bill for today is £6.88 and tomorrow is £7.01 2026-08-14 07:45:03.115185: - Import rates are cheap (21.7p - 28.6p) for the next 8 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 07:45:03.115216: - The battery is currently at 13% and is in eco mode for the next 4 and three quarters hours. 2026-08-14 07:45:03.115262: - For the next 48 hours there will be no solar generation. 2026-08-14 07:45:03.115287: - You will run out of battery in 1 and a half hours. 2026-08-14 07:45:03.115322: - Your next charge slot will be in 4 and three quarters hours where import rates will be cheap (22.2p). 2026-08-14 07:45:03.115356: 2026-08-14 07:45:03.173078: Plan calculation took 1.18 seconds 2026-08-14 07:45:03.176432: No high rate period found 2026-08-14 07:45:03.229463: Import threshold used for optimisation was 24.94p 2026-08-14 07:45:03.283075: Low import rate windows [0: 08-14 07:30:00 - 08-14 08:00:00 @ 28.58, 1: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 2: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 3: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 4: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 5: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 6: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 7: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 8: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 9: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 10: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 11: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 12: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 13: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 14: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 15: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 16: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 17: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 18: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 19: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 20: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 21: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 22: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 23: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 24: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 25: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 26: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 27: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 28: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 29: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 30: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 31: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 32: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 33: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 34: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 35: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 36: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 37: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 38: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 39: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 40: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 41: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 42: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 43: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 44: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 45: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 46: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 47: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 48: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 49: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 50: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 51: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 52: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 53: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 54: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 55: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 56: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 57: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 58: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 59: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 60: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 61: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 62: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 63: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 64: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 65: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 66: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 67: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 68: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 69: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 70: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 71: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 72: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 73: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 74: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 75: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 76: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 77: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 78: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 79: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 80: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 81: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 82: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 83: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 84: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 85: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 86: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 87: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 88: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 89: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 90: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 91: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 92: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 93: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 94: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58] 2026-08-14 07:45:03.289835: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-14 07:45:03.289963: Inverter 0 disabled charge window while waiting for schedule (now 08-14 07:45:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 07:45:03.290141: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:45:03.290463: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:45:03.290591: No export window planned 2026-08-14 07:45:03.290812: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 07:45:03.290889: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:45:03.291192: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:45:03.291435: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 07:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 07:45:03.291519: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 07:45:03.291625: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 07:45:03.291774: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:45:03.291825: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:45:03.291864: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:45:03.291972: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:45:03.292039: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:45:03.292119: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:45:03.292169: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:45:03.292296: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:45:03.292341: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:45:03.292368: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:45:03.292394: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:45:03.292418: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:45:03.292441: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:45:03.292466: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:45:03.292487: Inverter 0 count register writes 0 2026-08-14 07:45:03.309683: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 07:45:03.309886: Recompute is saving previous plan... 2026-08-14 07:45:03.313093: Best charge window [ 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 0% ] 2026-08-14 07:45:03.313180: Best export window [ ] 2026-08-14 07:45:03.314004: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 07:45:03.317148: Load divergence over 8.0 hours mean 459.88W, min 220.2W, max 1101.0W, std dev 167.56W, divergence 18.22% 2026-08-14 07:45:03.329612: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 07:45:03.329753: LoadML is_calculating False 2026-08-14 07:45:03.329830: Creating pool of 12 processes to match your CPU count 2026-08-14 07:45:03.424314: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 07:45:03.426477: Optimise levels pass started at 2026-08-14 07:45:03 2026-08-14 07:45:03.426548: Optimise all windows, total charge 94 export 1 2026-08-14 07:45:03.741016: >> Region optimisation pass width 960 2026-08-14 07:45:04.147206: >> Region optimisation pass width 480 2026-08-14 07:45:04.518718: >> Region optimisation pass width 240 2026-08-14 07:45:05.035330: >> Region optimisation pass width 120 2026-08-14 07:45:06.449295: Calculated end_record as 08-15 12:30:00 based on best_price 22.25p, next_charge_start 08-14 12:30:00, max_windows 57 2026-08-14 07:45:06.449617: Optimise levels pass ended at 2026-08-14 07:45:06, duration 3.0 seconds tried 326 combinations 2026-08-14 07:45:06.449787: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1027.13p, best_keep 0kWh, best_cycle 48.49kWh, best_carbon 0kg, best_import 37.74kWh 2026-08-14 07:45:06.472417: Starting detailed optimisation end_record 08-15 12:30:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 07:45:06.474259: Best charge windows best_metric 734.62p, best_cost 756.65p, best_carbon 0kg, best_import 50.1kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:45:06.474393: Best export windows best_metric 734.62p, best_cost 756.65p, best_carbon 0kg, best_import 50.1kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:45:06.474580: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 734.62p, best_cost 756.65p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:06.559803: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 734.51p, best_cost 756.52p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:06.661071: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 734.51p, best_cost 756.52p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:06.786246: Best charge windows best_metric 734.51p, best_cost 756.52p, best_carbon 0kg, best_import 50.1kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:45:06.786759: Best export windows best_metric 734.51p, best_cost 756.52p, best_carbon 0kg, best_import 50.1kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:45:06.788349: Best charge windows best_metric 734.51p, best_cost 756.52p, best_carbon 0kg, best_import 50.1kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:45:06.788473: Best export windows best_metric 734.51p, best_cost 756.52p, best_carbon 0kg, best_import 50.1kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:45:06.788595: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 734.51p, best_cost 756.52p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:06.997998: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 734.51p, best_cost 756.52p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:07.087527: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 734.51p, best_cost 756.52p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:07.220410: Best charge windows best_metric 734.51p, best_cost 756.52p, best_carbon 0kg, best_import 50.1kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:45:07.220536: Best export windows best_metric 734.51p, best_cost 756.52p, best_carbon 0kg, best_import 50.1kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:45:07.221981: Best charge windows best_metric 734.51p, best_cost 756.52p, best_carbon 0kg, best_import 50.1kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:45:07.222104: Best export windows best_metric 734.51p, best_cost 756.52p, best_carbon 0kg, best_import 50.1kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:45:07.222198: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 734.51p, best_cost 756.52p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:07.304864: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 734.51p, best_cost 756.52p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:07.400486: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 734.51p, best_cost 756.52p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:07.534856: Best charge windows best_metric 734.51p, best_cost 756.52p, best_carbon 0kg, best_import 50.1kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:45:07.535115: Best export windows best_metric 734.51p, best_cost 756.52p, best_carbon 0kg, best_import 50.1kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:45:07.535305: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 734.51p, best_cost 756.52p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:07.681549: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 734.51p, best_cost 756.52p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:07.759615: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 734.51p, best_cost 756.52p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:07.987447: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 734.51p, best_cost 756.52p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:08.060390: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 734.51p, best_cost 756.52p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:08.127331: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 734.51p, best_cost 756.52p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:08.198632: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 734.51p, best_cost 756.52p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:08.265481: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 734.51p, best_cost 756.52p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:08.377184: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 734.28p, best_cost 756.46p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:08.599605: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:08.641022: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:08.680668: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:08.720344: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:08.765677: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:08.804196: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:08.896738: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:08.946842: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.018255: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.072443: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.107288: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.152646: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.189444: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.238899: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.290076: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.338825: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.390497: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.428536: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.473182: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.511508: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.545118: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.590553: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.643445: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.683200: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.723569: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.760620: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.799434: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.834933: Best charge windows best_metric 734.15p, best_cost 756.5p, best_carbon 0kg, best_import 50.1kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:45:09.835115: Best export windows best_metric 734.15p, best_cost 756.5p, best_carbon 0kg, best_import 50.1kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:45:09.836657: Best charge windows best_metric 734.15p, best_cost 756.5p, best_carbon 0kg, best_import 50.1kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:45:09.837032: Best export windows best_metric 734.15p, best_cost 756.5p, best_carbon 0kg, best_import 50.1kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:45:09.837191: Optimise price set 26.6p, pass trim_import, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.877422: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:09.921901: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:10.010763: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 734.15p, best_cost 756.5p, best_cycle 25.7kWh, best_carbon 0kg, best_import 50.1kWh 2026-08-14 07:45:10.090438: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 734.02p, best_cost 756.17p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.03kWh 2026-08-14 07:45:10.229407: Best charge windows best_metric 734.02p, best_cost 756.17p, best_carbon 0kg, best_import 50.03kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:45:10.229769: Best export windows best_metric 734.02p, best_cost 756.17p, best_carbon 0kg, best_import 50.03kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:45:10.230133: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 734.02p, best_cost 756.17p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.03kWh 2026-08-14 07:45:10.280605: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 734.02p, best_cost 756.17p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.03kWh 2026-08-14 07:45:10.323922: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 734.02p, best_cost 756.17p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.03kWh 2026-08-14 07:45:10.574304: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 734.02p, best_cost 756.17p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.03kWh 2026-08-14 07:45:10.683886: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 734.02p, best_cost 756.17p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.03kWh 2026-08-14 07:45:10.831652: Best charge windows best_metric 734.02p, best_cost 756.17p, best_carbon 0kg, best_import 50.03kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:45:10.831966: Best export windows best_metric 734.02p, best_cost 756.17p, best_carbon 0kg, best_import 50.03kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:45:10.833885: Best charge windows best_metric 734.02p, best_cost 756.17p, best_carbon 0kg, best_import 50.03kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:45:10.834142: Best export windows best_metric 734.02p, best_cost 756.17p, best_carbon 0kg, best_import 50.03kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:45:10.834329: Optimise price set 26.6p, pass trim_import, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 734.02p, best_cost 756.17p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.03kWh 2026-08-14 07:45:10.889704: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 734.02p, best_cost 756.17p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.03kWh 2026-08-14 07:45:10.931134: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 734.02p, best_cost 756.17p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.03kWh 2026-08-14 07:45:11.013014: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 734.02p, best_cost 756.17p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.03kWh 2026-08-14 07:45:11.101226: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 734.02p, best_cost 756.17p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.03kWh 2026-08-14 07:45:11.240885: Best charge windows best_metric 734.02p, best_cost 756.17p, best_carbon 0kg, best_import 50.03kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:45:11.241264: Best export windows best_metric 734.02p, best_cost 756.17p, best_carbon 0kg, best_import 50.03kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:45:11.241424: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 734.02p, best_cost 756.17p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.03kWh 2026-08-14 07:45:11.281719: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 734.02p, best_cost 756.17p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.03kWh 2026-08-14 07:45:11.327540: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 734.02p, best_cost 756.17p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.03kWh 2026-08-14 07:45:11.535097: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 734.02p, best_cost 756.17p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.03kWh 2026-08-14 07:45:11.620785: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 734.02p, best_cost 756.17p, best_cycle 24.7kWh, best_carbon 0kg, best_import 50.03kWh 2026-08-14 07:45:11.748394: Best charge windows best_metric 734.02p, best_cost 756.17p, best_carbon 0kg, best_import 50.03kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:45:11.748645: Best export windows best_metric 734.02p, best_cost 756.17p, best_carbon 0kg, best_import 50.03kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:45:11.748934: Tweak plan optimisation started 2026-08-14 07:45:12.044521: Tweak optimisation finished metric 734.02 cost 756.17 metric_keep 0 cycle 24.7 carbon 0 import 50.03 2026-08-14 07:45:12.065437: Swap charge optimisation started metric 734.02p, cost 756.17p, min_improvement_swap 0.1p 2026-08-14 07:45:15.838606: Swap charge optimisation finished metric 734.02p, cost 756.17p 2026-08-14 07:45:15.851789: Raw charge windows [ 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] reserve 1.12 2026-08-14 07:45:15.852598: Unclipped charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 08:00:00 @ 28.77p 100% ] reserve 1.12 2026-08-14 07:45:15.853036: Unfiltered charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 08:00:00 @ 28.77p 100% ] reserve 1.12 2026-08-14 07:45:15.853377: Filtered charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 08:00:00 @ 28.77p 100% ] reserve 1.12 2026-08-14 07:45:15.886172: Previous plan best metric is 734.15 (cost 756.5) and new plan best metric is 734.02 (cost 756.17) 2026-08-14 07:45:15.886906: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 07:45:15.887131: Plan valid is now true after recompute was False 2026-08-14 07:45:15.910343: predict base end_record 08-15 12:30:00, final soc 1.12kWh, metric 897.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:20:00, load 29.31kWh, PV 0.0kWh 2026-08-14 07:45:16.017189: Battery has 1.58 hours left - now at 2.08kWh 2026-08-14 07:45:16.056938: predict base10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 926.26p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:15:00, load 30.33kWh, PV 0.0kWh 2026-08-14 07:45:16.130332: predict best10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 831.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:15:00, load 30.33kWh, PV 0.0kWh 2026-08-14 07:45:16.204711: predict best end_record 08-15 12:30:00, final soc 1.12kWh, metric 806.49p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:20:00, load 29.31kWh, PV 0.0kWh 2026-08-14 07:45:16.204821: Saving plan best values to HA entities 2026-08-14 07:45:16.338683: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 07:45:16.343347: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 07:45:16.348707: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.11kWh, house 5.74kWh, export 0.0kWh, metric 806.49p, metric10 831.51p 2026-08-14 07:45:16.417209: Marginal costs baseline metric (no standing charge): 756.5017 2026-08-14 07:45:16.636887: Marginal energy costs matrix computed: min=21.8 max=38.94 2026-08-14 07:45:16.702886: Rate array import [{'start': 465, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 28.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2190, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 465, 'end': 2190, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 07:45:16.703594: - Your estimated bill for today is £6.88 and tomorrow is £7.01 2026-08-14 07:45:16.703644: - Import rates are cheap (21.7p - 28.6p) for the next 8 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 07:45:16.703668: - The battery is currently at 13% and is in eco mode for the next 4 and three quarters hours. 2026-08-14 07:45:16.704570: - For the next 48 hours there will be no solar generation. 2026-08-14 07:45:16.704611: - You will run out of battery in 1 and a half hours. 2026-08-14 07:45:16.704627: - Your next charge slot will be in 4 and three quarters hours where import rates will be cheap (22.2p). 2026-08-14 07:45:16.704643: 2026-08-14 07:45:16.759391: Plan calculation took 13.45 seconds 2026-08-14 07:45:16.759702: Inverter 0: Type SK Sunsynk 2026-08-14 07:45:16.759742: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 07:45:16.759975: Reserve min: 7%, battery_min: 7% 2026-08-14 07:45:16.760039: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 07:45:16.760359: Inverter 0 SoC: 2.06kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power 316W, current battery voltage 51.2V, grid power -53W, load power 378W, PV Power 0W 2026-08-14 07:45:16.760551: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:45:16.760638: Inverter 0 scheduled charge enable is False 2026-08-14 07:45:16.760670: Inverter 0 charge windows currently [] 2026-08-14 07:45:16.760697: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 07:45:16.760787: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:45:16.760816: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:45:16.760846: Inverter 0 scheduled discharge enable is False 2026-08-14 07:45:16.760985: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:45:16.761035: Inverter 0 discharge windows currently [] 2026-08-14 07:45:16.761072: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:45:16.761091: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:45:16.761110: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:45:16.807238: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-14 07:45:16.807366: Inverter 0 disabled charge window while waiting for schedule (now 08-14 07:45:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 07:45:16.807426: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:45:16.807599: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:45:16.807666: No export window planned 2026-08-14 07:45:16.807759: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 07:45:16.807787: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:45:16.807915: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:45:16.808052: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 07:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 07:45:16.808111: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 07:45:16.808159: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 07:45:16.808233: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:45:16.808261: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:45:16.808282: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:45:16.808302: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:45:16.808321: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:45:16.808341: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:45:16.808367: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:45:16.808417: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:45:16.808470: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:45:16.808494: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:45:16.808515: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:45:16.808534: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:45:16.808554: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:45:16.808573: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:45:16.808590: Inverter 0 count register writes 0 2026-08-14 07:45:16.828056: Total inverter register writes now 806 2026-08-14 07:45:16.885891: Info: Completed run status Demand 2026-08-14 07:45:16.892730: Info: record_status Demand 2026-08-14 07:45:16.899303: Saved current settings to /config/predbat_config.json 2026-08-14 07:45:16.899589: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 07:45:53.996008: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:45:53.996285: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:45:53.996330: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:45:53.996464: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:45:53.996503: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:45:53.996523: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:45:53.996544: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:47:54.218792: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:47:54.219036: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:47:54.219101: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:47:54.219278: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:47:54.219327: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:47:54.219349: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:47:54.219367: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:49:54.441571: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:49:54.441841: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:49:54.441879: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:49:54.442149: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:49:54.442203: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:49:54.442226: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:49:54.442244: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:50:00.523160: --------------- PredBat - update at 2026-08-14 07:50:00+01:00 with clock skew 0 minutes, minutes now 470 2026-08-14 07:50:00.524272: Saved current settings to /config/predbat_config.json 2026-08-14 07:50:00.524465: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 20.0 minutes 2026-08-14 07:50:00.524653: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 07:50:00.524796: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 07:50:00.546804: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 07:50:00.546929: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 07:50:00.547569: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 07:50:00.547682: Predbat mode is set to Control charge & discharge 2026-08-14 07:50:00.736189: Found 21602 load_today datapoints going back 28 days 2026-08-14 07:50:00.736353: Using load_power data to fill gaps in load_today data 2026-08-14 07:50:01.573777: Processing 721 30-minute periods for power integration 2026-08-14 07:50:01.743892: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 07:50:01.744042: Car charging hold False, threshold 6.0kWh 2026-08-14 07:50:01.744120: Current data so far today: load 7.8kWh, import 8.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 07:50:01.759613: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 07:50:01.760461: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 07:50:01.760554: Standing charge is set to 49.98p 2026-08-14 07:50:01.787811: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 07:50:01.787921: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 07:50:01.788199: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 470.0 minutes 2026-08-14 07:50:01.788593: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 469.8 minutes 2026-08-14 07:50:01.791594: Loaded 47 datapoints of futurerate analysis 2026-08-14 07:50:01.877300: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 07:50:01.939810: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 07:50:01.945305: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 07:50:01.945719: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 07:50:01.986722: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 07:50:01.987104: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 07:50:01.988540: High export rate found rates in range 99p to -99p 2026-08-14 07:50:02.074194: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 07:50:02.074339: Car 0 charging is not planned as it is not plugged in 2026-08-14 07:50:02.087827: Battery level now 2.08kWh, -1hr ago 2.33kWh, at midnight 2.43kWh, battery value change in the last hour -5.78p, change today -8.2p, rate_forward 23.31p 2026-08-14 07:50:02.088228: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.27kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 07:50:02.144853: Today's energy total net 8.3kWh, import 8.3kWh, export 0.0kWh, cost 259.83p, import 209.85p, export 0.0p, carbon 0.0kg 2026-08-14 07:50:02.145027: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 07:50:02.209677: Using weighted-bucket historical load forecast over 14 days 2026-08-14 07:50:02.236767: Today's load divergence 113.25%, in-day adjustment 135.64%, damping 0.95x, yesterday 146.81% today 112.58% blend 67.36% 2026-08-14 07:50:02.236870: Today's predicted so far 2.84kWh with 0.0kWh car/iBoost excluded, 1.63kWh import ignored, and 4.47kWh forecast extra. 2026-08-14 07:50:02.236901: Today's actual load so far 4.74kWh with 0.0kWh car/iBoost excluded, and 3.08kWh import ignored. 2026-08-14 07:50:02.278773: Inverter 0: Type SK Sunsynk 2026-08-14 07:50:02.278863: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 07:50:02.279116: Reserve min: 7%, battery_min: 7% 2026-08-14 07:50:02.279218: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 07:50:02.279529: Inverter 0 SoC: 1.92kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 265W, current battery voltage 51.2V, grid power -54W, load power 326W, PV Power 0W 2026-08-14 07:50:02.279725: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:50:02.279858: Inverter 0 scheduled charge enable is False 2026-08-14 07:50:02.279906: Inverter 0 charge windows currently [] 2026-08-14 07:50:02.279964: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 07:50:02.280139: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:50:02.280183: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:50:02.280222: Inverter 0 scheduled discharge enable is False 2026-08-14 07:50:02.280382: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:50:02.280445: Inverter 0 discharge windows currently [] 2026-08-14 07:50:02.280495: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:50:02.280520: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:50:02.280538: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:50:02.345650: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 07:50:02.345757: Plan was last updated on 2026-08-14 07:45:00+01:00 and is now 5.0 minutes old 2026-08-14 07:50:02.346055: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 07:50:02.346118: Best export window [ ] 2026-08-14 07:50:02.346912: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 07:50:02.350145: Load divergence over 8.0 hours mean 457.86W, min 235.2W, max 1260.6W, std dev 174.45W, divergence 19.05% 2026-08-14 07:50:02.364273: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 07:50:02.364838: LoadML is_calculating False 2026-08-14 07:50:02.364926: Creating pool of 12 processes to match your CPU count 2026-08-14 07:50:02.486037: predict base end_record 08-15 12:35:00, final soc 1.12kWh, metric 901.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:10:00, load 29.28kWh, PV 0.0kWh 2026-08-14 07:50:02.608176: Battery has 1.33 hours left - now at 1.92kWh 2026-08-14 07:50:02.653796: predict base10 end_record 08-15 12:35:00, final soc 1.12kWh, metric 930.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:05:00, load 30.3kWh, PV 0.0kWh 2026-08-14 07:50:02.734857: predict best10 end_record 08-15 12:35:00, final soc 1.44kWh, metric 843.16p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:05:00, load 30.3kWh, PV 0.0kWh 2026-08-14 07:50:02.822925: predict best end_record 08-15 12:35:00, final soc 1.51kWh, metric 819.68p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:10:00, load 29.28kWh, PV 0.0kWh 2026-08-14 07:50:02.823019: Saving plan best values to HA entities 2026-08-14 07:50:03.015346: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 07:50:03.022528: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 07:50:03.028774: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.13kWh, house 5.84kWh, export 0.0kWh, metric 819.68p, metric10 843.16p 2026-08-14 07:50:03.112682: Marginal costs baseline metric (no standing charge): 769.7004 2026-08-14 07:50:03.349803: Marginal energy costs matrix computed: min=21.82 max=39.22 2026-08-14 07:50:03.427286: Rate array import [{'start': 470, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 28.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2195, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 470, 'end': 2195, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 07:50:03.428242: - Your estimated bill for today is £6.91 and tomorrow is £7.02 2026-08-14 07:50:03.428325: - Import rates are cheap (21.7p - 28.6p) for the next 8 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 07:50:03.428359: - The battery is currently at 12% and is in eco mode for the next 4 and three quarters hours. 2026-08-14 07:50:03.428387: - For the next 48 hours there will be no solar generation. 2026-08-14 07:50:03.428417: - You will run out of battery in 1 and a quarter hours. 2026-08-14 07:50:03.428458: - Your next charge slot will be in 4 and three quarters hours where import rates will be cheap (22.2p). 2026-08-14 07:50:03.428477: 2026-08-14 07:50:03.492701: Plan calculation took 1.15 seconds 2026-08-14 07:50:03.496381: No high rate period found 2026-08-14 07:50:03.552914: Import threshold used for optimisation was 24.8p 2026-08-14 07:50:03.621936: Low import rate windows [0: 08-14 07:30:00 - 08-14 08:00:00 @ 28.58, 1: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 2: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 3: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 4: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 5: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 6: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 7: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 8: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 9: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 10: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 11: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 12: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 13: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 14: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 15: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 16: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 17: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 18: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 19: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 20: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 21: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 22: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 23: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 24: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 25: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 26: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 27: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 28: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 29: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 30: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 31: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 32: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 33: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 34: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 35: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 36: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 37: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 38: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 39: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 40: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 41: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 42: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 43: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 44: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 45: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 46: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 47: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 48: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 49: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 50: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 51: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 52: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 53: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 54: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 55: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 56: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 57: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 58: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 59: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 60: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 61: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 62: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 63: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 64: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 65: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 66: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 67: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 68: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 69: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 70: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 71: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 72: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 73: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 74: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 75: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 76: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 77: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 78: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 79: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 80: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 81: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 82: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 83: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 84: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 85: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 86: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 87: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 88: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 89: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 90: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 91: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 92: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 93: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 94: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58] 2026-08-14 07:50:03.631006: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 07:50:03.631179: Inverter 0 disabled charge window while waiting for schedule (now 08-14 07:50:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 07:50:03.631300: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:50:03.631551: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:50:03.631649: No export window planned 2026-08-14 07:50:03.631776: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 07:50:03.631818: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:50:03.631974: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:50:03.632196: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 07:50:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 07:50:03.632260: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 07:50:03.632348: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 07:50:03.632451: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:50:03.632492: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:50:03.632519: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:50:03.632564: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:50:03.632592: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:50:03.632623: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:50:03.632648: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:50:03.632719: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:50:03.632749: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:50:03.632774: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:50:03.632807: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:50:03.632833: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:50:03.632857: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:50:03.632888: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:50:03.632914: Inverter 0 count register writes 0 2026-08-14 07:50:03.652307: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 07:50:03.658065: Total inverter register writes now 806 2026-08-14 07:50:03.696777: Info: Completed run status Demand 2026-08-14 07:50:03.703630: Info: record_status Demand 2026-08-14 07:50:03.711281: Saved current settings to /config/predbat_config.json 2026-08-14 07:50:03.711648: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 07:50:38.823827: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:50:38.824072: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:50:38.824144: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:50:38.824290: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:50:38.824336: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:50:38.824359: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:50:38.824376: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:52:39.058524: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:52:39.058838: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:52:39.058913: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:52:39.059149: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:52:39.059224: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:52:39.059254: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:52:39.059310: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:54:39.281423: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:54:39.281647: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:54:39.281687: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:54:39.281810: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:54:39.281861: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:54:39.281878: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:54:39.281892: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:55:00.390622: --------------- PredBat - update at 2026-08-14 07:55:00+01:00 with clock skew 0 minutes, minutes now 475 2026-08-14 07:55:00.391959: Saved current settings to /config/predbat_config.json 2026-08-14 07:55:00.392256: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 25.0 minutes 2026-08-14 07:55:00.392367: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 07:55:00.392572: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 07:55:00.416168: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 07:55:00.416317: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 07:55:00.416925: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 07:55:00.417065: Predbat mode is set to Control charge & discharge 2026-08-14 07:55:00.611108: Found 21602 load_today datapoints going back 28 days 2026-08-14 07:55:00.611281: Using load_power data to fill gaps in load_today data 2026-08-14 07:55:01.462381: Processing 721 30-minute periods for power integration 2026-08-14 07:55:01.625884: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 07:55:01.626028: Car charging hold False, threshold 6.0kWh 2026-08-14 07:55:01.626071: Current data so far today: load 7.8kWh, import 8.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 07:55:01.641897: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 07:55:01.643071: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 07:55:01.643222: Standing charge is set to 49.98p 2026-08-14 07:55:01.675251: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 07:55:01.675400: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 07:55:01.675692: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 475.0 minutes 2026-08-14 07:55:01.676400: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 474.8 minutes 2026-08-14 07:55:01.681999: Loaded 47 datapoints of futurerate analysis 2026-08-14 07:55:01.759024: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 07:55:01.806896: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 07:55:01.811378: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 07:55:01.811751: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 07:55:01.844974: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 07:55:01.845111: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 07:55:01.846217: High export rate found rates in range 99p to -99p 2026-08-14 07:55:01.914255: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 07:55:01.914394: Car 0 charging is not planned as it is not plugged in 2026-08-14 07:55:01.926462: Battery level now 1.92kWh, -1hr ago 2.33kWh, at midnight 2.43kWh, battery value change in the last hour -9.51p, change today -11.93p, rate_forward 23.31p 2026-08-14 07:55:01.926776: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.25kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 07:55:01.975567: Today's energy total net 8.3kWh, import 8.3kWh, export 0.0kWh, cost 259.83p, import 209.85p, export 0.0p, carbon 0.0kg 2026-08-14 07:55:01.975694: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 07:55:02.041167: Using weighted-bucket historical load forecast over 14 days 2026-08-14 07:55:02.062643: Today's load divergence 113.93%, in-day adjustment 135.73%, damping 0.95x, yesterday 146.81% today 113.23% blend 67.01% 2026-08-14 07:55:02.062722: Today's predicted so far 2.91kWh with 0.0kWh car/iBoost excluded, 1.58kWh import ignored, and 4.49kWh forecast extra. 2026-08-14 07:55:02.062750: Today's actual load so far 4.94kWh with 0.0kWh car/iBoost excluded, and 2.84kWh import ignored. 2026-08-14 07:55:02.107922: Inverter 0: Type SK Sunsynk 2026-08-14 07:55:02.108016: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 07:55:02.108235: Reserve min: 7%, battery_min: 7% 2026-08-14 07:55:02.108313: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 07:55:02.108593: Inverter 0 SoC: 1.92kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 301W, current battery voltage 51.2V, grid power -55W, load power 366W, PV Power 0W 2026-08-14 07:55:02.108774: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:55:02.108871: Inverter 0 scheduled charge enable is False 2026-08-14 07:55:02.108907: Inverter 0 charge windows currently [] 2026-08-14 07:55:02.108935: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 07:55:02.109078: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:55:02.109118: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:55:02.109177: Inverter 0 scheduled discharge enable is False 2026-08-14 07:55:02.109308: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:55:02.109346: Inverter 0 discharge windows currently [] 2026-08-14 07:55:02.109370: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:55:02.109389: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:55:02.109406: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:55:02.180938: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 07:55:02.181085: Plan was last updated on 2026-08-14 07:45:00+01:00 and is now 10.0 minutes old 2026-08-14 07:55:02.181381: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 07:55:02.181427: Best export window [ ] 2026-08-14 07:55:02.182269: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 07:55:02.185620: Load divergence over 8.0 hours mean 456.37W, min 247.2W, max 1439.4W, std dev 195.99W, divergence 21.47% 2026-08-14 07:55:02.199205: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 07:55:02.199327: LoadML is_calculating False 2026-08-14 07:55:02.199387: Creating pool of 12 processes to match your CPU count 2026-08-14 07:55:02.299001: predict base end_record 08-15 12:40:00, final soc 1.12kWh, metric 901.59p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:15:00, load 29.3kWh, PV 0.0kWh 2026-08-14 07:55:02.408779: Battery has 1.33 hours left - now at 1.92kWh 2026-08-14 07:55:02.460834: predict base10 end_record 08-15 12:40:00, final soc 1.12kWh, metric 930.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:15:00, load 30.33kWh, PV 0.0kWh 2026-08-14 07:55:02.533601: predict best10 end_record 08-15 12:40:00, final soc 1.77kWh, metric 851.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:15:00, load 30.33kWh, PV 0.0kWh 2026-08-14 07:55:02.607703: predict best end_record 08-15 12:40:00, final soc 1.9kWh, metric 829.35p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:15:00, load 29.3kWh, PV 0.0kWh 2026-08-14 07:55:02.607795: Saving plan best values to HA entities 2026-08-14 07:55:02.754379: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 07:55:02.759109: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 07:55:02.764211: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.14kWh, house 5.79kWh, export 0.0kWh, metric 829.35p, metric10 851.33p 2026-08-14 07:55:02.826519: Marginal costs baseline metric (no standing charge): 779.3716 2026-08-14 07:55:03.052390: Marginal energy costs matrix computed: min=21.84 max=39.48 2026-08-14 07:55:03.128558: Rate array import [{'start': 475, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 28.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2200, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 475, 'end': 2200, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 07:55:03.129327: - Your estimated bill for today is £6.90 and tomorrow is £7.02 2026-08-14 07:55:03.129598: - Import rates are cheap (21.7p - 28.6p) for the next 8 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 07:55:03.129637: - The battery is currently at 12% and is in eco mode for the next 4 and a half hours. 2026-08-14 07:55:03.129655: - For the next 48 hours there will be no solar generation. 2026-08-14 07:55:03.129675: - You will run out of battery in 1 and a quarter hours. 2026-08-14 07:55:03.129701: - Your next charge slot will be in 4 and a half hours where import rates will be cheap (22.2p). 2026-08-14 07:55:03.129733: 2026-08-14 07:55:03.181932: Plan calculation took 1.00 seconds 2026-08-14 07:55:03.185334: No high rate period found 2026-08-14 07:55:03.233035: Import threshold used for optimisation was 24.8p 2026-08-14 07:55:03.286003: Low import rate windows [0: 08-14 07:30:00 - 08-14 08:00:00 @ 28.58, 1: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 2: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 3: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 4: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 5: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 6: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 7: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 8: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 9: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 10: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 11: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 12: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 13: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 14: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 15: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 16: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 17: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 18: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 19: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 20: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 21: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 22: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 23: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 24: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 25: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 26: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 27: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 28: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 29: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 30: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 31: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 32: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 33: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 34: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 35: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 36: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 37: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 38: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 39: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 40: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 41: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 42: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 43: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 44: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 45: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 46: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 47: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 48: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 49: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 50: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 51: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 52: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 53: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 54: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 55: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 56: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 57: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 58: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 59: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 60: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 61: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 62: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 63: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 64: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 65: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 66: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 67: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 68: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 69: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 70: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 71: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 72: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 73: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 74: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 75: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 76: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 77: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 78: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 79: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 80: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 81: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 82: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 83: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 84: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 85: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 86: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 87: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 88: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 89: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 90: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 91: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 92: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 93: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 94: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58] 2026-08-14 07:55:03.293807: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 07:55:03.293972: Inverter 0 disabled charge window while waiting for schedule (now 08-14 07:55:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 07:55:03.294103: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:55:03.294375: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:55:03.294475: No export window planned 2026-08-14 07:55:03.294602: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 07:55:03.294645: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:55:03.294784: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:55:03.294984: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 07:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 07:55:03.295044: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 07:55:03.295110: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 07:55:03.295225: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:55:03.295267: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:55:03.295296: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:55:03.295323: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:55:03.295348: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:55:03.295371: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:55:03.295395: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:55:03.295458: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:55:03.295490: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:55:03.295514: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:55:03.295537: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:55:03.295561: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:55:03.295584: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:55:03.295607: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:55:03.295628: Inverter 0 count register writes 0 2026-08-14 07:55:03.311641: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 07:55:03.311832: Recompute is saving previous plan... 2026-08-14 07:55:03.315125: Best charge window [ 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 0% ] 2026-08-14 07:55:03.315235: Best export window [ ] 2026-08-14 07:55:03.316068: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 07:55:03.319219: Load divergence over 8.0 hours mean 456.37W, min 247.2W, max 1439.4W, std dev 195.99W, divergence 21.47% 2026-08-14 07:55:03.331963: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 07:55:03.332072: LoadML is_calculating False 2026-08-14 07:55:03.332171: Creating pool of 12 processes to match your CPU count 2026-08-14 07:55:03.429245: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 07:55:03.431328: Optimise levels pass started at 2026-08-14 07:55:03 2026-08-14 07:55:03.431397: Optimise all windows, total charge 94 export 1 2026-08-14 07:55:03.743523: >> Region optimisation pass width 960 2026-08-14 07:55:04.164892: >> Region optimisation pass width 480 2026-08-14 07:55:04.589467: >> Region optimisation pass width 240 2026-08-14 07:55:05.166090: >> Region optimisation pass width 120 2026-08-14 07:55:06.570182: Calculated end_record as 08-15 12:30:00 based on best_price 22.25p, next_charge_start 08-14 12:30:00, max_windows 57 2026-08-14 07:55:06.570397: Optimise levels pass ended at 2026-08-14 07:55:06, duration 3.1 seconds tried 326 combinations 2026-08-14 07:55:06.570683: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1031.09p, best_keep 0kWh, best_cycle 48.43kWh, best_carbon 0kg, best_import 37.82kWh 2026-08-14 07:55:06.590529: Starting detailed optimisation end_record 08-15 12:30:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 07:55:06.592462: Best charge windows best_metric 736.16p, best_cost 758.2p, best_carbon 0kg, best_import 50.26kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:55:06.592577: Best export windows best_metric 736.16p, best_cost 758.2p, best_carbon 0kg, best_import 50.26kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:55:06.592758: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 736.16p, best_cost 758.2p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.26kWh 2026-08-14 07:55:06.677713: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 736.06p, best_cost 758.08p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.26kWh 2026-08-14 07:55:06.802256: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 736.06p, best_cost 758.08p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.26kWh 2026-08-14 07:55:06.965965: Best charge windows best_metric 736.06p, best_cost 758.08p, best_carbon 0kg, best_import 50.26kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:55:06.966340: Best export windows best_metric 736.06p, best_cost 758.08p, best_carbon 0kg, best_import 50.26kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:55:06.967855: Best charge windows best_metric 736.06p, best_cost 758.08p, best_carbon 0kg, best_import 50.26kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:55:06.968118: Best export windows best_metric 736.06p, best_cost 758.08p, best_carbon 0kg, best_import 50.26kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:55:06.968264: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 736.06p, best_cost 758.08p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.26kWh 2026-08-14 07:55:07.202007: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 736.06p, best_cost 758.08p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.26kWh 2026-08-14 07:55:07.300546: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 736.04p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:07.455659: Best charge windows best_metric 736.04p, best_cost 758.35p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 88%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:55:07.455980: Best export windows best_metric 736.04p, best_cost 758.35p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:55:07.457861: Best charge windows best_metric 736.04p, best_cost 758.35p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 88%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:55:07.458038: Best export windows best_metric 736.04p, best_cost 758.35p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:55:07.458252: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 736.04p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:07.544737: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 736.04p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:07.633443: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 736.04p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:07.783228: Best charge windows best_metric 736.04p, best_cost 758.35p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 88%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:55:07.783423: Best export windows best_metric 736.04p, best_cost 758.35p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:55:07.783641: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 736.04p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:07.909553: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 736.04p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:07.998485: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 736.04p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:08.212359: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 736.04p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:08.282553: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 736.04p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:08.369378: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 736.04p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:08.442343: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 736.04p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:08.514787: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 736.04p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:08.646634: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:08.875633: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:08.919537: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:08.955835: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:08.997840: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.061469: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.112192: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.197531: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.233432: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.311940: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.365058: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.406498: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.462775: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.515314: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.560913: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.616199: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.672431: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.720804: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.769046: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.814986: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.849453: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.879783: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.931293: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:09.981108: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:10.024082: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:10.069897: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:10.105307: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:10.148435: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:10.184329: Best charge windows best_metric 735.97p, best_cost 758.35p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 88%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:55:10.184681: Best export windows best_metric 735.97p, best_cost 758.35p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:55:10.186326: Best charge windows best_metric 735.97p, best_cost 758.35p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 88%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:55:10.186474: Best export windows best_metric 735.97p, best_cost 758.35p, best_carbon 0kg, best_import 50.33kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:55:10.186634: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:10.228101: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:10.315306: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 735.97p, best_cost 758.35p, best_cycle 26.55kWh, best_carbon 0kg, best_import 50.33kWh 2026-08-14 07:55:10.414926: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 735.75p, best_cost 757.94p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.26kWh 2026-08-14 07:55:10.571574: Best charge windows best_metric 735.75p, best_cost 757.94p, best_carbon 0kg, best_import 50.26kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:55:10.571769: Best export windows best_metric 735.75p, best_cost 757.94p, best_carbon 0kg, best_import 50.26kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:55:10.571954: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 735.75p, best_cost 757.94p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.26kWh 2026-08-14 07:55:10.622701: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 735.75p, best_cost 757.94p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.26kWh 2026-08-14 07:55:10.864816: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 735.75p, best_cost 757.94p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.26kWh 2026-08-14 07:55:10.953435: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 735.75p, best_cost 757.94p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.26kWh 2026-08-14 07:55:11.086185: Best charge windows best_metric 735.74p, best_cost 757.94p, best_carbon 0kg, best_import 50.26kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:55:11.086498: Best export windows best_metric 735.74p, best_cost 757.94p, best_carbon 0kg, best_import 50.26kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:55:11.088087: Best charge windows best_metric 735.74p, best_cost 757.94p, best_carbon 0kg, best_import 50.26kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:55:11.088234: Best export windows best_metric 735.74p, best_cost 757.94p, best_carbon 0kg, best_import 50.26kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:55:11.088356: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 735.74p, best_cost 757.94p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.26kWh 2026-08-14 07:55:11.135848: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 735.74p, best_cost 757.94p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.26kWh 2026-08-14 07:55:11.220762: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 735.74p, best_cost 757.94p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.26kWh 2026-08-14 07:55:11.318007: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 735.74p, best_cost 757.94p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.26kWh 2026-08-14 07:55:11.440601: Best charge windows best_metric 735.74p, best_cost 757.94p, best_carbon 0kg, best_import 50.26kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:55:11.440930: Best export windows best_metric 735.74p, best_cost 757.94p, best_carbon 0kg, best_import 50.26kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:55:11.441120: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 735.74p, best_cost 757.94p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.26kWh 2026-08-14 07:55:11.477223: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 735.74p, best_cost 757.94p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.26kWh 2026-08-14 07:55:11.681495: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 735.74p, best_cost 757.94p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.26kWh 2026-08-14 07:55:11.761367: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 735.74p, best_cost 757.94p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.26kWh 2026-08-14 07:55:11.880981: Best charge windows best_metric 735.74p, best_cost 757.94p, best_carbon 0kg, best_import 50.26kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] 2026-08-14 07:55:11.881163: Best export windows best_metric 735.74p, best_cost 757.94p, best_carbon 0kg, best_import 50.26kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 07:55:11.881566: Tweak plan optimisation started 2026-08-14 07:55:12.141320: Tweak optimisation finished metric 735.75 cost 757.94 metric_keep 0 cycle 25.55 carbon 0 import 50.26 2026-08-14 07:55:12.161165: Swap charge optimisation started metric 735.75p, cost 757.94p, min_improvement_swap 0.1p 2026-08-14 07:55:16.199511: Swap charge optimisation finished metric 735.75p, cost 757.94p 2026-08-14 07:55:16.215661: Raw charge windows [ 14-08 07:30:00 - 14-08 08:00:00 @ 28.58p 0%, 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100% ] reserve 1.12 2026-08-14 07:55:16.216396: Unclipped charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 08:00:00 @ 28.77p 100% ] reserve 1.12 2026-08-14 07:55:16.216737: Unfiltered charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 08:00:00 @ 28.77p 100% ] reserve 1.12 2026-08-14 07:55:16.217072: Filtered charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 08:00:00 @ 28.77p 100% ] reserve 1.12 2026-08-14 07:55:16.256146: Previous plan best metric is 735.6 (cost 757.97) and new plan best metric is 735.75 (cost 757.94) 2026-08-14 07:55:16.256428: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 07:55:16.256699: Plan valid is now true after recompute was False 2026-08-14 07:55:16.289163: predict base end_record 08-15 12:30:00, final soc 1.12kWh, metric 898.68p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:15:00, load 29.17kWh, PV 0.0kWh 2026-08-14 07:55:16.407444: Battery has 1.33 hours left - now at 1.92kWh 2026-08-14 07:55:16.461233: predict base10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 927.57p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:15:00, load 30.19kWh, PV 0.0kWh 2026-08-14 07:55:16.551715: predict best10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 832.87p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:15:00, load 30.19kWh, PV 0.0kWh 2026-08-14 07:55:16.634481: predict best end_record 08-15 12:30:00, final soc 1.12kWh, metric 807.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:15:00, load 29.17kWh, PV 0.0kWh 2026-08-14 07:55:16.634580: Saving plan best values to HA entities 2026-08-14 07:55:16.799170: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 07:55:16.805747: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 07:55:16.811617: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.14kWh, house 5.79kWh, export 0.0kWh, metric 807.95p, metric10 832.87p 2026-08-14 07:55:16.909630: Marginal costs baseline metric (no standing charge): 757.9697 2026-08-14 07:55:17.156862: Marginal energy costs matrix computed: min=21.84 max=39.48 2026-08-14 07:55:17.224673: Rate array import [{'start': 475, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 28.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2190, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 475, 'end': 2190, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 07:55:17.225458: - Your estimated bill for today is £6.90 and tomorrow is £7.02 2026-08-14 07:55:17.225520: - Import rates are cheap (21.7p - 28.6p) for the next 8 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 07:55:17.225562: - The battery is currently at 12% and is in eco mode for the next 4 and a half hours. 2026-08-14 07:55:17.225601: - For the next 48 hours there will be no solar generation. 2026-08-14 07:55:17.225872: - You will run out of battery in 1 and a quarter hours. 2026-08-14 07:55:17.225913: - Your next charge slot will be in 4 and a half hours where import rates will be cheap (22.2p). 2026-08-14 07:55:17.225945: 2026-08-14 07:55:17.280679: Plan calculation took 13.97 seconds 2026-08-14 07:55:17.281064: Inverter 0: Type SK Sunsynk 2026-08-14 07:55:17.281123: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 07:55:17.281415: Reserve min: 7%, battery_min: 7% 2026-08-14 07:55:17.281490: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 07:55:17.281844: Inverter 0 SoC: 1.92kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 306W, current battery voltage 51.2V, grid power -55W, load power 371W, PV Power 0W 2026-08-14 07:55:17.282094: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:55:17.282234: Inverter 0 scheduled charge enable is False 2026-08-14 07:55:17.282276: Inverter 0 charge windows currently [] 2026-08-14 07:55:17.282311: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 07:55:17.282536: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:55:17.282602: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:55:17.282689: Inverter 0 scheduled discharge enable is False 2026-08-14 07:55:17.282907: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:55:17.282953: Inverter 0 discharge windows currently [] 2026-08-14 07:55:17.283005: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:55:17.283052: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:55:17.283080: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:55:17.340561: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 07:55:17.340735: Inverter 0 disabled charge window while waiting for schedule (now 08-14 07:55:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 07:55:17.340836: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:55:17.341073: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:55:17.341191: No export window planned 2026-08-14 07:55:17.341346: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 07:55:17.341397: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 07:55:17.341554: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 07:55:17.341735: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 07:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 07:55:17.341790: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 07:55:17.341870: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 07:55:17.341985: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:55:17.342042: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:55:17.342108: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:55:17.342162: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:55:17.342194: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:55:17.342222: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:55:17.342255: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 07:55:17.342324: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:55:17.342362: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:55:17.342390: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:55:17.342417: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:55:17.342449: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:55:17.342476: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:55:17.342503: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 07:55:17.342533: Inverter 0 count register writes 0 2026-08-14 07:55:17.362343: Total inverter register writes now 806 2026-08-14 07:55:17.392813: Info: Completed run status Demand 2026-08-14 07:55:17.399989: Info: record_status Demand 2026-08-14 07:55:17.406270: Saved current settings to /config/predbat_config.json 2026-08-14 07:55:17.406566: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 07:55:54.508373: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:55:54.508639: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:55:54.508721: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:55:54.508924: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:55:54.508998: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:55:54.509038: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:55:54.509122: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 07:56:16.056029: Info: HAHistory: Pruning history data started. 2026-08-14 07:56:16.059874: Info: HAHistory: Pruning history data completed. 2026-08-14 07:58:08.738617: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 07:58:08.738940: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 07:58:08.738978: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 07:58:08.739139: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 07:58:08.739191: Note: Inverter does not support discharge freeze - disabled 2026-08-14 07:58:08.739213: Note: Inverter does not support charge freeze - disabled 2026-08-14 07:58:08.739230: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:00:00.940692: --------------- PredBat - update at 2026-08-14 08:00:00+01:00 with clock skew 0 minutes, minutes now 480 2026-08-14 08:00:00.941511: Saved current settings to /config/predbat_config.json 2026-08-14 08:00:00.941661: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 30.0 minutes 2026-08-14 08:00:00.941738: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 08:00:00.941867: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 08:00:00.961213: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 08:00:00.961358: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 08:00:00.962102: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 08:00:00.962275: Predbat mode is set to Control charge & discharge 2026-08-14 08:00:01.147873: Found 21602 load_today datapoints going back 27 days 2026-08-14 08:00:01.148005: Using load_power data to fill gaps in load_today data 2026-08-14 08:00:01.925002: Processing 721 30-minute periods for power integration 2026-08-14 08:00:02.133436: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 08:00:02.133588: Car charging hold False, threshold 6.0kWh 2026-08-14 08:00:02.133635: Current data so far today: load 7.93kWh, import 8.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 08:00:02.149706: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 08:00:02.150546: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 08:00:02.150641: Standing charge is set to 49.98p 2026-08-14 08:00:02.172623: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 08:00:02.172731: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 08:00:02.172927: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 480.0 minutes 2026-08-14 08:00:02.173344: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 479.8 minutes 2026-08-14 08:00:02.176384: Loaded 47 datapoints of futurerate analysis 2026-08-14 08:00:02.254003: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 08:00:02.316982: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 08:00:02.323006: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 08:00:02.323448: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 08:00:02.370777: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 08:00:02.370958: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 08:00:02.373429: High export rate found rates in range 99p to -99p 2026-08-14 08:00:02.448576: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 08:00:02.448724: Car 0 charging is not planned as it is not plugged in 2026-08-14 08:00:02.461371: Battery level now 1.92kWh, -1hr ago 2.24kWh, at midnight 2.43kWh, battery value change in the last hour -7.46p, change today -11.93p, rate_forward 23.31p 2026-08-14 08:00:02.461900: Last hour: net energy 0.05kWh, import 0.05kWh, export 0.0kWh, car 0kWh, load 0.35kWh, net cost 1.3p, import 1.3p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 08:00:02.518438: Today's energy total net 8.4kWh, import 8.4kWh, export 0.0kWh, cost 262.75p, import 212.77p, export 0.0p, carbon 0.0kg 2026-08-14 08:00:02.518584: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 08:00:02.594372: Using weighted-bucket historical load forecast over 14 days 2026-08-14 08:00:02.614810: Today's load divergence 113.79%, in-day adjustment 135.57%, damping 0.95x, yesterday 146.81% today 113.1% blend 66.67% 2026-08-14 08:00:02.614916: Today's predicted so far 3.16kWh with 0.0kWh car/iBoost excluded, 1.42kWh import ignored, and 4.58kWh forecast extra. 2026-08-14 08:00:02.614960: Today's actual load so far 5.19kWh with 0.0kWh car/iBoost excluded, and 2.81kWh import ignored. 2026-08-14 08:00:02.653288: Inverter 0: Type SK Sunsynk 2026-08-14 08:00:02.653381: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 08:00:02.653578: Reserve min: 7%, battery_min: 7% 2026-08-14 08:00:02.653648: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 08:00:02.653906: Inverter 0 SoC: 1.92kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 259W, current battery voltage 51.2V, grid power -54W, load power 323W, PV Power 0W 2026-08-14 08:00:02.654060: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:00:02.654149: Inverter 0 scheduled charge enable is False 2026-08-14 08:00:02.654179: Inverter 0 charge windows currently [] 2026-08-14 08:00:02.654205: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 08:00:02.654308: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:00:02.654344: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:00:02.654380: Inverter 0 scheduled discharge enable is False 2026-08-14 08:00:02.654522: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:00:02.654560: Inverter 0 discharge windows currently [] 2026-08-14 08:00:02.654583: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:00:02.654606: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:00:02.654623: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:00:02.719253: Dynamic load last period 0.30kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 08:00:02.719361: Plan was last updated on 2026-08-14 07:55:00+01:00 and is now 5.0 minutes old 2026-08-14 08:00:02.719643: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 08:00:02.719687: Best export window [ ] 2026-08-14 08:00:02.720503: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 08:00:02.723645: Load divergence over 8.0 hours mean 454.68W, min 239.4W, max 1403.4W, std dev 187.9W, divergence 20.66% 2026-08-14 08:00:02.737808: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 08:00:02.737960: LoadML is_calculating False 2026-08-14 08:00:02.738033: Creating pool of 12 processes to match your CPU count 2026-08-14 08:00:02.869406: predict base end_record 08-15 12:35:00, final soc 1.12kWh, metric 900.66p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:20:00, load 29.27kWh, PV 0.0kWh 2026-08-14 08:00:03.021109: Battery has 1.33 hours left - now at 1.92kWh 2026-08-14 08:00:03.064096: predict base10 end_record 08-15 12:35:00, final soc 1.12kWh, metric 929.49p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:15:00, load 30.29kWh, PV 0.0kWh 2026-08-14 08:00:03.140150: predict best10 end_record 08-15 12:35:00, final soc 1.44kWh, metric 842.77p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:15:00, load 30.29kWh, PV 0.0kWh 2026-08-14 08:00:03.228923: predict best end_record 08-15 12:35:00, final soc 1.51kWh, metric 819.48p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:20:00, load 29.27kWh, PV 0.0kWh 2026-08-14 08:00:03.229082: Saving plan best values to HA entities 2026-08-14 08:00:03.408372: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 08:00:03.414756: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 08:00:03.420713: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.12kWh, house 5.71kWh, export 0.0kWh, metric 819.48p, metric10 842.77p 2026-08-14 08:00:03.544527: Marginal costs baseline metric (no standing charge): 769.4917 2026-08-14 08:00:03.856128: Marginal energy costs matrix computed: min=21.86 max=39.75 2026-08-14 08:00:03.960537: Rate array import [{'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.8p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2195, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 480, 'end': 2195, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 08:00:03.961437: - Your estimated bill for today is £6.91 and tomorrow is £6.99 2026-08-14 08:00:03.961498: - Import rates are cheap (21.7p - 24.8p) for the next 8 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 08:00:03.961521: - The battery is currently at 12% and is in eco mode for the next 4 and a half hours. 2026-08-14 08:00:03.961540: - For the next 48 hours there will be no solar generation. 2026-08-14 08:00:03.961557: - You will run out of battery in 1 and a quarter hours. 2026-08-14 08:00:03.961574: - Your next charge slot will be in 4 and a half hours where import rates will be cheap (22.2p). 2026-08-14 08:00:03.961591: 2026-08-14 08:00:04.031020: Plan calculation took 1.31 seconds 2026-08-14 08:00:04.034886: No high rate period found 2026-08-14 08:00:04.091658: Import threshold used for optimisation was 24.64p 2026-08-14 08:00:04.157404: Low import rate windows [0: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 1: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 2: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 3: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 4: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 5: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 6: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 7: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 8: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 9: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 10: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 11: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 12: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 13: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 14: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 15: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 16: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 17: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 18: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 19: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 20: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 21: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 22: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 23: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 24: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 25: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 26: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 27: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 28: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 29: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 30: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 31: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 32: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 33: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 34: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 35: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 36: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 37: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 38: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 39: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 40: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 41: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 42: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 43: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 44: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 45: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 46: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 47: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 48: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 49: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 50: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 51: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 52: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 53: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 54: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 55: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 56: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 57: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 58: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 59: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 60: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 61: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 62: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 63: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 64: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 65: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 66: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 67: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 68: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 69: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 70: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 71: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 72: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 73: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 74: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 75: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 76: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 77: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 78: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 79: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 80: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 81: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 82: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 83: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 84: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 85: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 86: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 87: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 88: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 89: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 90: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 91: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 92: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 93: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58] 2026-08-14 08:00:04.166217: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 08:00:04.166362: Inverter 0 disabled charge window while waiting for schedule (now 08-14 08:00:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 08:00:04.166533: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:00:04.166835: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:00:04.167001: No export window planned 2026-08-14 08:00:04.167213: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 08:00:04.167264: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:00:04.167492: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:00:04.167744: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 08:00:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 08:00:04.167813: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 08:00:04.167915: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 08:00:04.168079: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:00:04.168142: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:00:04.168182: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:00:04.168244: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:00:04.168308: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:00:04.168365: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:00:04.168445: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:00:04.168580: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:00:04.168637: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:00:04.168696: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:00:04.168748: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:00:04.168810: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:00:04.168872: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:00:04.168932: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:00:04.169008: Inverter 0 count register writes 0 2026-08-14 08:00:04.186780: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 08:00:04.192272: Total inverter register writes now 806 2026-08-14 08:00:04.228736: Info: Completed run status Demand 2026-08-14 08:00:04.236163: Info: record_status Demand 2026-08-14 08:00:04.243676: Saved current settings to /config/predbat_config.json 2026-08-14 08:00:04.244069: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 08:00:39.361826: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:00:39.362100: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:00:39.362148: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:00:39.362296: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:00:39.362375: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:00:39.362401: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:00:39.362419: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:02:39.595407: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:02:39.595626: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:02:39.595676: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:02:39.595820: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:02:39.595853: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:02:39.595871: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:02:39.595885: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:04:12.676861: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 08:04:13.646047: Processing 1297 30-minute periods for power integration 2026-08-14 08:04:13.750095: ML Component: Car charging hold False, car energy reported load False 2026-08-14 08:04:13.859549: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 08:04:13.942721: ML Temperature data points: 48481 2026-08-14 08:04:14.229081: ML Component: Fetched 7776 load data points, 27.0 days of history 2026-08-14 08:04:14.272434: ML Component: Data fetch completed, load data age 55.0 days, 16078 data points 2026-08-14 08:04:14.272572: ML Component: No training needed, model age is 0.67 hours 2026-08-14 08:04:14.272641: ML Component: Generating predictions load data age 55.0 days, 16078 data points 2026-08-14 08:04:14.421519: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0264 max_dow {0: 0.10909062506761402, 1: 0.09740000026300549, 2: 0.11353750061187895, 3: 0.11734375001909211, 4: 0.16123125033210967, 5: 0.09046249974276871, 6: 0.1105406252272427} 2026-08-14 08:04:14.842604: ML Component: Generated 576 predictions (total 38.53 kWh over 48h) 2026-08-14 08:04:14.884124: ML Component: Prediction cycle completed 2026-08-14 08:04:15.022644: ML Component: Saved 16078 steps (55 days) of history to /config/predbat_ml_history.npz 2026-08-14 08:04:53.827714: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:04:53.827940: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:04:53.827971: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:04:53.828078: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:04:53.828103: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:04:53.828130: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:04:53.828155: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:05:00.905858: --------------- PredBat - update at 2026-08-14 08:05:00+01:00 with clock skew 0 minutes, minutes now 485 2026-08-14 08:05:00.906909: Saved current settings to /config/predbat_config.json 2026-08-14 08:05:00.907121: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 35.0 minutes 2026-08-14 08:05:00.907295: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 08:05:00.907442: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 08:05:00.930511: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 08:05:00.930641: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 08:05:00.931331: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 08:05:00.931450: Predbat mode is set to Control charge & discharge 2026-08-14 08:05:01.120761: Found 21602 load_today datapoints going back 27 days 2026-08-14 08:05:01.120929: Using load_power data to fill gaps in load_today data 2026-08-14 08:05:02.022123: Processing 721 30-minute periods for power integration 2026-08-14 08:05:02.218138: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 08:05:02.218290: Car charging hold False, threshold 6.0kWh 2026-08-14 08:05:02.218340: Current data so far today: load 7.95kWh, import 8.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 08:05:02.233015: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 08:05:02.234511: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 08:05:02.234611: Standing charge is set to 49.98p 2026-08-14 08:05:02.263527: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 08:05:02.263641: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 08:05:02.263931: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 485.0 minutes 2026-08-14 08:05:02.264411: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 484.8 minutes 2026-08-14 08:05:02.267490: Loaded 47 datapoints of futurerate analysis 2026-08-14 08:05:02.354983: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 08:05:02.430934: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 08:05:02.436322: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 08:05:02.436783: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 08:05:02.479707: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 08:05:02.479838: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 08:05:02.481075: High export rate found rates in range 99p to -99p 2026-08-14 08:05:02.569810: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 08:05:02.569970: Car 0 charging is not planned as it is not plugged in 2026-08-14 08:05:02.586661: Battery level now 1.92kWh, -1hr ago 2.24kWh, at midnight 2.43kWh, battery value change in the last hour -7.46p, change today -11.93p, rate_forward 23.31p 2026-08-14 08:05:02.587114: Last hour: net energy 0.04kWh, import 0.04kWh, export 0.0kWh, car 0kWh, load 0.35kWh, net cost 1.18p, import 1.18p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 08:05:02.643271: Today's energy total net 8.4kWh, import 8.4kWh, export 0.0kWh, cost 262.75p, import 212.77p, export 0.0p, carbon 0.0kg 2026-08-14 08:05:02.643404: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 08:05:02.724419: Using weighted-bucket historical load forecast over 14 days 2026-08-14 08:05:02.749235: Today's load divergence 113.4%, in-day adjustment 135.33%, damping 0.95x, yesterday 146.81% today 112.73% blend 66.32% 2026-08-14 08:05:02.749354: Today's predicted so far 3.22kWh with 0.0kWh car/iBoost excluded, 1.43kWh import ignored, and 4.65kWh forecast extra. 2026-08-14 08:05:02.749408: Today's actual load so far 5.18kWh with 0.0kWh car/iBoost excluded, and 2.94kWh import ignored. 2026-08-14 08:05:02.789070: Inverter 0: Type SK Sunsynk 2026-08-14 08:05:02.789169: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 08:05:02.789375: Reserve min: 7%, battery_min: 7% 2026-08-14 08:05:02.789451: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 08:05:02.789752: Inverter 0 SoC: 1.92kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 312W, current battery voltage 51.2V, grid power -56W, load power 381W, PV Power 0W 2026-08-14 08:05:02.789930: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:05:02.790030: Inverter 0 scheduled charge enable is False 2026-08-14 08:05:02.790059: Inverter 0 charge windows currently [] 2026-08-14 08:05:02.790085: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 08:05:02.790186: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:05:02.790222: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:05:02.790257: Inverter 0 scheduled discharge enable is False 2026-08-14 08:05:02.790382: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:05:02.790418: Inverter 0 discharge windows currently [] 2026-08-14 08:05:02.790440: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:05:02.790459: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:05:02.790477: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:05:02.849644: Dynamic load last period 0.30kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 08:05:02.849770: Plan was last updated on 2026-08-14 07:55:00+01:00 and is now 10.0 minutes old 2026-08-14 08:05:02.850180: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 08:05:02.850246: Best export window [ ] 2026-08-14 08:05:02.851083: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 08:05:02.854216: Load divergence over 8.0 hours mean 453.23W, min 230.4W, max 1260.0W, std dev 184.42W, divergence 20.34% 2026-08-14 08:05:02.867717: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 08:05:02.867853: LoadML is_calculating False 2026-08-14 08:05:02.868017: Creating pool of 12 processes to match your CPU count 2026-08-14 08:05:03.000064: predict base end_record 08-15 12:40:00, final soc 1.12kWh, metric 900.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:25:00, load 29.28kWh, PV 0.0kWh 2026-08-14 08:05:03.146817: Battery has 1.33 hours left - now at 1.92kWh 2026-08-14 08:05:03.195389: predict base10 end_record 08-15 12:40:00, final soc 1.12kWh, metric 928.8p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:20:00, load 30.3kWh, PV 0.0kWh 2026-08-14 08:05:03.279395: predict best10 end_record 08-15 12:40:00, final soc 1.77kWh, metric 849.98p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:20:00, load 30.3kWh, PV 0.0kWh 2026-08-14 08:05:03.369439: predict best end_record 08-15 12:40:00, final soc 1.9kWh, metric 828.18p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:25:00, load 29.28kWh, PV 0.0kWh 2026-08-14 08:05:03.369534: Saving plan best values to HA entities 2026-08-14 08:05:03.568177: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 08:05:03.574363: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 08:05:03.580097: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.04kWh, house 5.72kWh, export 0.0kWh, metric 828.18p, metric10 849.98p 2026-08-14 08:05:03.659640: Marginal costs baseline metric (no standing charge): 778.1963 2026-08-14 08:05:03.950800: Marginal energy costs matrix computed: min=21.9 max=39.31 2026-08-14 08:05:04.038529: Rate array import [{'start': 485, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.8p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2200, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 485, 'end': 2200, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 08:05:04.039352: - Your estimated bill for today is £6.90 and tomorrow is £6.97 2026-08-14 08:05:04.039406: - Import rates are cheap (21.7p - 24.8p) for the next 7 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 08:05:04.039430: - The battery is currently at 12% and is in eco mode for the next 4 and a half hours. 2026-08-14 08:05:04.039467: - For the next 48 hours there will be no solar generation. 2026-08-14 08:05:04.039518: - You will run out of battery in 1 and a quarter hours. 2026-08-14 08:05:04.039556: - Your next charge slot will be in 4 and a half hours where import rates will be cheap (22.2p). 2026-08-14 08:05:04.039603: 2026-08-14 08:05:04.096499: Plan calculation took 1.25 seconds 2026-08-14 08:05:04.100135: No high rate period found 2026-08-14 08:05:04.154344: Import threshold used for optimisation was 24.64p 2026-08-14 08:05:04.213822: Low import rate windows [0: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 1: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 2: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 3: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 4: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 5: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 6: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 7: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 8: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 9: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 10: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 11: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 12: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 13: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 14: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 15: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 16: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 17: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 18: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 19: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 20: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 21: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 22: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 23: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 24: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 25: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 26: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 27: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 28: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 29: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 30: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 31: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 32: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 33: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 34: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 35: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 36: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 37: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 38: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 39: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 40: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 41: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 42: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 43: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 44: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 45: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 46: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 47: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 48: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 49: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 50: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 51: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 52: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 53: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 54: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 55: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 56: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 57: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 58: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 59: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 60: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 61: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 62: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 63: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 64: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 65: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 66: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 67: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 68: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 69: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 70: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 71: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 72: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 73: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 74: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 75: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 76: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 77: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 78: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 79: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 80: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 81: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 82: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 83: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 84: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 85: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 86: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 87: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 88: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 89: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 90: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 91: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 92: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 93: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 94: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84] 2026-08-14 08:05:04.221854: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 08:05:04.221993: Inverter 0 disabled charge window while waiting for schedule (now 08-14 08:05:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 08:05:04.222144: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:05:04.222437: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:05:04.222536: No export window planned 2026-08-14 08:05:04.222698: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 08:05:04.222752: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:05:04.222960: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:05:04.223179: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 08:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 08:05:04.223239: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 08:05:04.223295: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 08:05:04.223392: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:05:04.223418: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:05:04.223440: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:05:04.223460: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:05:04.223480: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:05:04.223532: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:05:04.223575: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:05:04.223671: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:05:04.223714: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:05:04.223739: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:05:04.223760: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:05:04.223779: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:05:04.223797: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:05:04.223819: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:05:04.223842: Inverter 0 count register writes 0 2026-08-14 08:05:04.238929: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 08:05:04.239120: Recompute is saving previous plan... 2026-08-14 08:05:04.241925: Best charge window [ 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 0% ] 2026-08-14 08:05:04.242005: Best export window [ ] 2026-08-14 08:05:04.242634: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 08:05:04.245326: Load divergence over 8.0 hours mean 453.23W, min 230.4W, max 1260.0W, std dev 184.42W, divergence 20.34% 2026-08-14 08:05:04.254922: Calculating data from yesterday for savings calculation 2026-08-14 08:05:04.264926: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 08:05:04.314810: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 858.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 08:05:04.331654: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 872.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 08:05:04.356597: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 858.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 08:05:04.394598: Yesterday: Predbat disabled was £8.58 (adjusted £8.32) vs £6.21 (adjusted £5.62), saving £2.37 (adjusted £2.71) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 26.1kWh 2026-08-14 08:05:04.469203: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 902.27p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 08:05:04.469393: Yesterday: No Battery/PV system cost predicted was £9.02 (adjusted £9.02) vs £6.21 (adjusted £5.62), saving £2.81 (adjusted £3.41) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 08:05:04.480993: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 08:05:04.481149: LoadML is_calculating False 2026-08-14 08:05:04.481225: Creating pool of 12 processes to match your CPU count 2026-08-14 08:05:04.583574: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 08:05:04.588724: Optimise levels pass started at 2026-08-14 08:05:04 2026-08-14 08:05:04.588829: Optimise all windows, total charge 94 export 1 2026-08-14 08:05:04.905278: >> Region optimisation pass width 960 2026-08-14 08:05:05.330455: >> Region optimisation pass width 480 2026-08-14 08:05:05.716085: >> Region optimisation pass width 240 2026-08-14 08:05:06.311911: >> Region optimisation pass width 120 2026-08-14 08:05:07.877189: Calculated end_record as 08-15 12:30:00 based on best_price 22.25p, next_charge_start 08-14 12:30:00, max_windows 56 2026-08-14 08:05:07.877541: Optimise levels pass ended at 2026-08-14 08:05:07, duration 3.3 seconds tried 323 combinations 2026-08-14 08:05:07.877746: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1031.41p, best_keep 0kWh, best_cycle 48.49kWh, best_carbon 0kg, best_import 37.65kWh 2026-08-14 08:05:07.900246: Starting detailed optimisation end_record 08-15 12:30:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 08:05:07.902152: Best charge windows best_metric 734.95p, best_cost 757.05p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:05:07.902285: Best export windows best_metric 734.95p, best_cost 757.05p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:05:07.902409: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 734.95p, best_cost 757.05p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:07.974305: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 734.84p, best_cost 756.93p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:08.055338: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 734.84p, best_cost 756.93p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:08.177325: Best charge windows best_metric 734.84p, best_cost 756.93p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:05:08.177771: Best export windows best_metric 734.84p, best_cost 756.93p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:05:08.179254: Best charge windows best_metric 734.84p, best_cost 756.93p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:05:08.179370: Best export windows best_metric 734.84p, best_cost 756.93p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:05:08.179484: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 734.84p, best_cost 756.93p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:08.377308: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 734.84p, best_cost 756.93p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:08.453464: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 734.84p, best_cost 756.93p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:08.574775: Best charge windows best_metric 734.84p, best_cost 756.93p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:05:08.575215: Best export windows best_metric 734.84p, best_cost 756.93p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:05:08.576708: Best charge windows best_metric 734.84p, best_cost 756.93p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:05:08.576787: Best export windows best_metric 734.84p, best_cost 756.93p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:05:08.577039: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 734.84p, best_cost 756.93p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:08.674426: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 734.84p, best_cost 756.93p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:08.762080: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 734.84p, best_cost 756.93p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:08.904385: Best charge windows best_metric 734.84p, best_cost 756.93p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:05:08.904524: Best export windows best_metric 734.84p, best_cost 756.93p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:05:08.904594: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 734.84p, best_cost 756.93p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:09.017288: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 734.84p, best_cost 756.93p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:09.107705: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 734.84p, best_cost 756.93p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:09.326357: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 734.84p, best_cost 756.93p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:09.391884: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 734.84p, best_cost 756.93p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:09.463304: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 734.84p, best_cost 756.93p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:09.543444: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 734.8p, best_cost 756.88p, best_cycle 25.71kWh, best_carbon 0kg, best_import 50.17kWh 2026-08-14 08:05:09.627056: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 734.8p, best_cost 756.88p, best_cycle 25.71kWh, best_carbon 0kg, best_import 50.17kWh 2026-08-14 08:05:09.747315: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 734.4p, best_cost 756.7p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:09.975332: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.022364: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.067383: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.109818: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.155188: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.190787: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.277397: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.326972: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.364742: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.422233: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.470167: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.517287: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.563397: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.609814: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.652727: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.712064: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.757165: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.808917: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.863058: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.909406: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.945143: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:10.993839: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:11.046417: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:11.090678: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:11.131925: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:11.168111: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:11.225892: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:11.276594: Best charge windows best_metric 734.3p, best_cost 756.69p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:05:11.276814: Best export windows best_metric 734.3p, best_cost 756.69p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:05:11.278596: Best charge windows best_metric 734.3p, best_cost 756.69p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:05:11.278724: Best export windows best_metric 734.3p, best_cost 756.69p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:05:11.278846: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:11.359317: Optimise price set 26.4p, pass trim_import, price 24.56p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:11.448823: Optimise price set 25.6p, pass trim_import, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:11.481542: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:11.564558: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:11.651488: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:11.791275: Best charge windows best_metric 734.3p, best_cost 756.69p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:05:11.791505: Best export windows best_metric 734.3p, best_cost 756.69p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:05:11.791754: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:11.861830: Optimise price set 26.4p, pass normal, price 24.56p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:11.902435: Optimise price set 25.6p, pass normal, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:11.933646: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:12.167008: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:12.261869: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:12.394573: Best charge windows best_metric 734.3p, best_cost 756.69p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:05:12.394731: Best export windows best_metric 734.3p, best_cost 756.69p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:05:12.396640: Best charge windows best_metric 734.3p, best_cost 756.69p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:05:12.396760: Best export windows best_metric 734.3p, best_cost 756.69p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:05:12.396890: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:12.477507: Optimise price set 26.4p, pass trim_import, price 24.56p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:12.510284: Optimise price set 25.6p, pass trim_import, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:12.543705: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:12.628133: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:12.724368: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:12.841481: Best charge windows best_metric 734.3p, best_cost 756.69p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:05:12.841674: Best export windows best_metric 734.3p, best_cost 756.69p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:05:12.842110: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:12.926145: Optimise price set 26.4p, pass normal, price 24.56p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:12.958772: Optimise price set 25.6p, pass normal, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:12.997830: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:13.210308: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:13.303408: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 734.3p, best_cost 756.69p, best_cycle 25.55kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 08:05:13.418245: Best charge windows best_metric 734.3p, best_cost 756.69p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:05:13.418711: Best export windows best_metric 734.3p, best_cost 756.69p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:05:13.419056: Tweak plan optimisation started 2026-08-14 08:05:13.706148: Tweak optimisation finished metric 734.3 cost 756.69 metric_keep 0 cycle 25.55 carbon 0 import 50.16 2026-08-14 08:05:13.726410: Swap charge optimisation started metric 734.3p, cost 756.69p, min_improvement_swap 0.1p 2026-08-14 08:05:18.139121: Swap charge optimisation finished metric 734.3p, cost 756.69p 2026-08-14 08:05:18.151277: Raw charge windows [ 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] reserve 1.12 2026-08-14 08:05:18.151817: Unclipped charge windows [ 14-08 08:30:00 - 14-08 09:30:00 @ 24.17p 9%, 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 08:30:00 @ 26.8p 100% ] reserve 1.12 2026-08-14 08:05:18.152139: Unfiltered charge windows [ 14-08 08:30:00 - 14-08 09:30:00 @ 24.17p 9%, 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 08:30:00 @ 26.8p 100% ] reserve 1.12 2026-08-14 08:05:18.152427: Filtered charge windows [ 14-08 08:30:00 - 14-08 09:30:00 @ 24.17p 9%, 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 08:30:00 @ 26.8p 100% ] reserve 1.12 2026-08-14 08:05:18.184635: Previous plan best metric is 734.52 (cost 756.91) and new plan best metric is 734.3 (cost 756.69) 2026-08-14 08:05:18.184865: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 08:05:18.185107: Plan valid is now true after recompute was False 2026-08-14 08:05:18.208623: predict base end_record 08-15 12:30:00, final soc 1.12kWh, metric 897.2p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:25:00, load 29.16kWh, PV 0.0kWh 2026-08-14 08:05:18.304377: Battery has 1.33 hours left - now at 1.92kWh 2026-08-14 08:05:18.340860: predict base10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 925.87p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:20:00, load 30.16kWh, PV 0.0kWh 2026-08-14 08:05:18.403411: predict best10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 831.64p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:20:00, load 30.16kWh, PV 0.0kWh 2026-08-14 08:05:18.471394: predict best end_record 08-15 12:30:00, final soc 1.12kWh, metric 806.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:25:00, load 29.16kWh, PV 0.0kWh 2026-08-14 08:05:18.471471: Saving plan best values to HA entities 2026-08-14 08:05:18.600164: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 08:05:18.605417: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 08:05:18.610526: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.04kWh, house 5.72kWh, export 0.0kWh, metric 806.9p, metric10 831.64p 2026-08-14 08:05:18.674161: Marginal costs baseline metric (no standing charge): 756.9121 2026-08-14 08:05:18.896070: Marginal energy costs matrix computed: min=21.9 max=39.31 2026-08-14 08:05:18.955964: Rate array import [{'start': 485, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.8p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2190, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 485, 'end': 2190, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 08:05:18.956592: - Your estimated bill for today is £6.90 and tomorrow is £6.97 2026-08-14 08:05:18.956630: - Import rates are cheap (21.7p - 24.8p) for the next 7 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 08:05:18.956665: - The battery is currently at 12% and is in eco mode for the next 4 and a half hours. 2026-08-14 08:05:18.956679: - For the next 48 hours there will be no solar generation. 2026-08-14 08:05:18.956693: - You will run out of battery in 1 and a quarter hours. 2026-08-14 08:05:18.956707: - Your next charge slot will be in 4 and a half hours where import rates will be cheap (22.2p). 2026-08-14 08:05:18.956724: 2026-08-14 08:05:19.012312: Plan calculation took 14.77 seconds 2026-08-14 08:05:19.012625: Inverter 0: Type SK Sunsynk 2026-08-14 08:05:19.012664: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 08:05:19.012892: Reserve min: 7%, battery_min: 7% 2026-08-14 08:05:19.012998: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 08:05:19.013336: Inverter 0 SoC: 1.92kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 311W, current battery voltage 51.2V, grid power -54W, load power 375W, PV Power 0W 2026-08-14 08:05:19.013531: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:05:19.013616: Inverter 0 scheduled charge enable is False 2026-08-14 08:05:19.013650: Inverter 0 charge windows currently [] 2026-08-14 08:05:19.013677: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 08:05:19.013769: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:05:19.013800: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:05:19.013830: Inverter 0 scheduled discharge enable is False 2026-08-14 08:05:19.013950: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:05:19.013981: Inverter 0 discharge windows currently [] 2026-08-14 08:05:19.014004: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:05:19.014020: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:05:19.014034: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:05:19.071766: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 08:05:19.071956: Inverter 0 disabled charge window while waiting for schedule (now 08-14 08:05:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 08:05:19.072027: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:05:19.072188: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:05:19.072254: No export window planned 2026-08-14 08:05:19.072348: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 08:05:19.072382: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:05:19.072491: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:05:19.072631: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 08:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 08:05:19.072676: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 08:05:19.072724: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 08:05:19.072801: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:05:19.072834: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:05:19.072877: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:05:19.072903: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:05:19.072924: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:05:19.072971: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:05:19.073016: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:05:19.073077: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:05:19.073108: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:05:19.073130: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:05:19.073170: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:05:19.073193: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:05:19.073213: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:05:19.073232: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:05:19.073248: Inverter 0 count register writes 0 2026-08-14 08:05:19.095933: Total inverter register writes now 806 2026-08-14 08:05:19.128856: Info: Completed run status Demand 2026-08-14 08:05:19.134903: Info: record_status Demand 2026-08-14 08:05:19.141461: Saved current settings to /config/predbat_config.json 2026-08-14 08:05:19.141770: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 08:05:54.248771: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:05:54.249084: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:05:54.249133: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:05:54.249268: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:05:54.249307: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:05:54.249327: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:05:54.249344: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:07:54.467317: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:07:54.467673: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:07:54.467789: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:07:54.468081: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:07:54.468161: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:07:54.468203: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:07:54.468239: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:10:00.695100: --------------- PredBat - update at 2026-08-14 08:10:00+01:00 with clock skew 0 minutes, minutes now 490 2026-08-14 08:10:00.695937: Saved current settings to /config/predbat_config.json 2026-08-14 08:10:00.696097: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 40.0 minutes 2026-08-14 08:10:00.696232: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 08:10:00.696372: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 08:10:00.720054: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 08:10:00.720216: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 08:10:00.720930: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 08:10:00.721153: Predbat mode is set to Control charge & discharge 2026-08-14 08:10:00.899270: Found 21602 load_today datapoints going back 28 days 2026-08-14 08:10:00.899420: Using load_power data to fill gaps in load_today data 2026-08-14 08:10:01.703757: Processing 721 30-minute periods for power integration 2026-08-14 08:10:01.891761: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 08:10:01.891984: Car charging hold False, threshold 6.0kWh 2026-08-14 08:10:01.892086: Current data so far today: load 7.9kWh, import 8.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 08:10:01.906452: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 08:10:01.907665: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 08:10:01.907773: Standing charge is set to 49.98p 2026-08-14 08:10:01.934268: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 08:10:01.934379: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 08:10:01.934709: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 490.0 minutes 2026-08-14 08:10:01.935172: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 489.8 minutes 2026-08-14 08:10:01.938406: Loaded 47 datapoints of futurerate analysis 2026-08-14 08:10:02.024258: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 08:10:02.080938: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 08:10:02.086179: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 08:10:02.086638: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 08:10:02.127926: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 08:10:02.128059: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 08:10:02.129309: High export rate found rates in range 99p to -99p 2026-08-14 08:10:02.213073: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 08:10:02.213207: Car 0 charging is not planned as it is not plugged in 2026-08-14 08:10:02.229611: Battery level now 1.92kWh, -1hr ago 2.24kWh, at midnight 2.43kWh, battery value change in the last hour -7.46p, change today -11.93p, rate_forward 23.31p 2026-08-14 08:10:02.229998: Last hour: net energy 0.04kWh, import 0.04kWh, export 0.0kWh, car 0kWh, load 0.25kWh, net cost 1.06p, import 1.06p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 08:10:02.283160: Today's energy total net 8.4kWh, import 8.4kWh, export 0.0kWh, cost 262.75p, import 212.77p, export 0.0p, carbon 0.0kg 2026-08-14 08:10:02.283304: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 08:10:02.364066: Using weighted-bucket historical load forecast over 14 days 2026-08-14 08:10:02.389852: Today's load divergence 111.95%, in-day adjustment 134.74%, damping 0.95x, yesterday 146.81% today 111.35% blend 65.97% 2026-08-14 08:10:02.390232: Today's predicted so far 3.16kWh with 0.0kWh car/iBoost excluded, 1.48kWh import ignored, and 4.65kWh forecast extra. 2026-08-14 08:10:02.390312: Today's actual load so far 4.87kWh with 0.0kWh car/iBoost excluded, and 3.15kWh import ignored. 2026-08-14 08:10:02.426084: Inverter 0: Type SK Sunsynk 2026-08-14 08:10:02.426172: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 08:10:02.426372: Reserve min: 7%, battery_min: 7% 2026-08-14 08:10:02.426443: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 08:10:02.426717: Inverter 0 SoC: 1.92kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 278W, current battery voltage 51.2V, grid power -54W, load power 338W, PV Power 0W 2026-08-14 08:10:02.426870: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:10:02.426960: Inverter 0 scheduled charge enable is False 2026-08-14 08:10:02.426989: Inverter 0 charge windows currently [] 2026-08-14 08:10:02.427018: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 08:10:02.427121: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:10:02.427150: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:10:02.427183: Inverter 0 scheduled discharge enable is False 2026-08-14 08:10:02.427302: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:10:02.427331: Inverter 0 discharge windows currently [] 2026-08-14 08:10:02.427352: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:10:02.427370: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:10:02.427387: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:10:02.494709: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 08:10:02.494868: Plan was last updated on 2026-08-14 08:05:00+01:00 and is now 5.0 minutes old 2026-08-14 08:10:02.495174: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 08:10:02.495222: Best export window [ ] 2026-08-14 08:10:02.495988: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 08:10:02.499124: Load divergence over 8.0 hours mean 450.16W, min 240.6W, max 1225.8W, std dev 175.74W, divergence 19.52% 2026-08-14 08:10:02.512709: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 08:10:02.512837: LoadML is_calculating False 2026-08-14 08:10:02.512912: Creating pool of 12 processes to match your CPU count 2026-08-14 08:10:02.633267: predict base end_record 08-15 12:35:00, final soc 1.12kWh, metric 895.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:30:00, load 29.07kWh, PV 0.0kWh 2026-08-14 08:10:02.762174: Battery has 1.33 hours left - now at 1.92kWh 2026-08-14 08:10:02.805351: predict base10 end_record 08-15 12:35:00, final soc 1.12kWh, metric 924.52p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:25:00, load 30.07kWh, PV 0.0kWh 2026-08-14 08:10:02.873891: predict best10 end_record 08-15 12:35:00, final soc 1.44kWh, metric 838.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:25:00, load 30.07kWh, PV 0.0kWh 2026-08-14 08:10:02.946683: predict best end_record 08-15 12:35:00, final soc 1.51kWh, metric 815.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:30:00, load 29.07kWh, PV 0.0kWh 2026-08-14 08:10:02.946776: Saving plan best values to HA entities 2026-08-14 08:10:03.120240: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 08:10:03.127475: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 08:10:03.132909: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.03kWh, house 5.63kWh, export 0.0kWh, metric 815.12p, metric10 838.29p 2026-08-14 08:10:03.209042: Marginal costs baseline metric (no standing charge): 765.1355 2026-08-14 08:10:03.484569: Marginal energy costs matrix computed: min=21.95 max=38.78 2026-08-14 08:10:03.567530: Rate array import [{'start': 490, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.8p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2195, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 490, 'end': 2195, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 08:10:03.568225: - Your estimated bill for today is £6.88 and tomorrow is £6.98 2026-08-14 08:10:03.568271: - Import rates are cheap (21.7p - 24.8p) for the next 7 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 08:10:03.568294: - The battery is currently at 12% and is in eco mode for the next 4 and a quarter hours. 2026-08-14 08:10:03.568313: - For the next 48 hours there will be no solar generation. 2026-08-14 08:10:03.568332: - You will run out of battery in 1 and a quarter hours. 2026-08-14 08:10:03.568350: - Your next charge slot will be in 4 and a quarter hours where import rates will be cheap (22.2p). 2026-08-14 08:10:03.568372: 2026-08-14 08:10:03.626181: Plan calculation took 1.13 seconds 2026-08-14 08:10:03.629607: No high rate period found 2026-08-14 08:10:03.691687: Import threshold used for optimisation was 24.8p 2026-08-14 08:10:03.744367: Low import rate windows [0: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 1: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 2: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 3: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 4: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 5: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 6: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 7: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 8: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 9: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 10: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 11: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 12: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 13: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 14: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 15: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 16: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 17: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 18: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 19: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 20: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 21: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 22: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 23: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 24: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 25: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 26: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 27: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 28: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 29: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 30: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 31: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 32: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 33: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 34: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 35: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 36: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 37: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 38: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 39: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 40: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 41: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 42: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 43: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 44: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 45: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 46: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 47: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 48: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 49: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 50: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 51: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 52: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 53: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 54: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 55: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 56: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 57: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 58: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 59: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 60: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 61: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 62: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 63: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 64: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 65: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 66: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 67: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 68: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 69: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 70: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 71: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 72: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 73: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 74: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 75: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 76: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 77: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 78: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 79: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 80: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 81: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 82: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 83: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 84: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 85: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 86: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 87: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 88: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 89: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 90: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 91: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 92: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 93: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 94: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84] 2026-08-14 08:10:03.752079: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 08:10:03.752223: Inverter 0 disabled charge window while waiting for schedule (now 08-14 08:10:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 08:10:03.752347: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:10:03.752615: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:10:03.752717: No export window planned 2026-08-14 08:10:03.752839: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 08:10:03.752881: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:10:03.753065: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:10:03.753277: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 08:10:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 08:10:03.753338: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 08:10:03.753404: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 08:10:03.753503: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:10:03.753567: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:10:03.753597: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:10:03.753621: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:10:03.753652: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:10:03.753678: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:10:03.753733: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:10:03.753813: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:10:03.753853: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:10:03.753879: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:10:03.753903: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:10:03.753927: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:10:03.753951: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:10:03.753976: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:10:03.754003: Inverter 0 count register writes 0 2026-08-14 08:10:03.771207: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 08:10:03.776994: Total inverter register writes now 806 2026-08-14 08:10:03.811436: Info: Completed run status Demand 2026-08-14 08:10:03.818246: Info: record_status Demand 2026-08-14 08:10:03.826616: Saved current settings to /config/predbat_config.json 2026-08-14 08:10:03.827000: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 08:10:38.936838: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:10:38.937141: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:10:38.937189: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:10:38.937460: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:10:38.937543: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:10:38.937592: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:10:38.937642: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:12:39.168745: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:12:39.169152: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:12:39.169220: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:12:39.169428: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:12:39.169497: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:12:39.169520: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:12:39.169537: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:14:39.402278: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:14:39.402650: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:14:39.402718: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:14:39.402904: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:14:39.402958: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:14:39.403015: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:14:39.403043: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:15:00.529502: --------------- PredBat - update at 2026-08-14 08:15:00+01:00 with clock skew 0 minutes, minutes now 495 2026-08-14 08:15:00.530266: Saved current settings to /config/predbat_config.json 2026-08-14 08:15:00.530420: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 45.0 minutes 2026-08-14 08:15:00.530497: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 08:15:00.530595: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 08:15:00.554124: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 08:15:00.554270: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 08:15:00.555052: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 08:15:00.555231: Predbat mode is set to Control charge & discharge 2026-08-14 08:15:00.772608: Found 21602 load_today datapoints going back 28 days 2026-08-14 08:15:00.772779: Using load_power data to fill gaps in load_today data 2026-08-14 08:15:01.708045: Processing 721 30-minute periods for power integration 2026-08-14 08:15:01.906929: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 08:15:01.907068: Car charging hold False, threshold 6.0kWh 2026-08-14 08:15:01.907115: Current data so far today: load 7.9kWh, import 8.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 08:15:01.922124: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 08:15:01.922893: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 08:15:01.922971: Standing charge is set to 49.98p 2026-08-14 08:15:01.950020: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 08:15:01.950133: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 08:15:01.950350: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 495.0 minutes 2026-08-14 08:15:01.950729: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 494.8 minutes 2026-08-14 08:15:01.953625: Loaded 47 datapoints of futurerate analysis 2026-08-14 08:15:02.042141: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 08:15:02.098842: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 08:15:02.103928: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 08:15:02.104338: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 08:15:02.145805: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 08:15:02.145964: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 08:15:02.147199: High export rate found rates in range 99p to -99p 2026-08-14 08:15:02.231156: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 08:15:02.231302: Car 0 charging is not planned as it is not plugged in 2026-08-14 08:15:02.244474: Battery level now 1.92kWh, -1hr ago 2.12kWh, at midnight 2.43kWh, battery value change in the last hour -4.66p, change today -11.93p, rate_forward 23.31p 2026-08-14 08:15:02.244858: Last hour: net energy 0.03kWh, import 0.03kWh, export 0.0kWh, car 0kWh, load 0.2kWh, net cost 0.95p, import 0.95p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 08:15:02.304853: Today's energy total net 8.4kWh, import 8.4kWh, export 0.0kWh, cost 262.75p, import 212.77p, export 0.0p, carbon 0.0kg 2026-08-14 08:15:02.305083: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 08:15:02.388786: Using weighted-bucket historical load forecast over 14 days 2026-08-14 08:15:02.414877: Today's load divergence 111.85%, in-day adjustment 134.59%, damping 0.95x, yesterday 146.81% today 111.26% blend 65.62% 2026-08-14 08:15:02.414982: Today's predicted so far 2.98kWh with 0.0kWh car/iBoost excluded, 1.67kWh import ignored, and 4.65kWh forecast extra. 2026-08-14 08:15:02.415014: Today's actual load so far 4.65kWh with 0.0kWh car/iBoost excluded, and 3.33kWh import ignored. 2026-08-14 08:15:02.453835: Inverter 0: Type SK Sunsynk 2026-08-14 08:15:02.453935: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 08:15:02.454160: Reserve min: 7%, battery_min: 7% 2026-08-14 08:15:02.454269: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 08:15:02.454616: Inverter 0 SoC: 1.88kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 317W, current battery voltage 51.2V, grid power -56W, load power 380W, PV Power 0W 2026-08-14 08:15:02.454806: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:15:02.454919: Inverter 0 scheduled charge enable is False 2026-08-14 08:15:02.454950: Inverter 0 charge windows currently [] 2026-08-14 08:15:02.454976: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 08:15:02.455121: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:15:02.455165: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:15:02.455230: Inverter 0 scheduled discharge enable is False 2026-08-14 08:15:02.455433: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:15:02.455479: Inverter 0 discharge windows currently [] 2026-08-14 08:15:02.455503: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:15:02.455521: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:15:02.455538: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:15:02.522611: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 08:15:02.522719: Plan was last updated on 2026-08-14 08:05:00+01:00 and is now 10.0 minutes old 2026-08-14 08:15:02.522996: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 08:15:02.523038: Best export window [ ] 2026-08-14 08:15:02.523780: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 08:15:02.526927: Load divergence over 8.0 hours mean 447.16W, min 220.2W, max 1101.0W, std dev 171.25W, divergence 19.15% 2026-08-14 08:15:02.539969: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 08:15:02.540105: LoadML is_calculating False 2026-08-14 08:15:02.540171: Creating pool of 12 processes to match your CPU count 2026-08-14 08:15:02.666973: predict base end_record 08-15 12:40:00, final soc 1.12kWh, metric 897.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:30:00, load 29.09kWh, PV 0.0kWh 2026-08-14 08:15:02.819427: Battery has 1.25 hours left - now at 1.88kWh 2026-08-14 08:15:02.870701: predict base10 end_record 08-15 12:40:00, final soc 1.12kWh, metric 926.04p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:25:00, load 30.1kWh, PV 0.0kWh 2026-08-14 08:15:02.958806: predict best10 end_record 08-15 12:40:00, final soc 1.77kWh, metric 847.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:25:00, load 30.1kWh, PV 0.0kWh 2026-08-14 08:15:03.053132: predict best end_record 08-15 12:40:00, final soc 1.9kWh, metric 825.67p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:30:00, load 29.09kWh, PV 0.0kWh 2026-08-14 08:15:03.053236: Saving plan best values to HA entities 2026-08-14 08:15:03.245586: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 08:15:03.252594: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 08:15:03.260074: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.01kWh, house 5.63kWh, export 0.0kWh, metric 825.67p, metric10 847.38p 2026-08-14 08:15:03.346101: Marginal costs baseline metric (no standing charge): 775.6881 2026-08-14 08:15:03.635936: Marginal energy costs matrix computed: min=21.99 max=38.27 2026-08-14 08:15:03.732872: Rate array import [{'start': 495, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.8p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2200, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 495, 'end': 2200, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 08:15:03.733705: - Your estimated bill for today is £6.88 and tomorrow is £6.99 2026-08-14 08:15:03.733761: - Import rates are cheap (21.7p - 24.8p) for the next 7 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 08:15:03.733786: - The battery is currently at 12% and is in eco mode for the next 4 and a quarter hours. 2026-08-14 08:15:03.733805: - For the next 48 hours there will be no solar generation. 2026-08-14 08:15:03.733823: - You will run out of battery in 1 and a quarter hours. 2026-08-14 08:15:03.733842: - Your next charge slot will be in 4 and a quarter hours where import rates will be cheap (22.2p). 2026-08-14 08:15:03.733859: 2026-08-14 08:15:03.787709: Plan calculation took 1.26 seconds 2026-08-14 08:15:03.791821: No high rate period found 2026-08-14 08:15:03.853218: Import threshold used for optimisation was 24.8p 2026-08-14 08:15:03.915381: Low import rate windows [0: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 1: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 2: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 3: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 4: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 5: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 6: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 7: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 8: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 9: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 10: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 11: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 12: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 13: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 14: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 15: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 16: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 17: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 18: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 19: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 20: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 21: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 22: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 23: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 24: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 25: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 26: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 27: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 28: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 29: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 30: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 31: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 32: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 33: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 34: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 35: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 36: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 37: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 38: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 39: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 40: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 41: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 42: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 43: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 44: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 45: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 46: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 47: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 48: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 49: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 50: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 51: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 52: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 53: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 54: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 55: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 56: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 57: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 58: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 59: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 60: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 61: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 62: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 63: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 64: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 65: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 66: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 67: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 68: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 69: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 70: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 71: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 72: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 73: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 74: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 75: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 76: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 77: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 78: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 79: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 80: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 81: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 82: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 83: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 84: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 85: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 86: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 87: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 88: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 89: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 90: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 91: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 92: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 93: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 94: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84] 2026-08-14 08:15:03.921923: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 08:15:03.922051: Inverter 0 disabled charge window while waiting for schedule (now 08-14 08:15:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 08:15:03.922156: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:15:03.922391: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:15:03.922479: No export window planned 2026-08-14 08:15:03.922596: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 08:15:03.922653: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:15:03.922770: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:15:03.922942: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 08:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 08:15:03.922993: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 08:15:03.923044: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 08:15:03.923129: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:15:03.923162: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:15:03.923184: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:15:03.923204: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:15:03.923226: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:15:03.923246: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:15:03.923265: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:15:03.923338: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:15:03.923364: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:15:03.923385: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:15:03.923404: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:15:03.923429: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:15:03.923448: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:15:03.923467: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:15:03.923486: Inverter 0 count register writes 0 2026-08-14 08:15:03.942135: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 08:15:03.942356: Recompute is saving previous plan... 2026-08-14 08:15:03.945512: Best charge window [ 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 0% ] 2026-08-14 08:15:03.945595: Best export window [ ] 2026-08-14 08:15:03.946340: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 08:15:03.949470: Load divergence over 8.0 hours mean 447.16W, min 220.2W, max 1101.0W, std dev 171.25W, divergence 19.15% 2026-08-14 08:15:03.962737: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 08:15:03.962883: LoadML is_calculating False 2026-08-14 08:15:03.962995: Creating pool of 12 processes to match your CPU count 2026-08-14 08:15:04.055321: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 08:15:04.057037: Optimise levels pass started at 2026-08-14 08:15:04 2026-08-14 08:15:04.057095: Optimise all windows, total charge 94 export 1 2026-08-14 08:15:04.371369: >> Region optimisation pass width 960 2026-08-14 08:15:04.783597: >> Region optimisation pass width 480 2026-08-14 08:15:05.186665: >> Region optimisation pass width 240 2026-08-14 08:15:05.833304: >> Region optimisation pass width 120 2026-08-14 08:15:07.492473: Calculated end_record as 08-15 12:30:00 based on best_price 22.25p, next_charge_start 08-14 12:30:00, max_windows 56 2026-08-14 08:15:07.492805: Optimise levels pass ended at 2026-08-14 08:15:07, duration 3.4 seconds tried 323 combinations 2026-08-14 08:15:07.492928: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1030.38p, best_keep 0kWh, best_cycle 48.53kWh, best_carbon 0kg, best_import 37.53kWh 2026-08-14 08:15:07.512734: Starting detailed optimisation end_record 08-15 12:30:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 08:15:07.514793: Best charge windows best_metric 732.37p, best_cost 754.5p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:15:07.514941: Best export windows best_metric 732.37p, best_cost 754.5p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:15:07.515122: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 732.37p, best_cost 754.5p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:07.621302: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 732.26p, best_cost 754.37p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:07.721893: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 732.26p, best_cost 754.37p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:07.884267: Best charge windows best_metric 732.26p, best_cost 754.37p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:15:07.884688: Best export windows best_metric 732.26p, best_cost 754.37p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:15:07.886983: Best charge windows best_metric 732.26p, best_cost 754.37p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:15:07.887295: Best export windows best_metric 732.26p, best_cost 754.37p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:15:07.887567: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 732.26p, best_cost 754.37p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:08.117416: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 732.26p, best_cost 754.37p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:08.216136: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 732.26p, best_cost 754.37p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:08.363837: Best charge windows best_metric 732.26p, best_cost 754.37p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:15:08.364008: Best export windows best_metric 732.26p, best_cost 754.37p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:15:08.365741: Best charge windows best_metric 732.26p, best_cost 754.37p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:15:08.365903: Best export windows best_metric 732.26p, best_cost 754.37p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:15:08.366055: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 732.26p, best_cost 754.37p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:08.453410: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 732.26p, best_cost 754.37p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:08.548686: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 732.26p, best_cost 754.37p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:08.691393: Best charge windows best_metric 732.26p, best_cost 754.37p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:15:08.691728: Best export windows best_metric 732.26p, best_cost 754.37p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:15:08.691853: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 732.26p, best_cost 754.37p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:08.825237: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 732.26p, best_cost 754.37p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:08.925692: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 732.26p, best_cost 754.37p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:09.186161: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 732.26p, best_cost 754.37p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:09.262716: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 732.26p, best_cost 754.37p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:09.346836: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 732.26p, best_cost 754.37p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:09.427146: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 732.07p, best_cost 754.17p, best_cycle 25.57kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:09.496443: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 732.07p, best_cost 754.17p, best_cycle 25.57kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:09.621523: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 731.82p, best_cost 754.15p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:09.878002: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:09.929465: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:09.974352: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.028971: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.081944: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.130945: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.240701: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.284367: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.332191: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.388573: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.434695: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.487678: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.533530: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.582105: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.629039: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.683326: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.732254: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.789736: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.835333: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.877486: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.920709: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:10.967738: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:11.019053: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:11.070478: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:11.113947: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:11.169563: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:11.210706: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:11.267189: Best charge windows best_metric 731.73p, best_cost 754.14p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:15:11.268185: Best export windows best_metric 731.73p, best_cost 754.14p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:15:11.270249: Best charge windows best_metric 731.73p, best_cost 754.14p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:15:11.270423: Best export windows best_metric 731.73p, best_cost 754.14p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:15:11.270619: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:11.368123: Optimise price set 26.4p, pass trim_import, price 24.56p, start_at_low False, best_price_charge 22.25p, best_metric 731.73p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:11.462069: Optimise price set 25.6p, pass trim_import, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:11.502088: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:11.601986: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:11.695169: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:11.841661: Best charge windows best_metric 731.72p, best_cost 754.14p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:15:11.841815: Best export windows best_metric 731.72p, best_cost 754.14p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:15:11.842010: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:11.927435: Optimise price set 26.4p, pass normal, price 24.56p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:11.966743: Optimise price set 25.6p, pass normal, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:12.007939: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:12.238543: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:12.337812: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:12.495351: Best charge windows best_metric 731.72p, best_cost 754.14p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:15:12.495506: Best export windows best_metric 731.72p, best_cost 754.14p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:15:12.497325: Best charge windows best_metric 731.72p, best_cost 754.14p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:15:12.497518: Best export windows best_metric 731.72p, best_cost 754.14p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:15:12.497710: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:12.576395: Optimise price set 26.4p, pass trim_import, price 24.56p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:12.628457: Optimise price set 25.6p, pass trim_import, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:12.661430: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:12.742236: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:12.834664: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:12.968881: Best charge windows best_metric 731.72p, best_cost 754.14p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:15:12.969700: Best export windows best_metric 731.72p, best_cost 754.14p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:15:12.969921: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:13.062181: Optimise price set 26.4p, pass normal, price 24.56p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:13.104612: Optimise price set 25.6p, pass normal, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:13.137591: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:13.386960: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:13.483386: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 731.72p, best_cost 754.14p, best_cycle 25.51kWh, best_carbon 0kg, best_import 50.11kWh 2026-08-14 08:15:13.600526: Best charge windows best_metric 731.72p, best_cost 754.14p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:15:13.600850: Best export windows best_metric 731.72p, best_cost 754.14p, best_carbon 0kg, best_import 50.11kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:15:13.601295: Tweak plan optimisation started 2026-08-14 08:15:13.918483: Tweak optimisation finished metric 731.73 cost 754.14 metric_keep 0 cycle 25.51 carbon 0 import 50.11 2026-08-14 08:15:13.938684: Swap charge optimisation started metric 731.73p, cost 754.14p, min_improvement_swap 0.1p 2026-08-14 08:15:18.801415: Swap charge optimisation finished metric 731.73p, cost 754.14p 2026-08-14 08:15:18.816216: Raw charge windows [ 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] reserve 1.12 2026-08-14 08:15:18.817171: Unclipped charge windows [ 14-08 08:30:00 - 14-08 09:30:00 @ 24.17p 9%, 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 08:30:00 @ 26.8p 100% ] reserve 1.12 2026-08-14 08:15:18.817613: Unfiltered charge windows [ 14-08 08:30:00 - 14-08 09:30:00 @ 24.17p 9%, 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 08:30:00 @ 26.8p 100% ] reserve 1.12 2026-08-14 08:15:18.817937: Filtered charge windows [ 14-08 08:30:00 - 14-08 09:30:00 @ 24.17p 9%, 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 08:30:00 @ 26.8p 100% ] reserve 1.12 2026-08-14 08:15:18.860002: Previous plan best metric is 731.95 (cost 754.36) and new plan best metric is 731.73 (cost 754.14) 2026-08-14 08:15:18.860304: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 08:15:18.860533: Plan valid is now true after recompute was False 2026-08-14 08:15:18.892539: predict base end_record 08-15 12:30:00, final soc 1.12kWh, metric 894.48p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:30:00, load 28.96kWh, PV 0.0kWh 2026-08-14 08:15:19.030141: Battery has 1.25 hours left - now at 1.88kWh 2026-08-14 08:15:19.082592: predict base10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 923.06p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:25:00, load 29.96kWh, PV 0.0kWh 2026-08-14 08:15:19.167628: predict best10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 828.99p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:25:00, load 29.96kWh, PV 0.0kWh 2026-08-14 08:15:19.260176: predict best end_record 08-15 12:30:00, final soc 1.12kWh, metric 804.34p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:30:00, load 28.96kWh, PV 0.0kWh 2026-08-14 08:15:19.260299: Saving plan best values to HA entities 2026-08-14 08:15:19.450743: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 08:15:19.457432: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 08:15:19.464005: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.01kWh, house 5.63kWh, export 0.0kWh, metric 804.34p, metric10 828.99p 2026-08-14 08:15:19.562296: Marginal costs baseline metric (no standing charge): 754.3572 2026-08-14 08:15:19.872478: Marginal energy costs matrix computed: min=21.99 max=38.27 2026-08-14 08:15:19.958095: Rate array import [{'start': 495, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.8p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2190, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 495, 'end': 2190, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 08:15:19.958989: - Your estimated bill for today is £6.88 and tomorrow is £6.99 2026-08-14 08:15:19.959070: - Import rates are cheap (21.7p - 24.8p) for the next 7 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 08:15:19.959115: - The battery is currently at 12% and is in eco mode for the next 4 and a quarter hours. 2026-08-14 08:15:19.959151: - For the next 48 hours there will be no solar generation. 2026-08-14 08:15:19.959190: - You will run out of battery in 1 and a quarter hours. 2026-08-14 08:15:19.959253: - Your next charge slot will be in 4 and a quarter hours where import rates will be cheap (22.2p). 2026-08-14 08:15:19.959292: 2026-08-14 08:15:20.030811: Plan calculation took 16.09 seconds 2026-08-14 08:15:20.031176: Inverter 0: Type SK Sunsynk 2026-08-14 08:15:20.031232: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 08:15:20.031522: Reserve min: 7%, battery_min: 7% 2026-08-14 08:15:20.031605: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 08:15:20.032013: Inverter 0 SoC: 1.88kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 317W, current battery voltage 51.2V, grid power -56W, load power 380W, PV Power 0W 2026-08-14 08:15:20.032320: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:15:20.032443: Inverter 0 scheduled charge enable is False 2026-08-14 08:15:20.032486: Inverter 0 charge windows currently [] 2026-08-14 08:15:20.032520: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 08:15:20.032649: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:15:20.032686: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:15:20.032724: Inverter 0 scheduled discharge enable is False 2026-08-14 08:15:20.032856: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:15:20.032893: Inverter 0 discharge windows currently [] 2026-08-14 08:15:20.032921: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:15:20.032940: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:15:20.033015: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:15:20.102352: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 08:15:20.102630: Inverter 0 disabled charge window while waiting for schedule (now 08-14 08:15:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 08:15:20.102753: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:15:20.102955: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:15:20.103042: No export window planned 2026-08-14 08:15:20.103196: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 08:15:20.103248: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:15:20.103465: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:15:20.103675: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 08:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 08:15:20.103739: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 08:15:20.103830: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 08:15:20.103956: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:15:20.104008: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:15:20.104047: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:15:20.104100: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:15:20.104163: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:15:20.104226: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:15:20.104304: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:15:20.104428: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:15:20.104482: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:15:20.104512: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:15:20.104559: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:15:20.104593: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:15:20.104618: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:15:20.104644: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:15:20.104673: Inverter 0 count register writes 0 2026-08-14 08:15:20.130100: Total inverter register writes now 806 2026-08-14 08:15:20.171215: Info: Completed run status Demand 2026-08-14 08:15:20.179220: Info: record_status Demand 2026-08-14 08:15:20.188150: Saved current settings to /config/predbat_config.json 2026-08-14 08:15:20.188531: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 08:15:54.303986: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:15:54.304328: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:15:54.304378: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:15:54.304524: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:15:54.304567: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:15:54.304589: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:15:54.304607: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:17:54.545371: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:17:54.545629: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:17:54.545672: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:17:54.545807: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:17:54.545846: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:17:54.545868: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:17:54.545886: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:20:00.784564: --------------- PredBat - update at 2026-08-14 08:20:00+01:00 with clock skew 0 minutes, minutes now 500 2026-08-14 08:20:00.785871: Saved current settings to /config/predbat_config.json 2026-08-14 08:20:00.786063: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 50.0 minutes 2026-08-14 08:20:00.786163: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 08:20:00.786278: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 08:20:00.806841: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 08:20:00.806972: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 08:20:00.807604: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 08:20:00.807716: Predbat mode is set to Control charge & discharge 2026-08-14 08:20:01.013158: Found 21602 load_today datapoints going back 28 days 2026-08-14 08:20:01.013334: Using load_power data to fill gaps in load_today data 2026-08-14 08:20:01.884761: Processing 721 30-minute periods for power integration 2026-08-14 08:20:02.077282: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 08:20:02.077450: Car charging hold False, threshold 6.0kWh 2026-08-14 08:20:02.077498: Current data so far today: load 8.03kWh, import 8.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 08:20:02.091604: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 08:20:02.092402: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 08:20:02.092481: Standing charge is set to 49.98p 2026-08-14 08:20:02.120427: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 08:20:02.120529: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 08:20:02.120723: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 500.0 minutes 2026-08-14 08:20:02.121225: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 499.8 minutes 2026-08-14 08:20:02.124094: Loaded 47 datapoints of futurerate analysis 2026-08-14 08:20:02.209552: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 08:20:02.268152: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 08:20:02.273546: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 08:20:02.273979: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 08:20:02.315349: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 08:20:02.315477: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 08:20:02.316786: High export rate found rates in range 99p to -99p 2026-08-14 08:20:02.405694: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 08:20:02.405820: Car 0 charging is not planned as it is not plugged in 2026-08-14 08:20:02.418179: Battery level now 1.88kWh, -1hr ago 2.12kWh, at midnight 2.43kWh, battery value change in the last hour -5.59p, change today -12.87p, rate_forward 23.31p 2026-08-14 08:20:02.418636: Last hour: net energy 0.03kWh, import 0.03kWh, export 0.0kWh, car 0kWh, load 0.3kWh, net cost 0.83p, import 0.83p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 08:20:02.475717: Today's energy total net 8.4kWh, import 8.4kWh, export 0.0kWh, cost 262.75p, import 212.77p, export 0.0p, carbon 0.0kg 2026-08-14 08:20:02.475861: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 08:20:02.558930: Using weighted-bucket historical load forecast over 14 days 2026-08-14 08:20:02.585359: Today's load divergence 113.38%, in-day adjustment 134.97%, damping 0.95x, yesterday 146.81% today 112.71% blend 65.28% 2026-08-14 08:20:02.585458: Today's predicted so far 3.03kWh with 0.0kWh car/iBoost excluded, 1.63kWh import ignored, and 4.67kWh forecast extra. 2026-08-14 08:20:02.585490: Today's actual load so far 4.96kWh with 0.0kWh car/iBoost excluded, and 3.08kWh import ignored. 2026-08-14 08:20:02.621568: Inverter 0: Type SK Sunsynk 2026-08-14 08:20:02.621660: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 08:20:02.621861: Reserve min: 7%, battery_min: 7% 2026-08-14 08:20:02.621932: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 08:20:02.622222: Inverter 0 SoC: 1.88kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 273W, current battery voltage 51.2V, grid power -55W, load power 335W, PV Power 0W 2026-08-14 08:20:02.622458: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:20:02.622561: Inverter 0 scheduled charge enable is False 2026-08-14 08:20:02.622594: Inverter 0 charge windows currently [] 2026-08-14 08:20:02.622622: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 08:20:02.622734: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:20:02.622771: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:20:02.622807: Inverter 0 scheduled discharge enable is False 2026-08-14 08:20:02.622930: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:20:02.622959: Inverter 0 discharge windows currently [] 2026-08-14 08:20:02.622981: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:20:02.623000: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:20:02.623017: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:20:02.699440: Dynamic load last period 0.30kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 08:20:02.699548: Plan was last updated on 2026-08-14 08:15:00+01:00 and is now 5.0 minutes old 2026-08-14 08:20:02.699932: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 08:20:02.699984: Best export window [ ] 2026-08-14 08:20:02.700891: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 08:20:02.704432: Load divergence over 8.0 hours mean 447.14W, min 235.2W, max 1260.6W, std dev 178.48W, divergence 19.96% 2026-08-14 08:20:02.717646: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 08:20:02.717736: LoadML is_calculating False 2026-08-14 08:20:02.717799: Creating pool of 12 processes to match your CPU count 2026-08-14 08:20:02.844811: predict base end_record 08-15 12:35:00, final soc 1.12kWh, metric 896.14p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 29.16kWh, PV 0.0kWh 2026-08-14 08:20:02.977450: Battery has 1.25 hours left - now at 1.88kWh 2026-08-14 08:20:03.024897: predict base10 end_record 08-15 12:35:00, final soc 1.12kWh, metric 924.79p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:30:00, load 30.16kWh, PV 0.0kWh 2026-08-14 08:20:03.105196: predict best10 end_record 08-15 12:35:00, final soc 1.44kWh, metric 838.31p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:30:00, load 30.16kWh, PV 0.0kWh 2026-08-14 08:20:03.191031: predict best end_record 08-15 12:35:00, final soc 1.51kWh, metric 815.19p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 29.16kWh, PV 0.0kWh 2026-08-14 08:20:03.191141: Saving plan best values to HA entities 2026-08-14 08:20:03.358125: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 08:20:03.363654: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 08:20:03.369176: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.11kWh, house 5.54kWh, export 0.0kWh, metric 815.19p, metric10 838.31p 2026-08-14 08:20:03.443282: Marginal costs baseline metric (no standing charge): 765.2098 2026-08-14 08:20:03.733270: Marginal energy costs matrix computed: min=22.04 max=37.78 2026-08-14 08:20:03.818513: Rate array import [{'start': 500, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.8p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2195, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 500, 'end': 2195, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 08:20:03.819276: - Your estimated bill for today is £6.87 and tomorrow is £7.01 2026-08-14 08:20:03.819329: - Import rates are cheap (21.7p - 24.8p) for the next 7 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 08:20:03.819353: - The battery is currently at 12% and is in eco mode for the next 4 and a quarter hours. 2026-08-14 08:20:03.819372: - For the next 48 hours there will be no solar generation. 2026-08-14 08:20:03.819392: - You will run out of battery in 1 and a quarter hours. 2026-08-14 08:20:03.819423: - Your next charge slot will be in 4 and a quarter hours where import rates will be cheap (22.2p). 2026-08-14 08:20:03.819458: 2026-08-14 08:20:03.878660: Plan calculation took 1.18 seconds 2026-08-14 08:20:03.882026: No high rate period found 2026-08-14 08:20:03.935097: Import threshold used for optimisation was 24.8p 2026-08-14 08:20:03.989463: Low import rate windows [0: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 1: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 2: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 3: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 4: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 5: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 6: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 7: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 8: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 9: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 10: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 11: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 12: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 13: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 14: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 15: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 16: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 17: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 18: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 19: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 20: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 21: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 22: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 23: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 24: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 25: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 26: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 27: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 28: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 29: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 30: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 31: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 32: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 33: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 34: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 35: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 36: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 37: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 38: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 39: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 40: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 41: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 42: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 43: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 44: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 45: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 46: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 47: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 48: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 49: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 50: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 51: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 52: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 53: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 54: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 55: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 56: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 57: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 58: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 59: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 60: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 61: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 62: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 63: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 64: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 65: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 66: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 67: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 68: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 69: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 70: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 71: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 72: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 73: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 74: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 75: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 76: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 77: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 78: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 79: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 80: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 81: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 82: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 83: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 84: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 85: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 86: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 87: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 88: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 89: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 90: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 91: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 92: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 93: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 94: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84] 2026-08-14 08:20:03.996753: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 08:20:03.996917: Inverter 0 disabled charge window while waiting for schedule (now 08-14 08:20:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 08:20:03.997151: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:20:03.997504: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:20:03.997644: No export window planned 2026-08-14 08:20:03.997827: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 08:20:03.997889: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:20:03.998095: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:20:03.998388: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 08:20:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 08:20:03.998467: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 08:20:03.998558: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 08:20:03.998714: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:20:03.998789: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:20:03.998844: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:20:03.998881: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:20:03.998942: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:20:03.998999: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:20:03.999066: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:20:03.999212: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:20:03.999277: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:20:03.999326: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:20:03.999363: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:20:03.999413: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:20:03.999471: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:20:03.999505: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:20:03.999542: Inverter 0 count register writes 0 2026-08-14 08:20:04.019408: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 08:20:04.024939: Total inverter register writes now 806 2026-08-14 08:20:04.058342: Info: Completed run status Demand 2026-08-14 08:20:04.065225: Info: record_status Demand 2026-08-14 08:20:04.072625: Saved current settings to /config/predbat_config.json 2026-08-14 08:20:04.073037: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 08:20:39.183730: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:20:39.183978: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:20:39.184018: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:20:39.184227: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:20:39.184275: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:20:39.184298: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:20:39.184316: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:21:48.326008: Storage: Cleaned up expired cache file octopus_free_url_cache (module=octopus_free) 2026-08-14 08:22:39.402780: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:22:39.403042: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:22:39.403094: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:22:39.403251: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:22:39.403336: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:22:39.403357: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:22:39.403375: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:24:39.620438: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:24:39.620685: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:24:39.620746: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:24:39.620904: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:24:39.621016: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:24:39.621046: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:24:39.621065: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:24:53.649545: TemperatureAPI: Using coordinates latitude 53.4, longitude -2.2 2026-08-14 08:24:53.807017: TemperatureAPI: Successfully fetched temperature data from Open-Meteo API 2026-08-14 08:25:00.723632: --------------- PredBat - update at 2026-08-14 08:25:00+01:00 with clock skew 0 minutes, minutes now 505 2026-08-14 08:25:00.724460: Saved current settings to /config/predbat_config.json 2026-08-14 08:25:00.724594: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 55.0 minutes 2026-08-14 08:25:00.724663: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 08:25:00.724755: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 08:25:00.744543: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 08:25:00.744700: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 08:25:00.745464: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 08:25:00.745645: Predbat mode is set to Control charge & discharge 2026-08-14 08:25:00.939468: Found 21602 load_today datapoints going back 28 days 2026-08-14 08:25:00.939628: Using load_power data to fill gaps in load_today data 2026-08-14 08:25:01.792931: Processing 721 30-minute periods for power integration 2026-08-14 08:25:01.990910: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 08:25:01.991066: Car charging hold False, threshold 6.0kWh 2026-08-14 08:25:01.991120: Current data so far today: load 8.05kWh, import 8.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 08:25:02.006055: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 08:25:02.006996: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 08:25:02.007098: Standing charge is set to 49.98p 2026-08-14 08:25:02.033793: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 08:25:02.033899: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 08:25:02.034119: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 505.0 minutes 2026-08-14 08:25:02.034496: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 504.8 minutes 2026-08-14 08:25:02.037377: Loaded 47 datapoints of futurerate analysis 2026-08-14 08:25:02.123948: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 08:25:02.181198: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 08:25:02.186688: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 08:25:02.187051: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 08:25:02.226513: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 08:25:02.226644: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 08:25:02.227911: High export rate found rates in range 99p to -99p 2026-08-14 08:25:02.312410: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 08:25:02.312535: Car 0 charging is not planned as it is not plugged in 2026-08-14 08:25:02.325642: Battery level now 1.88kWh, -1hr ago 2.08kWh, at midnight 2.43kWh, battery value change in the last hour -4.66p, change today -12.87p, rate_forward 23.31p 2026-08-14 08:25:02.326028: Last hour: net energy 0.03kWh, import 0.03kWh, export 0.0kWh, car 0kWh, load 0.3kWh, net cost 0.71p, import 0.71p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 08:25:02.381287: Today's energy total net 8.4kWh, import 8.4kWh, export 0.0kWh, cost 262.75p, import 212.77p, export 0.0p, carbon 0.0kg 2026-08-14 08:25:02.381444: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 08:25:02.462303: Using weighted-bucket historical load forecast over 14 days 2026-08-14 08:25:02.488619: Today's load divergence 114.2%, in-day adjustment 135.13%, damping 0.95x, yesterday 146.81% today 113.49% blend 64.93% 2026-08-14 08:25:02.488724: Today's predicted so far 3.1kWh with 0.0kWh car/iBoost excluded, 1.58kWh import ignored, and 4.68kWh forecast extra. 2026-08-14 08:25:02.488757: Today's actual load so far 5.17kWh with 0.0kWh car/iBoost excluded, and 2.84kWh import ignored. 2026-08-14 08:25:02.525497: Inverter 0: Type SK Sunsynk 2026-08-14 08:25:02.525590: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 08:25:02.525802: Reserve min: 7%, battery_min: 7% 2026-08-14 08:25:02.525877: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 08:25:02.526180: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 305W, current battery voltage 51.2V, grid power -54W, load power 368W, PV Power 0W 2026-08-14 08:25:02.526341: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:25:02.526430: Inverter 0 scheduled charge enable is False 2026-08-14 08:25:02.526458: Inverter 0 charge windows currently [] 2026-08-14 08:25:02.526484: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 08:25:02.526588: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:25:02.526624: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:25:02.526659: Inverter 0 scheduled discharge enable is False 2026-08-14 08:25:02.526785: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:25:02.526821: Inverter 0 discharge windows currently [] 2026-08-14 08:25:02.526844: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:25:02.526862: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:25:02.526879: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:25:02.584333: Dynamic load last period 0.30kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 08:25:02.584440: Plan was last updated on 2026-08-14 08:15:00+01:00 and is now 10.0 minutes old 2026-08-14 08:25:02.584712: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 08:25:02.584756: Best export window [ ] 2026-08-14 08:25:02.585579: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 08:25:02.588896: Load divergence over 8.0 hours mean 447.13W, min 247.2W, max 1439.4W, std dev 199.58W, divergence 22.32% 2026-08-14 08:25:02.602444: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 08:25:02.602566: LoadML is_calculating False 2026-08-14 08:25:02.602633: Creating pool of 12 processes to match your CPU count 2026-08-14 08:25:02.722113: predict base end_record 08-15 12:40:00, final soc 1.12kWh, metric 899.81p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:25:00, load 29.22kWh, PV 0.0kWh 2026-08-14 08:25:02.870731: Battery has 1.0 hours left - now at 1.76kWh 2026-08-14 08:25:02.915348: predict base10 end_record 08-15 12:40:00, final soc 1.12kWh, metric 928.45p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:25:00, load 30.23kWh, PV 0.0kWh 2026-08-14 08:25:02.996156: predict best10 end_record 08-15 12:40:00, final soc 1.77kWh, metric 849.57p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:25:00, load 30.23kWh, PV 0.0kWh 2026-08-14 08:25:03.080479: predict best end_record 08-15 12:40:00, final soc 1.9kWh, metric 827.99p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:25:00, load 29.22kWh, PV 0.0kWh 2026-08-14 08:25:03.080575: Saving plan best values to HA entities 2026-08-14 08:25:03.248867: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 08:25:03.254664: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 08:25:03.260013: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.12kWh, house 5.63kWh, export 0.0kWh, metric 827.99p, metric10 849.57p 2026-08-14 08:25:03.335817: Marginal costs baseline metric (no standing charge): 778.0063 2026-08-14 08:25:03.615711: Marginal energy costs matrix computed: min=22.05 max=37.38 2026-08-14 08:25:03.692188: Rate array import [{'start': 505, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.8p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2200, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 505, 'end': 2200, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 08:25:03.693000: - Your estimated bill for today is £6.89 and tomorrow is £7.01 2026-08-14 08:25:03.693079: - Import rates are cheap (21.7p - 24.8p) for the next 7 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 08:25:03.693111: - The battery is currently at 11% and is in eco mode for the next 4 hours. 2026-08-14 08:25:03.693155: - For the next 48 hours there will be no solar generation. 2026-08-14 08:25:03.693192: - You will run out of battery in 1 hour. 2026-08-14 08:25:03.693218: - Your next charge slot will be in 4 hours where import rates will be cheap (22.2p). 2026-08-14 08:25:03.693251: 2026-08-14 08:25:03.755258: Plan calculation took 1.17 seconds 2026-08-14 08:25:03.759013: No high rate period found 2026-08-14 08:25:03.815339: Import threshold used for optimisation was 24.8p 2026-08-14 08:25:03.872814: Low import rate windows [0: 08-14 08:00:00 - 08-14 08:30:00 @ 24.84, 1: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 2: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 3: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 4: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 5: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 6: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 7: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 8: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 9: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 10: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 11: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 12: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 13: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 14: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 15: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 16: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 17: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 18: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 19: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 20: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 21: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 22: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 23: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 24: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 25: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 26: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 27: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 28: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 29: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 30: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 31: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 32: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 33: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 34: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 35: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 36: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 37: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 38: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 39: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 40: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 41: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 42: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 43: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 44: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 45: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 46: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 47: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 48: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 49: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 50: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 51: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 52: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 53: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 54: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 55: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 56: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 57: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 58: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 59: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 60: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 61: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 62: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 63: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 64: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 65: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 66: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 67: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 68: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 69: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 70: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 71: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 72: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 73: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 74: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 75: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 76: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 77: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 78: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 79: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 80: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 81: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 82: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 83: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 84: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 85: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 86: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 87: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 88: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 89: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 90: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 91: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 92: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 93: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 94: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84] 2026-08-14 08:25:03.879653: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 08:25:03.879829: Inverter 0 disabled charge window while waiting for schedule (now 08-14 08:25:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 08:25:03.880003: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:25:03.880329: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:25:03.880461: No export window planned 2026-08-14 08:25:03.880643: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 08:25:03.880694: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:25:03.880871: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:25:03.881194: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 08:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 08:25:03.881269: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 08:25:03.881378: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 08:25:03.881523: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:25:03.881573: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:25:03.881615: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:25:03.881671: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:25:03.881732: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:25:03.881795: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:25:03.881858: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:25:03.881997: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:25:03.882047: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:25:03.882090: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:25:03.882140: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:25:03.882198: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:25:03.882255: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:25:03.882315: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:25:03.882364: Inverter 0 count register writes 0 2026-08-14 08:25:03.899035: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 08:25:03.899267: Recompute is saving previous plan... 2026-08-14 08:25:03.902577: Best charge window [ 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 0% ] 2026-08-14 08:25:03.902674: Best export window [ ] 2026-08-14 08:25:03.903490: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 08:25:03.906637: Load divergence over 8.0 hours mean 447.13W, min 247.2W, max 1439.4W, std dev 199.58W, divergence 22.32% 2026-08-14 08:25:03.918631: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 08:25:03.918725: LoadML is_calculating False 2026-08-14 08:25:03.918817: Creating pool of 12 processes to match your CPU count 2026-08-14 08:25:04.016845: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 08:25:04.021066: Optimise levels pass started at 2026-08-14 08:25:04 2026-08-14 08:25:04.021173: Optimise all windows, total charge 94 export 1 2026-08-14 08:25:04.330459: >> Region optimisation pass width 960 2026-08-14 08:25:04.734255: >> Region optimisation pass width 480 2026-08-14 08:25:05.104810: >> Region optimisation pass width 240 2026-08-14 08:25:05.638289: >> Region optimisation pass width 120 2026-08-14 08:25:07.073303: Calculated end_record as 08-15 12:30:00 based on best_price 22.25p, next_charge_start 08-14 12:30:00, max_windows 56 2026-08-14 08:25:07.073555: Optimise levels pass ended at 2026-08-14 08:25:07, duration 3.1 seconds tried 323 combinations 2026-08-14 08:25:07.073659: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1034.53p, best_keep 0kWh, best_cycle 48.48kWh, best_carbon 0kg, best_import 37.64kWh 2026-08-14 08:25:07.095874: Starting detailed optimisation end_record 08-15 12:30:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 08:25:07.098629: Best charge windows best_metric 734.6p, best_cost 756.7p, best_carbon 0kg, best_import 50.28kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:25:07.099464: Best export windows best_metric 734.6p, best_cost 756.7p, best_carbon 0kg, best_import 50.28kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:25:07.099637: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 734.6p, best_cost 756.7p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:07.187811: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 734.49p, best_cost 756.58p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:07.309903: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 734.49p, best_cost 756.58p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:07.454665: Best charge windows best_metric 734.49p, best_cost 756.58p, best_carbon 0kg, best_import 50.28kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:25:07.455047: Best export windows best_metric 734.49p, best_cost 756.58p, best_carbon 0kg, best_import 50.28kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:25:07.456682: Best charge windows best_metric 734.49p, best_cost 756.58p, best_carbon 0kg, best_import 50.28kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:25:07.456870: Best export windows best_metric 734.49p, best_cost 756.58p, best_carbon 0kg, best_import 50.28kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:25:07.457070: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 734.49p, best_cost 756.58p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:07.699099: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 734.49p, best_cost 756.58p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:07.795799: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 734.49p, best_cost 756.58p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:07.929097: Best charge windows best_metric 734.49p, best_cost 756.58p, best_carbon 0kg, best_import 50.28kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:25:07.929440: Best export windows best_metric 734.49p, best_cost 756.58p, best_carbon 0kg, best_import 50.28kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:25:07.931976: Best charge windows best_metric 734.49p, best_cost 756.58p, best_carbon 0kg, best_import 50.28kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:25:07.932159: Best export windows best_metric 734.49p, best_cost 756.58p, best_carbon 0kg, best_import 50.28kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:25:07.932397: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 734.49p, best_cost 756.58p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:08.034160: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 734.49p, best_cost 756.58p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:08.133298: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 734.49p, best_cost 756.58p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:08.268117: Best charge windows best_metric 734.49p, best_cost 756.58p, best_carbon 0kg, best_import 50.28kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:25:08.268410: Best export windows best_metric 734.49p, best_cost 756.58p, best_carbon 0kg, best_import 50.28kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:25:08.268524: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 734.49p, best_cost 756.58p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:08.393871: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 734.49p, best_cost 756.58p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:08.482936: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 734.49p, best_cost 756.58p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:08.703480: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 734.49p, best_cost 756.58p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:08.770378: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 734.49p, best_cost 756.58p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:08.829400: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 734.49p, best_cost 756.58p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:08.898285: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 734.32p, best_cost 756.4p, best_cycle 25.48kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:08.960817: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 734.32p, best_cost 756.4p, best_cycle 25.48kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:09.087476: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 734.02p, best_cost 756.34p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:09.303529: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 733.95p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:09.353080: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:09.390142: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:09.432160: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:09.488041: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:09.538435: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:09.630512: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:09.668545: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:09.705853: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:09.747709: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:09.786611: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:09.830250: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:09.868029: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:09.916116: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:09.952288: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:10.011371: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:10.068094: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:10.115007: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:10.156113: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:10.207624: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:10.246655: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:10.286511: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:10.335691: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:10.378439: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:10.426145: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:10.466767: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:10.508155: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:10.555224: Best charge windows best_metric 733.92p, best_cost 756.33p, best_carbon 0kg, best_import 50.28kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:25:10.555658: Best export windows best_metric 733.92p, best_cost 756.33p, best_carbon 0kg, best_import 50.28kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:25:10.559382: Best charge windows best_metric 733.92p, best_cost 756.33p, best_carbon 0kg, best_import 50.28kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:25:10.559581: Best export windows best_metric 733.92p, best_cost 756.33p, best_carbon 0kg, best_import 50.28kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:25:10.559760: Optimise price set 26.8p, pass trim_import, price 24.94p, start_at_low False, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:10.602335: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:10.686667: Optimise price set 26.4p, pass trim_import, price 24.56p, start_at_low False, best_price_charge 22.25p, best_metric 733.92p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:10.780379: Optimise price set 25.6p, pass trim_import, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 733.91p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:10.823354: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 733.91p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:10.908566: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 733.91p, best_cost 756.33p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.28kWh 2026-08-14 08:25:11.006062: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 733.74p, best_cost 756.07p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:11.138729: Best charge windows best_metric 733.74p, best_cost 756.07p, best_carbon 0kg, best_import 50.21kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:25:11.138886: Best export windows best_metric 733.74p, best_cost 756.07p, best_carbon 0kg, best_import 50.21kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:25:11.139028: Optimise price set 26.8p, pass normal, price 24.94p, start_at_low False, best_price_charge 22.25p, best_metric 733.74p, best_cost 756.07p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:11.182419: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 733.74p, best_cost 756.07p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:11.262830: Optimise price set 26.4p, pass normal, price 24.56p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:11.306248: Optimise price set 25.6p, pass normal, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:11.343987: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:11.557946: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:11.658994: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:11.804494: Best charge windows best_metric 733.7p, best_cost 756.08p, best_carbon 0kg, best_import 50.21kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:25:11.804664: Best export windows best_metric 733.7p, best_cost 756.08p, best_carbon 0kg, best_import 50.21kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:25:11.806527: Best charge windows best_metric 733.7p, best_cost 756.08p, best_carbon 0kg, best_import 50.21kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:25:11.806731: Best export windows best_metric 733.7p, best_cost 756.08p, best_carbon 0kg, best_import 50.21kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:25:11.806870: Optimise price set 26.8p, pass trim_import, price 24.94p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:11.854169: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:11.931474: Optimise price set 26.4p, pass trim_import, price 24.56p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:11.969196: Optimise price set 25.6p, pass trim_import, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:12.013900: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:12.096687: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:12.181384: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:12.316658: Best charge windows best_metric 733.7p, best_cost 756.08p, best_carbon 0kg, best_import 50.21kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:25:12.316930: Best export windows best_metric 733.7p, best_cost 756.08p, best_carbon 0kg, best_import 50.21kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:25:12.317127: Optimise price set 26.8p, pass normal, price 24.94p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:12.351043: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:12.418440: Optimise price set 26.4p, pass normal, price 24.56p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:12.457690: Optimise price set 25.6p, pass normal, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:12.493946: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:12.691366: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:12.765966: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 733.7p, best_cost 756.08p, best_cycle 24.39kWh, best_carbon 0kg, best_import 50.21kWh 2026-08-14 08:25:12.890940: Best charge windows best_metric 733.7p, best_cost 756.08p, best_carbon 0kg, best_import 50.21kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] 2026-08-14 08:25:12.891138: Best export windows best_metric 733.7p, best_cost 756.08p, best_carbon 0kg, best_import 50.21kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:25:12.891464: Tweak plan optimisation started 2026-08-14 08:25:13.167730: Tweak optimisation finished metric 733.7 cost 756.08 metric_keep 0 cycle 24.39 carbon 0 import 50.21 2026-08-14 08:25:13.188332: Swap charge optimisation started metric 733.7p, cost 756.08p, min_improvement_swap 0.1p 2026-08-14 08:25:18.720578: Swap charge optimisation finished metric 733.7p, cost 756.08p 2026-08-14 08:25:18.733556: Raw charge windows [ 14-08 08:00:00 - 14-08 08:30:00 @ 24.84p 0%, 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 9%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100% ] reserve 1.12 2026-08-14 08:25:18.734262: Unclipped charge windows [ 14-08 08:30:00 - 14-08 09:30:00 @ 24.17p 9%, 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 01:30:00 - 15-08 02:30:00 @ 24.87p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 08:30:00 @ 26.8p 100% ] reserve 1.12 2026-08-14 08:25:18.734586: Unfiltered charge windows [ 14-08 08:30:00 - 14-08 09:30:00 @ 24.17p 9%, 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 01:30:00 - 15-08 02:30:00 @ 24.87p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 08:30:00 @ 26.8p 100% ] reserve 1.12 2026-08-14 08:25:18.734845: Filtered charge windows [ 14-08 08:30:00 - 14-08 09:30:00 @ 24.17p 9%, 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 01:30:00 - 15-08 02:30:00 @ 24.87p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 08:30:00 @ 26.8p 100% ] reserve 1.12 2026-08-14 08:25:18.772691: Previous plan best metric is 734.18 (cost 756.6) and new plan best metric is 733.7 (cost 756.08) 2026-08-14 08:25:18.773309: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 08:25:18.773566: Plan valid is now true after recompute was False 2026-08-14 08:25:18.801868: predict base end_record 08-15 12:30:00, final soc 1.12kWh, metric 896.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:25:00, load 29.09kWh, PV 0.0kWh 2026-08-14 08:25:18.920857: Battery has 1.0 hours left - now at 1.76kWh 2026-08-14 08:25:18.966753: predict base10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 925.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:25:00, load 30.09kWh, PV 0.0kWh 2026-08-14 08:25:19.055108: predict best10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 831.11p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:25:00, load 30.09kWh, PV 0.0kWh 2026-08-14 08:25:19.136734: predict best end_record 08-15 12:30:00, final soc 1.12kWh, metric 806.59p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:25:00, load 29.09kWh, PV 0.0kWh 2026-08-14 08:25:19.136836: Saving plan best values to HA entities 2026-08-14 08:25:19.295859: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 08:25:19.301462: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 08:25:19.306891: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.12kWh, house 5.63kWh, export 0.0kWh, metric 806.59p, metric10 831.11p 2026-08-14 08:25:19.391303: Marginal costs baseline metric (no standing charge): 756.6045 2026-08-14 08:25:19.666559: Marginal energy costs matrix computed: min=22.05 max=37.38 2026-08-14 08:25:19.737829: Rate array import [{'start': 505, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.8p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2190, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 505, 'end': 2190, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 08:25:19.738601: - Your estimated bill for today is £6.89 and tomorrow is £7.01 2026-08-14 08:25:19.738652: - Import rates are cheap (21.7p - 24.8p) for the next 7 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 08:25:19.738675: - The battery is currently at 11% and is in eco mode for the next 4 hours. 2026-08-14 08:25:19.738694: - For the next 48 hours there will be no solar generation. 2026-08-14 08:25:19.738712: - You will run out of battery in 1 hour. 2026-08-14 08:25:19.738731: - Your next charge slot will be in 4 hours where import rates will be cheap (22.2p). 2026-08-14 08:25:19.738749: 2026-08-14 08:25:19.797418: Plan calculation took 15.90 seconds 2026-08-14 08:25:19.797806: Inverter 0: Type SK Sunsynk 2026-08-14 08:25:19.797854: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 08:25:19.798170: Reserve min: 7%, battery_min: 7% 2026-08-14 08:25:19.798251: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 08:25:19.798619: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 321W, current battery voltage 51.2V, grid power -54W, load power 380W, PV Power 0W 2026-08-14 08:25:19.798848: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:25:19.798948: Inverter 0 scheduled charge enable is False 2026-08-14 08:25:19.799027: Inverter 0 charge windows currently [] 2026-08-14 08:25:19.799063: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 08:25:19.799192: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:25:19.799230: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:25:19.799269: Inverter 0 scheduled discharge enable is False 2026-08-14 08:25:19.799390: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:25:19.799427: Inverter 0 discharge windows currently [] 2026-08-14 08:25:19.799453: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:25:19.799472: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:25:19.799490: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:25:19.857403: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 08:25:19.857571: Inverter 0 disabled charge window while waiting for schedule (now 08-14 08:25:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 08:25:19.857648: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:25:19.857833: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:25:19.857913: No export window planned 2026-08-14 08:25:19.858050: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 08:25:19.858095: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:25:19.858234: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:25:19.858398: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 08:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 08:25:19.858453: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 08:25:19.858521: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 08:25:19.858647: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:25:19.858695: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:25:19.858753: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:25:19.858781: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:25:19.858808: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:25:19.858832: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:25:19.858857: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:25:19.858919: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:25:19.858974: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:25:19.859006: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:25:19.859043: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:25:19.859069: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:25:19.859094: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:25:19.859133: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:25:19.859171: Inverter 0 count register writes 0 2026-08-14 08:25:19.881241: Total inverter register writes now 806 2026-08-14 08:25:19.917156: Info: Completed run status Demand 2026-08-14 08:25:19.924523: Info: record_status Demand 2026-08-14 08:25:19.931934: Saved current settings to /config/predbat_config.json 2026-08-14 08:25:19.932284: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 08:25:54.040392: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:25:54.040637: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:25:54.040682: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:25:54.040844: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:25:54.040902: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:25:54.040923: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:25:54.040987: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:27:54.259706: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:27:54.259987: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:27:54.260025: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:27:54.260157: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:27:54.260196: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:27:54.260219: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:27:54.260237: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:29:54.480274: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:29:54.480530: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:29:54.480559: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:29:54.480686: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:29:54.480722: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:29:54.480740: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:29:54.480754: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:30:00.553673: --------------- PredBat - update at 2026-08-14 08:30:00+01:00 with clock skew 0 minutes, minutes now 510 2026-08-14 08:30:00.554580: Saved current settings to /config/predbat_config.json 2026-08-14 08:30:00.554724: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 60.0 minutes 2026-08-14 08:30:00.554797: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 08:30:00.554901: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 08:30:00.578577: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 08:30:00.578763: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 08:30:00.579821: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 08:30:00.580027: Predbat mode is set to Control charge & discharge 2026-08-14 08:30:00.764268: Found 21602 load_today datapoints going back 28 days 2026-08-14 08:30:00.764476: Using load_power data to fill gaps in load_today data 2026-08-14 08:30:01.648626: Processing 721 30-minute periods for power integration 2026-08-14 08:30:01.846009: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 08:30:01.846150: Car charging hold False, threshold 6.0kWh 2026-08-14 08:30:01.846197: Current data so far today: load 8.15kWh, import 8.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 08:30:01.860753: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 08:30:01.861651: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 08:30:01.861747: Standing charge is set to 49.98p 2026-08-14 08:30:01.890846: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 08:30:01.890992: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 08:30:01.891256: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 510.0 minutes 2026-08-14 08:30:01.891673: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 509.8 minutes 2026-08-14 08:30:01.895674: Loaded 47 datapoints of futurerate analysis 2026-08-14 08:30:01.996880: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 08:30:02.054980: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 08:30:02.060401: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 08:30:02.060824: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 08:30:02.101786: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 08:30:02.101925: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 08:30:02.103113: High export rate found rates in range 99p to -99p 2026-08-14 08:30:02.184605: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 08:30:02.184734: Car 0 charging is not planned as it is not plugged in 2026-08-14 08:30:02.197559: Battery level now 1.76kWh, -1hr ago 2.08kWh, at midnight 2.43kWh, battery value change in the last hour -7.46p, change today -15.66p, rate_forward 23.31p 2026-08-14 08:30:02.197957: Last hour: net energy 0.02kWh, import 0.02kWh, export 0.0kWh, car 0kWh, load 0.38kWh, net cost 0.59p, import 0.59p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 08:30:02.265717: Today's energy total net 8.4kWh, import 8.4kWh, export 0.0kWh, cost 262.75p, import 212.77p, export 0.0p, carbon 0.0kg 2026-08-14 08:30:02.265946: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 08:30:02.350371: Using weighted-bucket historical load forecast over 14 days 2026-08-14 08:30:02.376697: Today's load divergence 113.99%, in-day adjustment 134.94%, damping 0.95x, yesterday 146.81% today 113.29% blend 64.58% 2026-08-14 08:30:02.376798: Today's predicted so far 3.35kWh with 0.0kWh car/iBoost excluded, 1.42kWh import ignored, and 4.77kWh forecast extra. 2026-08-14 08:30:02.376830: Today's actual load so far 5.41kWh with 0.0kWh car/iBoost excluded, and 2.81kWh import ignored. 2026-08-14 08:30:02.413339: Inverter 0: Type SK Sunsynk 2026-08-14 08:30:02.413430: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 08:30:02.413606: Reserve min: 7%, battery_min: 7% 2026-08-14 08:30:02.413674: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 08:30:02.413961: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 256W, current battery voltage 51.2V, grid power -55W, load power 317W, PV Power 0W 2026-08-14 08:30:02.414119: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:30:02.414207: Inverter 0 scheduled charge enable is False 2026-08-14 08:30:02.414236: Inverter 0 charge windows currently [] 2026-08-14 08:30:02.414262: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 08:30:02.414374: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:30:02.414409: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:30:02.414444: Inverter 0 scheduled discharge enable is False 2026-08-14 08:30:02.414573: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:30:02.414610: Inverter 0 discharge windows currently [] 2026-08-14 08:30:02.414633: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:30:02.414651: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:30:02.414670: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:30:02.479340: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 08:30:02.479447: Plan was last updated on 2026-08-14 08:25:00+01:00 and is now 5.0 minutes old 2026-08-14 08:30:02.479714: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 08:30:02.479778: Best export window [ ] 2026-08-14 08:30:02.480589: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 08:30:02.483750: Load divergence over 8.0 hours mean 447.06W, min 239.4W, max 1403.4W, std dev 191.36W, divergence 21.4% 2026-08-14 08:30:02.496759: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 08:30:02.496894: LoadML is_calculating False 2026-08-14 08:30:02.496994: Creating pool of 12 processes to match your CPU count 2026-08-14 08:30:02.614836: predict base end_record 08-15 12:35:00, final soc 1.12kWh, metric 896.02p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:30:00, load 29.17kWh, PV 0.0kWh 2026-08-14 08:30:02.738932: Battery has 1.0 hours left - now at 1.76kWh 2026-08-14 08:30:02.788557: predict base10 end_record 08-15 12:35:00, final soc 1.12kWh, metric 924.48p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:30:00, load 30.17kWh, PV 0.0kWh 2026-08-14 08:30:02.870330: predict best10 end_record 08-15 12:35:00, final soc 1.44kWh, metric 838.21p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:30:00, load 30.17kWh, PV 0.0kWh 2026-08-14 08:30:02.992502: predict best end_record 08-15 12:35:00, final soc 1.51kWh, metric 815.2p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:30:00, load 29.17kWh, PV 0.0kWh 2026-08-14 08:30:02.992848: Saving plan best values to HA entities 2026-08-14 08:30:03.249103: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 08:30:03.255315: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 08:30:03.261074: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.04kWh, house 5.62kWh, export 0.0kWh, metric 815.2p, metric10 838.21p 2026-08-14 08:30:03.332549: Marginal costs baseline metric (no standing charge): 765.2164 2026-08-14 08:30:03.591755: Marginal energy costs matrix computed: min=22.02 max=36.94 2026-08-14 08:30:03.661399: Rate array import [{'start': 510, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2195, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 510, 'end': 2195, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 08:30:03.662085: - Your estimated bill for today is £6.88 and tomorrow is £6.99 2026-08-14 08:30:03.662132: - Import rates are cheap (21.7p - 24.7p) for the next 7 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 08:30:03.662155: - The battery is currently at 11% and is in eco mode for the next 4 hours. 2026-08-14 08:30:03.662173: - For the next 48 hours there will be no solar generation. 2026-08-14 08:30:03.662190: - You will run out of battery in 1 hour. 2026-08-14 08:30:03.662207: - Your next charge slot will be in 4 hours where import rates will be cheap (22.2p). 2026-08-14 08:30:03.662226: 2026-08-14 08:30:03.724529: Plan calculation took 1.24 seconds 2026-08-14 08:30:03.727965: No high rate period found 2026-08-14 08:30:03.784310: Import threshold used for optimisation was 24.94p 2026-08-14 08:30:03.849364: Low import rate windows [0: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 1: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 2: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 3: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 4: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 5: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 6: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 7: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 8: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 9: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 10: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 11: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 12: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 13: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 14: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 15: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 16: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 17: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 18: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 19: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 20: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 21: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 22: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 23: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 24: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 25: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 26: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 27: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 28: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 29: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 30: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 31: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 32: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 33: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 34: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 35: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 36: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 37: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 38: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 39: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 40: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 41: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 42: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 43: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 44: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 45: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 46: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 47: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 48: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 49: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 50: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 51: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 52: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 53: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 54: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 55: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 56: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 57: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 58: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 59: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 60: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 61: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 62: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 63: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 64: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 65: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 66: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 67: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 68: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 69: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 70: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 71: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 72: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 73: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 74: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 75: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 76: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 77: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 78: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 79: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 80: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 81: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 82: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 83: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 84: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 85: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 86: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 87: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 88: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 89: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 90: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 91: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 92: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 93: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84] 2026-08-14 08:30:03.856423: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 08:30:03.856574: Inverter 0 disabled charge window while waiting for schedule (now 08-14 08:30:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 08:30:03.856718: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:30:03.857142: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:30:03.857306: No export window planned 2026-08-14 08:30:03.857477: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 08:30:03.857525: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:30:03.857671: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:30:03.858008: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 08:30:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 08:30:03.858296: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 08:30:03.858503: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 08:30:03.858623: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:30:03.858666: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:30:03.858694: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:30:03.858728: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:30:03.858753: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:30:03.858780: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:30:03.858806: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:30:03.858895: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:30:03.858937: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:30:03.858963: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:30:03.858987: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:30:03.859011: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:30:03.859036: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:30:03.859060: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:30:03.859080: Inverter 0 count register writes 0 2026-08-14 08:30:03.876922: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 08:30:03.882621: Total inverter register writes now 806 2026-08-14 08:30:03.918688: Info: Completed run status Demand 2026-08-14 08:30:03.927055: Info: record_status Demand 2026-08-14 08:30:03.935110: Saved current settings to /config/predbat_config.json 2026-08-14 08:30:03.935445: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 08:30:39.052282: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:30:39.052623: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:30:39.052692: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:30:39.052909: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:30:39.053036: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:30:39.053074: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:30:39.053111: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:32:39.295642: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:32:39.295988: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:32:39.296053: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:32:39.296257: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:32:39.296312: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:32:39.296354: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:32:39.296395: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:34:16.742206: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 08:34:17.662123: Processing 1345 30-minute periods for power integration 2026-08-14 08:34:17.769655: ML Component: Car charging hold False, car energy reported load False 2026-08-14 08:34:17.885309: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 08:34:17.990597: ML Temperature data points: 49891 2026-08-14 08:34:18.293145: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 08:34:18.339959: ML Component: Data fetch completed, load data age 55.0 days, 16084 data points 2026-08-14 08:34:18.340146: ML Component: No training needed, model age is 1.17 hours 2026-08-14 08:34:18.340250: ML Component: Generating predictions load data age 55.0 days, 16084 data points 2026-08-14 08:34:18.492655: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0354 max_dow {0: 0.10909062506761402, 1: 0.09740000026300549, 2: 0.11353750061187895, 3: 0.11734375001909211, 4: 0.16123125033210967, 5: 0.09046249974276871, 6: 0.1105406252272427} 2026-08-14 08:34:20.006457: ML Component: Generated 576 predictions (total 38.58 kWh over 48h) 2026-08-14 08:34:20.049851: ML Component: Prediction cycle completed 2026-08-14 08:34:20.184094: ML Component: Saved 16084 steps (55 days) of history to /config/predbat_ml_history.npz 2026-08-14 08:34:39.519758: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:34:39.520160: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:34:39.520263: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:34:39.520515: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:34:39.520578: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:34:39.520616: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:34:39.520648: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:35:00.631204: --------------- PredBat - update at 2026-08-14 08:35:00+01:00 with clock skew 0 minutes, minutes now 515 2026-08-14 08:35:00.632056: Saved current settings to /config/predbat_config.json 2026-08-14 08:35:00.632216: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 65.0 minutes 2026-08-14 08:35:00.632288: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 08:35:00.632408: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 08:35:00.651700: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 08:35:00.651843: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 08:35:00.652490: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 08:35:00.652627: Predbat mode is set to Control charge & discharge 2026-08-14 08:35:00.835798: Found 21602 load_today datapoints going back 28 days 2026-08-14 08:35:00.835958: Using load_power data to fill gaps in load_today data 2026-08-14 08:35:01.663944: Processing 721 30-minute periods for power integration 2026-08-14 08:35:01.857111: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 08:35:01.857576: Car charging hold False, threshold 6.0kWh 2026-08-14 08:35:01.857635: Current data so far today: load 8.2kWh, import 8.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 08:35:01.871823: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 08:35:01.872862: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 08:35:01.873449: Standing charge is set to 49.98p 2026-08-14 08:35:01.903322: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 08:35:01.903426: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 08:35:01.903620: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 515.0 minutes 2026-08-14 08:35:01.904029: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 514.8 minutes 2026-08-14 08:35:01.907245: Loaded 47 datapoints of futurerate analysis 2026-08-14 08:35:01.992075: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 08:35:02.049927: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 08:35:02.055279: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 08:35:02.055738: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 08:35:02.099667: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 08:35:02.099835: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 08:35:02.101900: High export rate found rates in range 99p to -99p 2026-08-14 08:35:02.188695: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 08:35:02.189165: Car 0 charging is not planned as it is not plugged in 2026-08-14 08:35:02.202442: Battery level now 1.76kWh, -1hr ago 2.08kWh, at midnight 2.43kWh, battery value change in the last hour -7.46p, change today -15.66p, rate_forward 23.31p 2026-08-14 08:35:02.203019: Last hour: net energy 0.02kWh, import 0.02kWh, export 0.0kWh, car 0kWh, load 0.4kWh, net cost 0.48p, import 0.48p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 08:35:02.260338: Today's energy total net 8.4kWh, import 8.4kWh, export 0.0kWh, cost 262.75p, import 212.77p, export 0.0p, carbon 0.0kg 2026-08-14 08:35:02.260470: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 08:35:02.342030: Using weighted-bucket historical load forecast over 14 days 2026-08-14 08:35:02.367519: Today's load divergence 113.72%, in-day adjustment 134.73%, damping 0.95x, yesterday 146.81% today 113.03% blend 64.24% 2026-08-14 08:35:02.367616: Today's predicted so far 3.4kWh with 0.0kWh car/iBoost excluded, 1.43kWh import ignored, and 4.83kWh forecast extra. 2026-08-14 08:35:02.367648: Today's actual load so far 5.41kWh with 0.0kWh car/iBoost excluded, and 2.94kWh import ignored. 2026-08-14 08:35:02.404163: Inverter 0: Type SK Sunsynk 2026-08-14 08:35:02.404258: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 08:35:02.404536: Reserve min: 7%, battery_min: 7% 2026-08-14 08:35:02.404652: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 08:35:02.405070: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 301W, current battery voltage 51.2V, grid power -54W, load power 363W, PV Power 0W 2026-08-14 08:35:02.405302: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:35:02.405443: Inverter 0 scheduled charge enable is False 2026-08-14 08:35:02.405492: Inverter 0 charge windows currently [] 2026-08-14 08:35:02.405548: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 08:35:02.405726: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:35:02.405771: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:35:02.405828: Inverter 0 scheduled discharge enable is False 2026-08-14 08:35:02.406036: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:35:02.406081: Inverter 0 discharge windows currently [] 2026-08-14 08:35:02.406116: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:35:02.406152: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:35:02.406185: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:35:02.468905: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 08:35:02.469056: Plan was last updated on 2026-08-14 08:25:00+01:00 and is now 10.0 minutes old 2026-08-14 08:35:02.469357: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 08:35:02.469402: Best export window [ ] 2026-08-14 08:35:02.470243: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 08:35:02.473532: Load divergence over 8.0 hours mean 447.06W, min 230.4W, max 1260.0W, std dev 187.65W, divergence 20.99% 2026-08-14 08:35:02.486443: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 08:35:02.486560: LoadML is_calculating False 2026-08-14 08:35:02.486675: Creating pool of 12 processes to match your CPU count 2026-08-14 08:35:02.605354: predict base end_record 08-15 12:40:00, final soc 1.12kWh, metric 895.5p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 29.21kWh, PV 0.0kWh 2026-08-14 08:35:02.731691: Battery has 1.0 hours left - now at 1.76kWh 2026-08-14 08:35:02.778466: predict base10 end_record 08-15 12:40:00, final soc 1.12kWh, metric 923.98p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 30.21kWh, PV 0.0kWh 2026-08-14 08:35:02.857262: predict best10 end_record 08-15 12:40:00, final soc 1.77kWh, metric 845.56p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 30.21kWh, PV 0.0kWh 2026-08-14 08:35:02.941799: predict best end_record 08-15 12:40:00, final soc 1.9kWh, metric 824.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 29.21kWh, PV 0.0kWh 2026-08-14 08:35:02.941892: Saving plan best values to HA entities 2026-08-14 08:35:03.115830: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 08:35:03.121386: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 08:35:03.126740: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.03kWh, house 5.56kWh, export 0.0kWh, metric 824.09p, metric10 845.56p 2026-08-14 08:35:03.201778: Marginal costs baseline metric (no standing charge): 774.1071 2026-08-14 08:35:03.474332: Marginal energy costs matrix computed: min=21.98 max=36.38 2026-08-14 08:35:03.548137: Rate array import [{'start': 515, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2200, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 515, 'end': 2200, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 08:35:03.548802: - Your estimated bill for today is £6.87 and tomorrow is £6.97 2026-08-14 08:35:03.548846: - Import rates are cheap (21.7p - 24.7p) for the next 7 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 08:35:03.548868: - The battery is currently at 11% and is in eco mode for the next 3 hours. 2026-08-14 08:35:03.548886: - For the next 48 hours there will be no solar generation. 2026-08-14 08:35:03.548903: - You will run out of battery in 1 hour. 2026-08-14 08:35:03.548920: - Your next charge slot will be in 3 hours where import rates will be cheap (22.2p). 2026-08-14 08:35:03.548967: 2026-08-14 08:35:03.608943: Plan calculation took 1.14 seconds 2026-08-14 08:35:03.612276: No high rate period found 2026-08-14 08:35:03.662953: Import threshold used for optimisation was 24.94p 2026-08-14 08:35:03.722051: Low import rate windows [0: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 1: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 2: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 3: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 4: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 5: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 6: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 7: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 8: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 9: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 10: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 11: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 12: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 13: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 14: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 15: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 16: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 17: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 18: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 19: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 20: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 21: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 22: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 23: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 24: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 25: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 26: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 27: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 28: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 29: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 30: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 31: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 32: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 33: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 34: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 35: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 36: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 37: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 38: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 39: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 40: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 41: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 42: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 43: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 44: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 45: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 46: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 47: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 48: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 49: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 50: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 51: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 52: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 53: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 54: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 55: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 56: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 57: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 58: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 59: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 60: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 61: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 62: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 63: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 64: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 65: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 66: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 67: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 68: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 69: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 70: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 71: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 72: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 73: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 74: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 75: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 76: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 77: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 78: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 79: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 80: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 81: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 82: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 83: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 84: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 85: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 86: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 87: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 88: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 89: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 90: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 91: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 92: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 93: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84, 94: 08-16 08:30:00 - 08-16 09:00:00 @ 24.56] 2026-08-14 08:35:03.730222: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 08:35:03.730367: Inverter 0 disabled charge window while waiting for schedule (now 08-14 08:35:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 08:35:03.730478: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:35:03.730714: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:35:03.730822: No export window planned 2026-08-14 08:35:03.730943: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 08:35:03.731002: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:35:03.731143: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:35:03.731347: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 08:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 08:35:03.731407: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 08:35:03.731472: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 08:35:03.731576: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:35:03.731610: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:35:03.731667: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:35:03.731696: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:35:03.731726: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:35:03.731751: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:35:03.731776: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:35:03.731849: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:35:03.731887: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:35:03.731914: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:35:03.731938: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:35:03.731966: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:35:03.732006: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:35:03.732038: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:35:03.732058: Inverter 0 count register writes 0 2026-08-14 08:35:03.749169: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 08:35:03.749361: Recompute is saving previous plan... 2026-08-14 08:35:03.752449: Best charge window [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 0% ] 2026-08-14 08:35:03.752528: Best export window [ ] 2026-08-14 08:35:03.753349: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 08:35:03.756523: Load divergence over 8.0 hours mean 447.06W, min 230.4W, max 1260.0W, std dev 187.65W, divergence 20.99% 2026-08-14 08:35:03.768759: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 08:35:03.768889: LoadML is_calculating False 2026-08-14 08:35:03.769005: Creating pool of 12 processes to match your CPU count 2026-08-14 08:35:03.860798: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 08:35:03.863640: Optimise levels pass started at 2026-08-14 08:35:03 2026-08-14 08:35:03.865757: Optimise all windows, total charge 94 export 1 2026-08-14 08:35:04.174481: >> Region optimisation pass width 960 2026-08-14 08:35:04.570705: >> Region optimisation pass width 480 2026-08-14 08:35:04.912528: >> Region optimisation pass width 240 2026-08-14 08:35:05.646487: >> Region optimisation pass width 120 2026-08-14 08:35:06.972722: Calculated end_record as 08-15 12:30:00 based on best_price 22.25p, next_charge_start 08-14 12:30:00, max_windows 55 2026-08-14 08:35:06.973196: Optimise levels pass ended at 2026-08-14 08:35:06, duration 3.1 seconds tried 355 combinations 2026-08-14 08:35:06.973443: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1032.06p, best_keep 0kWh, best_cycle 48.54kWh, best_carbon 0kg, best_import 37.48kWh 2026-08-14 08:35:06.994981: Starting detailed optimisation end_record 08-15 12:30:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 16.0, 13.5, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 08:35:06.997036: Best charge windows best_metric 730.76p, best_cost 752.94p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:35:06.997157: Best export windows best_metric 730.76p, best_cost 752.94p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:35:06.997326: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 730.76p, best_cost 752.94p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:07.097692: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 730.65p, best_cost 752.81p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:07.200368: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 730.65p, best_cost 752.81p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:07.350629: Best charge windows best_metric 730.65p, best_cost 752.81p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:35:07.350928: Best export windows best_metric 730.65p, best_cost 752.81p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:35:07.353101: Best charge windows best_metric 730.65p, best_cost 752.81p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:35:07.353252: Best export windows best_metric 730.65p, best_cost 752.81p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:35:07.353476: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 730.65p, best_cost 752.81p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:07.579455: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 730.65p, best_cost 752.81p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:07.664640: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 730.65p, best_cost 752.81p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:07.822383: Best charge windows best_metric 730.65p, best_cost 752.81p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:35:07.823046: Best export windows best_metric 730.65p, best_cost 752.81p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:35:07.825499: Best charge windows best_metric 730.65p, best_cost 752.81p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:35:07.825784: Best export windows best_metric 730.65p, best_cost 752.81p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:35:07.826263: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 730.65p, best_cost 752.81p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:07.908649: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 730.65p, best_cost 752.81p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:07.998534: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 730.65p, best_cost 752.81p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:08.128496: Best charge windows best_metric 730.65p, best_cost 752.81p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:35:08.128845: Best export windows best_metric 730.65p, best_cost 752.81p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:35:08.129013: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 730.65p, best_cost 752.81p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:08.251433: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 730.65p, best_cost 752.81p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:08.328380: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 730.65p, best_cost 752.81p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:08.524213: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 730.65p, best_cost 752.81p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:08.590490: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 730.65p, best_cost 752.81p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:08.649474: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 730.65p, best_cost 752.81p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:08.714444: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 730.38p, best_cost 752.55p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:08.777071: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 730.38p, best_cost 752.55p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:08.893226: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 730.22p, best_cost 752.55p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.068246: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.112651: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.146929: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.193713: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.237930: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.269869: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.368281: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.401950: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.442070: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.492536: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.531645: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.583447: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.626257: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.667825: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.707474: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.752793: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.800834: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.850968: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.891157: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.926712: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.960518: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:09.999569: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:10.041318: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:10.091451: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:10.128315: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:10.164203: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:10.205970: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:10.244489: Best charge windows best_metric 730.1p, best_cost 752.54p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:35:10.244687: Best export windows best_metric 730.1p, best_cost 752.54p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:35:10.246639: Best charge windows best_metric 730.1p, best_cost 752.54p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:35:10.246815: Best export windows best_metric 730.1p, best_cost 752.54p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:35:10.246967: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:10.347969: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 730.1p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:10.389184: Optimise price set 25.6p, pass trim_import, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:10.427011: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:10.516095: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:10.613594: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:10.780816: Best charge windows best_metric 730.09p, best_cost 752.54p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:35:10.781427: Best export windows best_metric 730.09p, best_cost 752.54p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:35:10.781810: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:10.865281: Optimise price set 25.6p, pass normal, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:10.906473: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:11.121539: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:11.225558: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:11.359941: Best charge windows best_metric 730.09p, best_cost 752.54p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:35:11.360110: Best export windows best_metric 730.09p, best_cost 752.54p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:35:11.361644: Best charge windows best_metric 730.09p, best_cost 752.54p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:35:11.361781: Best export windows best_metric 730.09p, best_cost 752.54p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:35:11.361930: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:11.430068: Optimise price set 25.6p, pass trim_import, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:11.461667: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:11.545458: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:11.623085: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:11.740104: Best charge windows best_metric 730.09p, best_cost 752.54p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:35:11.740262: Best export windows best_metric 730.09p, best_cost 752.54p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:35:11.740868: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:11.805521: Optimise price set 25.6p, pass normal, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:11.835064: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:12.048482: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:12.127502: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 730.09p, best_cost 752.54p, best_cycle 25.39kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:35:12.250700: Best charge windows best_metric 730.09p, best_cost 752.54p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:35:12.250951: Best export windows best_metric 730.09p, best_cost 752.54p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:35:12.251241: Tweak plan optimisation started 2026-08-14 08:35:12.532251: Tweak optimisation finished metric 730.1 cost 752.54 metric_keep 0 cycle 25.39 carbon 0 import 50.18 2026-08-14 08:35:12.548257: Swap charge optimisation started metric 730.1p, cost 752.54p, min_improvement_swap 0.1p 2026-08-14 08:35:16.465786: Swap charge optimisation finished metric 730.1p, cost 752.54p 2026-08-14 08:35:16.476154: Raw charge windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] reserve 1.12 2026-08-14 08:35:16.476744: Unclipped charge windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 14:30:00 @ 21.75p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 09:00:00 @ 25.68p 100% ] reserve 1.12 2026-08-14 08:35:16.477196: Unfiltered charge windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 14:30:00 @ 21.75p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 09:00:00 @ 25.68p 100% ] reserve 1.12 2026-08-14 08:35:16.477462: Filtered charge windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 15:00:00 @ 21.99p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 09:00:00 @ 25.68p 100% ] reserve 1.12 2026-08-14 08:35:16.508105: Previous plan best metric is 730.38 (cost 752.82) and new plan best metric is 730.1 (cost 752.54) 2026-08-14 08:35:16.508305: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 08:35:16.508505: Plan valid is now true after recompute was False 2026-08-14 08:35:16.531828: predict base end_record 08-15 12:30:00, final soc 1.12kWh, metric 892.71p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 29.09kWh, PV 0.0kWh 2026-08-14 08:35:16.628274: Battery has 1.0 hours left - now at 1.76kWh 2026-08-14 08:35:16.665758: predict base10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 921.05p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 30.08kWh, PV 0.0kWh 2026-08-14 08:35:16.731221: predict best10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 827.22p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 30.08kWh, PV 0.0kWh 2026-08-14 08:35:16.800926: predict best end_record 08-15 12:30:00, final soc 1.12kWh, metric 802.81p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 29.09kWh, PV 0.0kWh 2026-08-14 08:35:16.801153: Saving plan best values to HA entities 2026-08-14 08:35:16.958743: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 08:35:16.963795: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 08:35:16.968788: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.03kWh, house 5.56kWh, export 0.0kWh, metric 802.81p, metric10 827.22p 2026-08-14 08:35:17.032935: Marginal costs baseline metric (no standing charge): 752.8228 2026-08-14 08:35:17.256692: Marginal energy costs matrix computed: min=21.98 max=36.38 2026-08-14 08:35:17.319709: Rate array import [{'start': 515, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2190, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 515, 'end': 2190, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 08:35:17.320317: - Your estimated bill for today is £6.87 and tomorrow is £6.97 2026-08-14 08:35:17.320361: - Import rates are cheap (21.7p - 24.7p) for the next 7 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 08:35:17.320380: - The battery is currently at 11% and is in eco mode for the next 3 hours. 2026-08-14 08:35:17.320402: - For the next 48 hours there will be no solar generation. 2026-08-14 08:35:17.320437: - You will run out of battery in 1 hour. 2026-08-14 08:35:17.320467: - Your next charge slot will be in 3 hours where import rates will be cheap (22.2p). 2026-08-14 08:35:17.320501: 2026-08-14 08:35:17.374887: Plan calculation took 13.63 seconds 2026-08-14 08:35:17.375258: Inverter 0: Type SK Sunsynk 2026-08-14 08:35:17.375309: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 08:35:17.375567: Reserve min: 7%, battery_min: 7% 2026-08-14 08:35:17.375642: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 08:35:17.376004: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 314W, current battery voltage 51.2V, grid power -54W, load power 376W, PV Power 0W 2026-08-14 08:35:17.376233: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:35:17.376333: Inverter 0 scheduled charge enable is False 2026-08-14 08:35:17.376373: Inverter 0 charge windows currently [] 2026-08-14 08:35:17.376406: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 08:35:17.376520: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:35:17.376556: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:35:17.376591: Inverter 0 scheduled discharge enable is False 2026-08-14 08:35:17.376716: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:35:17.376752: Inverter 0 discharge windows currently [] 2026-08-14 08:35:17.376778: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:35:17.376827: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:35:17.376847: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:35:17.423012: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 08:35:17.423169: Inverter 0 disabled charge window while waiting for schedule (now 08-14 08:35:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 08:35:17.423256: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:35:17.423443: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:35:17.423517: No export window planned 2026-08-14 08:35:17.423628: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 08:35:17.423655: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:35:17.423782: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:35:17.423948: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 08:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 08:35:17.424005: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 08:35:17.424056: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 08:35:17.424127: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:35:17.424153: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:35:17.424173: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:35:17.424194: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:35:17.424213: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:35:17.424233: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:35:17.424253: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:35:17.424301: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:35:17.424324: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:35:17.424344: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:35:17.424363: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:35:17.424382: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:35:17.424400: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:35:17.424421: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:35:17.424438: Inverter 0 count register writes 0 2026-08-14 08:35:17.442822: Total inverter register writes now 806 2026-08-14 08:35:17.473340: Info: Completed run status Demand 2026-08-14 08:35:17.479120: Info: record_status Demand 2026-08-14 08:35:17.486405: Saved current settings to /config/predbat_config.json 2026-08-14 08:35:17.486715: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 08:35:54.585743: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:35:54.586097: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:35:54.586145: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:35:54.586279: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:35:54.586345: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:35:54.586366: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:35:54.586387: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:38:08.817424: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:38:08.817665: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:38:08.817700: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:38:08.817854: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:38:08.817893: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:38:08.817915: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:38:08.817932: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:40:00.027758: --------------- PredBat - update at 2026-08-14 08:40:00+01:00 with clock skew 0 minutes, minutes now 520 2026-08-14 08:40:00.028481: Saved current settings to /config/predbat_config.json 2026-08-14 08:40:00.028599: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 70.0 minutes 2026-08-14 08:40:00.028703: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 08:40:00.028797: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 08:40:00.054531: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 08:40:00.054657: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 08:40:00.055280: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 08:40:00.055417: Predbat mode is set to Control charge & discharge 2026-08-14 08:40:00.244178: Found 21602 load_today datapoints going back 28 days 2026-08-14 08:40:00.244346: Using load_power data to fill gaps in load_today data 2026-08-14 08:40:01.099462: Processing 721 30-minute periods for power integration 2026-08-14 08:40:01.294204: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 08:40:01.294339: Car charging hold False, threshold 6.0kWh 2026-08-14 08:40:01.294386: Current data so far today: load 8.1kWh, import 8.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 08:40:01.310613: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 08:40:01.311551: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 08:40:01.311647: Standing charge is set to 49.98p 2026-08-14 08:40:01.343516: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 08:40:01.343625: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 08:40:01.343881: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 520.0 minutes 2026-08-14 08:40:01.344359: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 519.8 minutes 2026-08-14 08:40:01.347530: Loaded 47 datapoints of futurerate analysis 2026-08-14 08:40:01.432063: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 08:40:01.488512: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 08:40:01.493890: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 08:40:01.494283: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 08:40:01.533820: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 08:40:01.533941: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 08:40:01.535151: High export rate found rates in range 99p to -99p 2026-08-14 08:40:01.618398: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 08:40:01.618518: Car 0 charging is not planned as it is not plugged in 2026-08-14 08:40:01.630949: Battery level now 1.76kWh, -1hr ago 2.08kWh, at midnight 2.43kWh, battery value change in the last hour -7.46p, change today -15.66p, rate_forward 23.31p 2026-08-14 08:40:01.631918: Last hour: net energy 0.01kWh, import 0.01kWh, export 0.0kWh, car 0kWh, load 0.28kWh, net cost 0.36p, import 0.36p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 08:40:01.697308: Today's energy total net 8.4kWh, import 8.4kWh, export 0.0kWh, cost 262.75p, import 212.77p, export 0.0p, carbon 0.0kg 2026-08-14 08:40:01.697483: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 08:40:01.779144: Using weighted-bucket historical load forecast over 14 days 2026-08-14 08:40:01.805718: Today's load divergence 112.01%, in-day adjustment 134.03%, damping 0.95x, yesterday 146.81% today 111.41% blend 63.89% 2026-08-14 08:40:01.805818: Today's predicted so far 3.34kWh with 0.0kWh car/iBoost excluded, 1.48kWh import ignored, and 4.83kWh forecast extra. 2026-08-14 08:40:01.805851: Today's actual load so far 5.06kWh with 0.0kWh car/iBoost excluded, and 3.15kWh import ignored. 2026-08-14 08:40:01.843756: Inverter 0: Type SK Sunsynk 2026-08-14 08:40:01.843848: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 08:40:01.844091: Reserve min: 7%, battery_min: 7% 2026-08-14 08:40:01.844179: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 08:40:01.844501: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 302W, current battery voltage 51.2V, grid power -55W, load power 368W, PV Power 0W 2026-08-14 08:40:01.844702: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:40:01.844813: Inverter 0 scheduled charge enable is False 2026-08-14 08:40:01.844863: Inverter 0 charge windows currently [] 2026-08-14 08:40:01.844920: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 08:40:01.845226: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:40:01.845295: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:40:01.845362: Inverter 0 scheduled discharge enable is False 2026-08-14 08:40:01.845534: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:40:01.845668: Inverter 0 discharge windows currently [] 2026-08-14 08:40:01.845728: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:40:01.845751: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:40:01.845768: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:40:01.908836: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 08:40:01.908944: Plan was last updated on 2026-08-14 08:35:00+01:00 and is now 5.0 minutes old 2026-08-14 08:40:01.909261: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 08:40:01.909306: Best export window [ ] 2026-08-14 08:40:01.910073: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 08:40:01.913371: Load divergence over 8.0 hours mean 446.97W, min 240.6W, max 1225.8W, std dev 177.89W, divergence 19.9% 2026-08-14 08:40:01.926501: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 08:40:01.926628: LoadML is_calculating False 2026-08-14 08:40:01.926695: Creating pool of 12 processes to match your CPU count 2026-08-14 08:40:02.048756: predict base end_record 08-15 12:35:00, final soc 1.12kWh, metric 891.18p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 28.94kWh, PV 0.0kWh 2026-08-14 08:40:02.190107: Battery has 1.0 hours left - now at 1.76kWh 2026-08-14 08:40:02.237186: predict base10 end_record 08-15 12:35:00, final soc 1.12kWh, metric 919.41p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 29.93kWh, PV 0.0kWh 2026-08-14 08:40:02.314670: predict best10 end_record 08-15 12:35:00, final soc 1.44kWh, metric 833.65p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 29.93kWh, PV 0.0kWh 2026-08-14 08:40:02.399820: predict best end_record 08-15 12:35:00, final soc 1.51kWh, metric 810.89p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 28.94kWh, PV 0.0kWh 2026-08-14 08:40:02.399915: Saving plan best values to HA entities 2026-08-14 08:40:02.577828: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 08:40:02.583053: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 08:40:02.588420: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.02kWh, house 5.47kWh, export 0.0kWh, metric 810.89p, metric10 833.65p 2026-08-14 08:40:02.664109: Marginal costs baseline metric (no standing charge): 760.9077 2026-08-14 08:40:02.908147: Marginal energy costs matrix computed: min=21.95 max=35.87 2026-08-14 08:40:02.990585: Rate array import [{'start': 520, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2195, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 520, 'end': 2195, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 08:40:02.991274: - Your estimated bill for today is £6.85 and tomorrow is £6.97 2026-08-14 08:40:02.991320: - Import rates are cheap (21.7p - 24.7p) for the next 7 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 08:40:02.991342: - The battery is currently at 11% and is in eco mode for the next 3 and three quarters hours. 2026-08-14 08:40:02.991379: - For the next 48 hours there will be no solar generation. 2026-08-14 08:40:02.991398: - You will run out of battery in 1 hour. 2026-08-14 08:40:02.991415: - Your next charge slot will be in 3 and three quarters hours where import rates will be cheap (22.2p). 2026-08-14 08:40:02.991432: 2026-08-14 08:40:03.047889: Plan calculation took 1.14 seconds 2026-08-14 08:40:03.051291: No high rate period found 2026-08-14 08:40:03.102623: Import threshold used for optimisation was 24.8p 2026-08-14 08:40:03.155135: Low import rate windows [0: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 1: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 2: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 3: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 4: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 5: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 6: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 7: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 8: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 9: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 10: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 11: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 12: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 13: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 14: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 15: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 16: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 17: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 18: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 19: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 20: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 21: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 22: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 23: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 24: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 25: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 26: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 27: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 28: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 29: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 30: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 31: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 32: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 33: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 34: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 35: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 36: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 37: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 38: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 39: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 40: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 41: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 42: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 43: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 44: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 45: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 46: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 47: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 48: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 49: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 50: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 51: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 52: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 53: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 54: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 55: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 56: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 57: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 58: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 59: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 60: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 61: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 62: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 63: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 64: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 65: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 66: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 67: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 68: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 69: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 70: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 71: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 72: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 73: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 74: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 75: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 76: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 77: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 78: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 79: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 80: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 81: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 82: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 83: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 84: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 85: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 86: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 87: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 88: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 89: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 90: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 91: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 92: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 93: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84, 94: 08-16 08:30:00 - 08-16 09:00:00 @ 24.56] 2026-08-14 08:40:03.162925: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 08:40:03.163059: Inverter 0 disabled charge window while waiting for schedule (now 08-14 08:40:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 08:40:03.163162: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:40:03.163408: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:40:03.163500: No export window planned 2026-08-14 08:40:03.163611: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 08:40:03.163674: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:40:03.163783: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:40:03.163976: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 08:40:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 08:40:03.164074: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 08:40:03.164124: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 08:40:03.164210: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:40:03.164238: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:40:03.164260: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:40:03.164285: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:40:03.164311: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:40:03.164336: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:40:03.164355: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:40:03.164411: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:40:03.164435: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:40:03.164455: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:40:03.164474: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:40:03.164498: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:40:03.164517: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:40:03.164556: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:40:03.164575: Inverter 0 count register writes 0 2026-08-14 08:40:03.180379: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 08:40:03.186102: Total inverter register writes now 806 2026-08-14 08:40:03.217799: Info: Completed run status Demand 2026-08-14 08:40:03.224618: Info: record_status Demand 2026-08-14 08:40:03.231554: Saved current settings to /config/predbat_config.json 2026-08-14 08:40:03.231859: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 08:40:39.341942: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:40:39.343166: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:40:39.343248: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:40:39.343435: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:40:39.343485: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:40:39.343507: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:40:39.343524: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:42:39.568067: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:42:39.568426: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:42:39.568512: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:42:39.568741: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:42:39.568797: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:42:39.568841: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:42:39.568876: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:44:53.809627: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:44:53.809860: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:44:53.809905: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:44:53.810159: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:44:53.810222: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:44:53.810242: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:44:53.810258: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:45:00.892532: --------------- PredBat - update at 2026-08-14 08:45:00+01:00 with clock skew 0 minutes, minutes now 525 2026-08-14 08:45:00.893516: Saved current settings to /config/predbat_config.json 2026-08-14 08:45:00.893674: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 75.0 minutes 2026-08-14 08:45:00.893772: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 08:45:00.893930: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 08:45:00.930045: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 08:45:00.930201: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 08:45:00.930865: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 08:45:00.930981: Predbat mode is set to Control charge & discharge 2026-08-14 08:45:01.110496: Found 21602 load_today datapoints going back 28 days 2026-08-14 08:45:01.110650: Using load_power data to fill gaps in load_today data 2026-08-14 08:45:01.840772: Processing 721 30-minute periods for power integration 2026-08-14 08:45:02.033072: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 08:45:02.033202: Car charging hold False, threshold 6.0kWh 2026-08-14 08:45:02.033239: Current data so far today: load 8.1kWh, import 8.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 08:45:02.045971: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 08:45:02.046957: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 08:45:02.047256: Standing charge is set to 49.98p 2026-08-14 08:45:02.071954: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 08:45:02.072106: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 08:45:02.072365: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 525.0 minutes 2026-08-14 08:45:02.072806: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 524.8 minutes 2026-08-14 08:45:02.075477: Loaded 47 datapoints of futurerate analysis 2026-08-14 08:45:02.147234: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 08:45:02.195080: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 08:45:02.199752: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 08:45:02.200276: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 08:45:02.232847: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 08:45:02.233002: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 08:45:02.234125: High export rate found rates in range 99p to -99p 2026-08-14 08:45:02.306232: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 08:45:02.306375: Car 0 charging is not planned as it is not plugged in 2026-08-14 08:45:02.318906: Battery level now 1.76kWh, -1hr ago 2.08kWh, at midnight 2.43kWh, battery value change in the last hour -7.46p, change today -15.66p, rate_forward 23.31p 2026-08-14 08:45:02.319371: Last hour: net energy 0.01kWh, import 0.01kWh, export 0.0kWh, car 0kWh, load 0.25kWh, net cost 0.24p, import 0.24p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 08:45:02.372112: Today's energy total net 8.4kWh, import 8.4kWh, export 0.0kWh, cost 262.75p, import 212.77p, export 0.0p, carbon 0.0kg 2026-08-14 08:45:02.372250: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 08:45:02.441319: Using weighted-bucket historical load forecast over 14 days 2026-08-14 08:45:02.462902: Today's load divergence 112.54%, in-day adjustment 134.09%, damping 0.95x, yesterday 146.81% today 111.91% blend 63.54% 2026-08-14 08:45:02.462983: Today's predicted so far 3.2kWh with 0.0kWh car/iBoost excluded, 1.62kWh import ignored, and 4.82kWh forecast extra. 2026-08-14 08:45:02.463146: Today's actual load so far 4.99kWh with 0.0kWh car/iBoost excluded, and 3.18kWh import ignored. 2026-08-14 08:45:02.498467: Inverter 0: Type SK Sunsynk 2026-08-14 08:45:02.498562: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 08:45:02.498791: Reserve min: 7%, battery_min: 7% 2026-08-14 08:45:02.498907: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 08:45:02.499253: Inverter 0 SoC: 1.68kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 690W, current battery voltage 51.2V, grid power -52W, load power 740W, PV Power 0W 2026-08-14 08:45:02.499417: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:45:02.499506: Inverter 0 scheduled charge enable is False 2026-08-14 08:45:02.499536: Inverter 0 charge windows currently [] 2026-08-14 08:45:02.499562: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 08:45:02.499717: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:45:02.499772: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:45:02.499812: Inverter 0 scheduled discharge enable is False 2026-08-14 08:45:02.499987: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:45:02.500054: Inverter 0 discharge windows currently [] 2026-08-14 08:45:02.500082: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:45:02.500105: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:45:02.500128: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:45:02.558715: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 08:45:02.558809: Plan was last updated on 2026-08-14 08:35:00+01:00 and is now 10.0 minutes old 2026-08-14 08:45:02.559085: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 08:45:02.559174: Best export window [ ] 2026-08-14 08:45:02.559813: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 08:45:02.562362: Load divergence over 8.0 hours mean 446.85W, min 220.2W, max 1101.0W, std dev 171.44W, divergence 19.18% 2026-08-14 08:45:02.573130: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 08:45:02.573207: LoadML is_calculating False 2026-08-14 08:45:02.573259: Creating pool of 12 processes to match your CPU count 2026-08-14 08:45:02.669000: predict base end_record 08-15 12:40:00, final soc 1.12kWh, metric 894.26p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 28.99kWh, PV 0.0kWh 2026-08-14 08:45:02.780580: Battery has 0.92 hours left - now at 1.68kWh 2026-08-14 08:45:02.825827: predict base10 end_record 08-15 12:40:00, final soc 1.12kWh, metric 922.55p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 29.98kWh, PV 0.0kWh 2026-08-14 08:45:02.895459: predict best10 end_record 08-15 12:40:00, final soc 1.77kWh, metric 844.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 29.98kWh, PV 0.0kWh 2026-08-14 08:45:02.978772: predict best end_record 08-15 12:40:00, final soc 1.9kWh, metric 822.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 28.99kWh, PV 0.0kWh 2026-08-14 08:45:02.978872: Saving plan best values to HA entities 2026-08-14 08:45:03.151662: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 08:45:03.156778: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 08:45:03.161539: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.0kWh, house 5.53kWh, export 0.0kWh, metric 822.95p, metric10 844.25p 2026-08-14 08:45:03.232115: Marginal costs baseline metric (no standing charge): 772.9638 2026-08-14 08:45:03.500479: Marginal energy costs matrix computed: min=21.91 max=35.43 2026-08-14 08:45:03.588037: Rate array import [{'start': 525, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2200, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 525, 'end': 2200, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 08:45:03.588741: - Your estimated bill for today is £6.85 and tomorrow is £6.99 2026-08-14 08:45:03.588786: - Import rates are cheap (21.7p - 24.7p) for the next 7 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 08:45:03.588808: - The battery is currently at 11% and is in eco mode for the next 3 and three quarters hours. 2026-08-14 08:45:03.588826: - For the next 48 hours there will be no solar generation. 2026-08-14 08:45:03.588843: - You will run out of battery in 55 minutes. 2026-08-14 08:45:03.588860: - Your next charge slot will be in 3 and three quarters hours where import rates will be cheap (22.2p). 2026-08-14 08:45:03.588877: 2026-08-14 08:45:03.648193: Plan calculation took 1.09 seconds 2026-08-14 08:45:03.651811: No high rate period found 2026-08-14 08:45:03.707151: Import threshold used for optimisation was 24.8p 2026-08-14 08:45:03.768853: Low import rate windows [0: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 1: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 2: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 3: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 4: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 5: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 6: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 7: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 8: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 9: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 10: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 11: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 12: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 13: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 14: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 15: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 16: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 17: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 18: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 19: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 20: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 21: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 22: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 23: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 24: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 25: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 26: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 27: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 28: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 29: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 30: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 31: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 32: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 33: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 34: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 35: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 36: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 37: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 38: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 39: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 40: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 41: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 42: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 43: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 44: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 45: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 46: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 47: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 48: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 49: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 50: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 51: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 52: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 53: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 54: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 55: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 56: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 57: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 58: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 59: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 60: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 61: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 62: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 63: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 64: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 65: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 66: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 67: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 68: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 69: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 70: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 71: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 72: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 73: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 74: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 75: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 76: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 77: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 78: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 79: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 80: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 81: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 82: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 83: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 84: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 85: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 86: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 87: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 88: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 89: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 90: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 91: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 92: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 93: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84, 94: 08-16 08:30:00 - 08-16 09:00:00 @ 24.56] 2026-08-14 08:45:03.776109: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 08:45:03.776271: Inverter 0 disabled charge window while waiting for schedule (now 08-14 08:45:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 08:45:03.776384: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:45:03.776678: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:45:03.776785: No export window planned 2026-08-14 08:45:03.776928: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 08:45:03.777057: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:45:03.777226: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:45:03.777438: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 08:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 08:45:03.777500: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 08:45:03.777561: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 08:45:03.777656: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:45:03.777697: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:45:03.777725: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:45:03.777751: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:45:03.777800: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:45:03.777827: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:45:03.777851: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:45:03.777918: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:45:03.777954: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:45:03.777980: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:45:03.778004: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:45:03.778048: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:45:03.778075: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:45:03.778100: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:45:03.778120: Inverter 0 count register writes 0 2026-08-14 08:45:03.796483: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 08:45:03.796767: Recompute is saving previous plan... 2026-08-14 08:45:03.800115: Best charge window [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 0% ] 2026-08-14 08:45:03.800204: Best export window [ ] 2026-08-14 08:45:03.801104: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 08:45:03.804270: Load divergence over 8.0 hours mean 446.85W, min 220.2W, max 1101.0W, std dev 171.44W, divergence 19.18% 2026-08-14 08:45:03.816934: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 08:45:03.817127: LoadML is_calculating False 2026-08-14 08:45:03.817215: Creating pool of 12 processes to match your CPU count 2026-08-14 08:45:03.913212: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 08:45:03.915332: Optimise levels pass started at 2026-08-14 08:45:03 2026-08-14 08:45:03.915401: Optimise all windows, total charge 94 export 1 2026-08-14 08:45:04.211265: >> Region optimisation pass width 960 2026-08-14 08:45:04.627991: >> Region optimisation pass width 480 2026-08-14 08:45:05.007539: >> Region optimisation pass width 240 2026-08-14 08:45:05.526820: >> Region optimisation pass width 120 2026-08-14 08:45:06.905707: Calculated end_record as 08-15 12:30:00 based on best_price 22.25p, next_charge_start 08-14 12:30:00, max_windows 55 2026-08-14 08:45:06.905851: Optimise levels pass ended at 2026-08-14 08:45:06, duration 3.0 seconds tried 335 combinations 2026-08-14 08:45:06.906119: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1032.23p, best_keep 0kWh, best_cycle 48.53kWh, best_carbon 0kg, best_import 37.42kWh 2026-08-14 08:45:06.922667: Starting detailed optimisation end_record 08-15 12:30:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 08:45:06.924504: Best charge windows best_metric 729.54p, best_cost 751.75p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:45:06.924636: Best export windows best_metric 729.54p, best_cost 751.75p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:45:06.924759: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 729.54p, best_cost 751.75p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:07.008743: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 729.43p, best_cost 751.62p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:07.100048: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 729.43p, best_cost 751.62p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:07.233876: Best charge windows best_metric 729.43p, best_cost 751.62p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:45:07.234141: Best export windows best_metric 729.43p, best_cost 751.62p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:45:07.235764: Best charge windows best_metric 729.43p, best_cost 751.62p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:45:07.235927: Best export windows best_metric 729.43p, best_cost 751.62p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:45:07.236090: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 729.43p, best_cost 751.62p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:07.457402: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 729.43p, best_cost 751.62p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:07.540381: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 729.43p, best_cost 751.62p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:07.676976: Best charge windows best_metric 729.43p, best_cost 751.62p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:45:07.677206: Best export windows best_metric 729.43p, best_cost 751.62p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:45:07.678836: Best charge windows best_metric 729.43p, best_cost 751.62p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:45:07.679188: Best export windows best_metric 729.43p, best_cost 751.62p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:45:07.679374: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 729.43p, best_cost 751.62p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:07.759763: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 729.43p, best_cost 751.62p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:07.846177: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 729.43p, best_cost 751.62p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:07.964793: Best charge windows best_metric 729.43p, best_cost 751.62p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:45:07.965221: Best export windows best_metric 729.43p, best_cost 751.62p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:45:07.965365: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 729.43p, best_cost 751.62p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:08.067467: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 729.43p, best_cost 751.62p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:08.156553: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 729.43p, best_cost 751.62p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:08.365771: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 729.43p, best_cost 751.62p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:08.425516: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 729.43p, best_cost 751.62p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:08.487205: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 729.43p, best_cost 751.62p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:08.547043: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 729.18p, best_cost 751.37p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:08.607266: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 729.18p, best_cost 751.37p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:08.715459: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 729.02p, best_cost 751.37p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:08.923038: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:08.963743: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.008844: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.053343: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.101439: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.142388: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.239263: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.279725: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.317928: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.362112: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.395345: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.447615: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.485077: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.522670: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.572066: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.617114: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.658584: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.707526: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.750545: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.798992: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.838787: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.875340: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.912063: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:09.958804: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:10.000122: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:10.040003: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:10.079789: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:10.113880: Best charge windows best_metric 728.9p, best_cost 751.36p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:45:10.114201: Best export windows best_metric 728.9p, best_cost 751.36p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:45:10.115913: Best charge windows best_metric 728.9p, best_cost 751.36p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:45:10.116008: Best export windows best_metric 728.9p, best_cost 751.36p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:45:10.116160: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:10.192913: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 728.9p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:10.231916: Optimise price set 25.6p, pass trim_import, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:10.270743: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:10.369348: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:10.472684: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:10.617272: Best charge windows best_metric 728.89p, best_cost 751.36p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:45:10.617416: Best export windows best_metric 728.89p, best_cost 751.36p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:45:10.617555: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:10.703777: Optimise price set 25.6p, pass normal, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:10.742533: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:10.964403: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:11.062353: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:11.190922: Best charge windows best_metric 728.89p, best_cost 751.36p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:45:11.191169: Best export windows best_metric 728.89p, best_cost 751.36p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:45:11.192732: Best charge windows best_metric 728.89p, best_cost 751.36p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:45:11.193009: Best export windows best_metric 728.89p, best_cost 751.36p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:45:11.193205: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:11.261924: Optimise price set 25.6p, pass trim_import, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:11.291728: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:11.375450: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:11.447468: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:11.561093: Best charge windows best_metric 728.89p, best_cost 751.36p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:45:11.561352: Best export windows best_metric 728.89p, best_cost 751.36p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:45:11.561476: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:11.631100: Optimise price set 25.6p, pass normal, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:11.660745: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:11.872764: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:11.948186: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 728.89p, best_cost 751.36p, best_cycle 25.31kWh, best_carbon 0kg, best_import 50.18kWh 2026-08-14 08:45:12.069809: Best charge windows best_metric 728.89p, best_cost 751.36p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:45:12.070087: Best export windows best_metric 728.89p, best_cost 751.36p, best_carbon 0kg, best_import 50.18kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:45:12.070365: Tweak plan optimisation started 2026-08-14 08:45:12.358720: Tweak optimisation finished metric 728.9 cost 751.36 metric_keep 0 cycle 25.31 carbon 0 import 50.18 2026-08-14 08:45:12.375926: Swap charge optimisation started metric 728.9p, cost 751.36p, min_improvement_swap 0.1p 2026-08-14 08:45:15.954599: Swap charge optimisation finished metric 728.9p, cost 751.36p 2026-08-14 08:45:15.964982: Raw charge windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] reserve 1.12 2026-08-14 08:45:15.965569: Unclipped charge windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 09:00:00 @ 25.68p 100% ] reserve 1.12 2026-08-14 08:45:15.965890: Unfiltered charge windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 09:00:00 @ 25.68p 100% ] reserve 1.12 2026-08-14 08:45:15.966155: Filtered charge windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 09:00:00 @ 25.68p 100% ] reserve 1.12 2026-08-14 08:45:15.996654: Previous plan best metric is 729.17 (cost 751.63) and new plan best metric is 728.9 (cost 751.36) 2026-08-14 08:45:15.996869: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 08:45:15.997128: Plan valid is now true after recompute was False 2026-08-14 08:45:16.020452: predict base end_record 08-15 12:30:00, final soc 1.12kWh, metric 891.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 28.86kWh, PV 0.0kWh 2026-08-14 08:45:16.113344: Battery has 0.92 hours left - now at 1.68kWh 2026-08-14 08:45:16.149977: predict base10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 919.57p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 29.85kWh, PV 0.0kWh 2026-08-14 08:45:16.220785: predict best10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 825.86p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 29.85kWh, PV 0.0kWh 2026-08-14 08:45:16.304871: predict best end_record 08-15 12:30:00, final soc 1.12kWh, metric 801.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 28.86kWh, PV 0.0kWh 2026-08-14 08:45:16.305050: Saving plan best values to HA entities 2026-08-14 08:45:16.466383: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 08:45:16.472236: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 08:45:16.477835: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.0kWh, house 5.53kWh, export 0.0kWh, metric 801.62p, metric10 825.86p 2026-08-14 08:45:16.552277: Marginal costs baseline metric (no standing charge): 751.633 2026-08-14 08:45:16.832817: Marginal energy costs matrix computed: min=21.91 max=35.43 2026-08-14 08:45:16.912908: Rate array import [{'start': 525, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2190, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 525, 'end': 2190, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 08:45:16.913531: - Your estimated bill for today is £6.85 and tomorrow is £6.99 2026-08-14 08:45:16.913583: - Import rates are cheap (21.7p - 24.7p) for the next 7 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 08:45:16.913603: - The battery is currently at 11% and is in eco mode for the next 3 and three quarters hours. 2026-08-14 08:45:16.913619: - For the next 48 hours there will be no solar generation. 2026-08-14 08:45:16.913632: - You will run out of battery in 55 minutes. 2026-08-14 08:45:16.913649: - Your next charge slot will be in 3 and three quarters hours where import rates will be cheap (22.2p). 2026-08-14 08:45:16.913663: 2026-08-14 08:45:16.964561: Plan calculation took 13.17 seconds 2026-08-14 08:45:16.965095: Inverter 0: Type SK Sunsynk 2026-08-14 08:45:16.965184: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 08:45:16.965593: Reserve min: 7%, battery_min: 7% 2026-08-14 08:45:16.965720: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 08:45:16.966157: Inverter 0 SoC: 1.68kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 564W, current battery voltage 51.2V, grid power -52W, load power 659W, PV Power 0W 2026-08-14 08:45:16.966399: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:45:16.966502: Inverter 0 scheduled charge enable is False 2026-08-14 08:45:16.966543: Inverter 0 charge windows currently [] 2026-08-14 08:45:16.966576: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 08:45:16.966694: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:45:16.966730: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:45:16.966766: Inverter 0 scheduled discharge enable is False 2026-08-14 08:45:16.966892: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:45:16.966929: Inverter 0 discharge windows currently [] 2026-08-14 08:45:16.966956: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:45:16.966975: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:45:16.966992: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:45:17.022076: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 08:45:17.022227: Inverter 0 disabled charge window while waiting for schedule (now 08-14 08:45:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 08:45:17.022328: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:45:17.022538: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:45:17.022621: No export window planned 2026-08-14 08:45:17.022753: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 08:45:17.022794: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:45:17.022930: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:45:17.023123: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 08:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 08:45:17.023179: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 08:45:17.023243: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 08:45:17.023328: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:45:17.023368: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:45:17.023404: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:45:17.023437: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:45:17.023466: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:45:17.023491: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:45:17.023521: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:45:17.023584: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:45:17.023619: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:45:17.023646: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:45:17.023670: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:45:17.023694: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:45:17.023717: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:45:17.023747: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:45:17.023768: Inverter 0 count register writes 0 2026-08-14 08:45:17.044609: Total inverter register writes now 806 2026-08-14 08:45:17.078632: Info: Completed run status Demand 2026-08-14 08:45:17.084719: Info: record_status Demand 2026-08-14 08:45:17.091331: Saved current settings to /config/predbat_config.json 2026-08-14 08:45:17.091658: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 08:45:54.203594: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:45:54.203909: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:45:54.203966: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:45:54.204177: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:45:54.204225: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:45:54.204286: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:45:54.204332: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:47:54.419972: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:47:54.420282: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:47:54.420334: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:47:54.420557: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:47:54.420600: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:47:54.420633: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:47:54.420663: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:49:54.636340: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:49:54.636582: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:49:54.636618: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:49:54.636745: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:49:54.636784: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:49:54.636806: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:49:54.636825: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:50:00.714763: --------------- PredBat - update at 2026-08-14 08:50:00+01:00 with clock skew 0 minutes, minutes now 530 2026-08-14 08:50:00.715540: Saved current settings to /config/predbat_config.json 2026-08-14 08:50:00.715667: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 80.0 minutes 2026-08-14 08:50:00.715741: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 08:50:00.715826: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 08:50:00.739822: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 08:50:00.740030: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 08:50:00.740870: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 08:50:00.741092: Predbat mode is set to Control charge & discharge 2026-08-14 08:50:00.942583: Found 21602 load_today datapoints going back 28 days 2026-08-14 08:50:00.942903: Using load_power data to fill gaps in load_today data 2026-08-14 08:50:01.762673: Processing 721 30-minute periods for power integration 2026-08-14 08:50:01.953683: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 08:50:01.953825: Car charging hold False, threshold 6.0kWh 2026-08-14 08:50:01.953870: Current data so far today: load 8.22kWh, import 8.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 08:50:01.967809: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 08:50:01.968657: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 08:50:01.968745: Standing charge is set to 49.98p 2026-08-14 08:50:01.995494: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 08:50:01.995619: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 08:50:01.995835: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 530.0 minutes 2026-08-14 08:50:01.996244: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 529.8 minutes 2026-08-14 08:50:01.999398: Loaded 47 datapoints of futurerate analysis 2026-08-14 08:50:02.085099: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 08:50:02.141845: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 08:50:02.146274: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 08:50:02.146600: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 08:50:02.178778: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 08:50:02.178887: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 08:50:02.179951: High export rate found rates in range 99p to -99p 2026-08-14 08:50:02.246364: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 08:50:02.246473: Car 0 charging is not planned as it is not plugged in 2026-08-14 08:50:02.257502: Battery level now 1.68kWh, -1hr ago 1.92kWh, at midnight 2.43kWh, battery value change in the last hour -5.59p, change today -17.53p, rate_forward 23.31p 2026-08-14 08:50:02.257882: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.35kWh, net cost 0.12p, import 0.12p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 08:50:02.313185: Today's energy total net 8.4kWh, import 8.4kWh, export 0.0kWh, cost 262.75p, import 212.77p, export 0.0p, carbon 0.0kg 2026-08-14 08:50:02.313315: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 08:50:02.390323: Using weighted-bucket historical load forecast over 14 days 2026-08-14 08:50:02.415789: Today's load divergence 113.48%, in-day adjustment 134.29%, damping 0.95x, yesterday 146.81% today 112.8% blend 63.19% 2026-08-14 08:50:02.415868: Today's predicted so far 3.2kWh with 0.0kWh car/iBoost excluded, 1.63kWh import ignored, and 4.84kWh forecast extra. 2026-08-14 08:50:02.415894: Today's actual load so far 5.14kWh with 0.0kWh car/iBoost excluded, and 3.08kWh import ignored. 2026-08-14 08:50:02.452694: Inverter 0: Type SK Sunsynk 2026-08-14 08:50:02.452786: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 08:50:02.453026: Reserve min: 7%, battery_min: 7% 2026-08-14 08:50:02.453106: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 08:50:02.453361: Inverter 0 SoC: 1.68kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 478W, current battery voltage 51.2V, grid power -50W, load power 534W, PV Power 0W 2026-08-14 08:50:02.453512: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:50:02.453601: Inverter 0 scheduled charge enable is False 2026-08-14 08:50:02.453638: Inverter 0 charge windows currently [] 2026-08-14 08:50:02.453665: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 08:50:02.453800: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:50:02.453837: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:50:02.453873: Inverter 0 scheduled discharge enable is False 2026-08-14 08:50:02.454064: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:50:02.454135: Inverter 0 discharge windows currently [] 2026-08-14 08:50:02.454165: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:50:02.454185: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:50:02.454202: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:50:02.513695: Dynamic load last period 0.30kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 08:50:02.513792: Plan was last updated on 2026-08-14 08:45:00+01:00 and is now 5.0 minutes old 2026-08-14 08:50:02.514120: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 08:50:02.514164: Best export window [ ] 2026-08-14 08:50:02.514888: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 08:50:02.517544: Load divergence over 8.0 hours mean 446.84W, min 235.2W, max 1260.6W, std dev 178.68W, divergence 19.99% 2026-08-14 08:50:02.528646: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 08:50:02.528754: LoadML is_calculating False 2026-08-14 08:50:02.529046: Creating pool of 12 processes to match your CPU count 2026-08-14 08:50:02.639812: predict base end_record 08-15 12:35:00, final soc 1.12kWh, metric 892.74p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 29.05kWh, PV 0.0kWh 2026-08-14 08:50:02.764863: Battery has 0.83 hours left - now at 1.68kWh 2026-08-14 08:50:02.805979: predict base10 end_record 08-15 12:35:00, final soc 1.12kWh, metric 921.01p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 30.04kWh, PV 0.0kWh 2026-08-14 08:50:02.889526: predict best10 end_record 08-15 12:35:00, final soc 1.44kWh, metric 834.98p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 30.04kWh, PV 0.0kWh 2026-08-14 08:50:02.980350: predict best end_record 08-15 12:35:00, final soc 1.51kWh, metric 812.18p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 29.05kWh, PV 0.0kWh 2026-08-14 08:50:02.980454: Saving plan best values to HA entities 2026-08-14 08:50:03.166414: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 08:50:03.172428: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 08:50:03.178193: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.02kWh, house 5.51kWh, export 0.0kWh, metric 812.18p, metric10 834.98p 2026-08-14 08:50:03.251631: Marginal costs baseline metric (no standing charge): 762.195 2026-08-14 08:50:03.509303: Marginal energy costs matrix computed: min=21.88 max=35.06 2026-08-14 08:50:03.581197: Rate array import [{'start': 530, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2195, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 530, 'end': 2195, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 08:50:03.581878: - Your estimated bill for today is £6.85 and tomorrow is £7.00 2026-08-14 08:50:03.581942: - Import rates are cheap (21.7p - 24.7p) for the next 7 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 08:50:03.581966: - The battery is currently at 11% and is in eco mode for the next 3 and three quarters hours. 2026-08-14 08:50:03.581985: - For the next 48 hours there will be no solar generation. 2026-08-14 08:50:03.582019: - You will run out of battery in 50 minutes. 2026-08-14 08:50:03.582116: - Your next charge slot will be in 3 and three quarters hours where import rates will be cheap (22.2p). 2026-08-14 08:50:03.582147: 2026-08-14 08:50:03.631757: Plan calculation took 1.12 seconds 2026-08-14 08:50:03.635472: No high rate period found 2026-08-14 08:50:03.684776: Import threshold used for optimisation was 24.8p 2026-08-14 08:50:03.731782: Low import rate windows [0: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 1: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 2: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 3: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 4: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 5: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 6: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 7: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 8: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 9: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 10: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 11: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 12: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 13: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 14: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 15: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 16: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 17: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 18: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 19: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 20: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 21: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 22: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 23: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 24: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 25: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 26: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 27: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 28: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 29: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 30: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 31: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 32: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 33: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 34: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 35: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 36: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 37: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 38: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 39: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 40: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 41: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 42: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 43: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 44: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 45: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 46: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 47: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 48: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 49: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 50: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 51: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 52: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 53: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 54: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 55: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 56: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 57: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 58: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 59: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 60: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 61: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 62: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 63: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 64: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 65: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 66: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 67: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 68: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 69: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 70: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 71: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 72: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 73: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 74: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 75: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 76: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 77: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 78: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 79: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 80: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 81: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 82: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 83: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 84: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 85: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 86: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 87: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 88: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 89: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 90: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 91: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 92: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 93: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84, 94: 08-16 08:30:00 - 08-16 09:00:00 @ 24.56] 2026-08-14 08:50:03.737821: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 08:50:03.737952: Inverter 0 disabled charge window while waiting for schedule (now 08-14 08:50:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 08:50:03.738090: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:50:03.738347: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:50:03.738453: No export window planned 2026-08-14 08:50:03.738592: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 08:50:03.738634: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:50:03.738774: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:50:03.738972: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 08:50:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 08:50:03.739047: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 08:50:03.739120: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 08:50:03.739222: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:50:03.739264: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:50:03.739294: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:50:03.739328: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:50:03.739357: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:50:03.739389: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:50:03.739417: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:50:03.739489: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:50:03.739521: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:50:03.739548: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:50:03.739581: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:50:03.739609: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:50:03.739656: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:50:03.739690: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:50:03.739713: Inverter 0 count register writes 0 2026-08-14 08:50:03.758236: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 08:50:03.765289: Total inverter register writes now 806 2026-08-14 08:50:03.811530: Info: Completed run status Demand 2026-08-14 08:50:03.819906: Info: record_status Demand 2026-08-14 08:50:03.829646: Saved current settings to /config/predbat_config.json 2026-08-14 08:50:03.830085: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 08:50:38.943840: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:50:38.944116: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:50:38.944158: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:50:38.944319: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:50:38.944371: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:50:38.944395: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:50:38.944415: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:52:39.162731: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:52:39.163004: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:52:39.163049: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:52:39.163201: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:52:39.163254: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:52:39.163295: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:52:39.163333: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:54:39.411007: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:54:39.411275: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:54:39.411347: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:54:39.411477: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:54:39.411516: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:54:39.411537: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:54:39.411554: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:55:00.523743: --------------- PredBat - update at 2026-08-14 08:55:00+01:00 with clock skew 0 minutes, minutes now 535 2026-08-14 08:55:00.524516: Saved current settings to /config/predbat_config.json 2026-08-14 08:55:00.524640: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 85.0 minutes 2026-08-14 08:55:00.524715: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 08:55:00.524841: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 08:55:00.544235: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 08:55:00.544364: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 08:55:00.545081: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 08:55:00.545224: Predbat mode is set to Control charge & discharge 2026-08-14 08:55:00.728136: Found 21602 load_today datapoints going back 28 days 2026-08-14 08:55:00.728297: Using load_power data to fill gaps in load_today data 2026-08-14 08:55:01.555000: Processing 721 30-minute periods for power integration 2026-08-14 08:55:01.740886: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 08:55:01.741113: Car charging hold False, threshold 6.0kWh 2026-08-14 08:55:01.741161: Current data so far today: load 8.25kWh, import 8.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 08:55:01.757473: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 08:55:01.758398: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 08:55:01.758490: Standing charge is set to 49.98p 2026-08-14 08:55:01.782193: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 08:55:01.782321: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 08:55:01.782523: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 535.0 minutes 2026-08-14 08:55:01.782914: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 534.8 minutes 2026-08-14 08:55:01.785891: Loaded 47 datapoints of futurerate analysis 2026-08-14 08:55:01.872367: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 08:55:01.929116: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 08:55:01.934509: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 08:55:01.934899: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 08:55:01.973797: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 08:55:01.973933: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 08:55:01.975187: High export rate found rates in range 99p to -99p 2026-08-14 08:55:02.052020: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 08:55:02.052149: Car 0 charging is not planned as it is not plugged in 2026-08-14 08:55:02.064058: Battery level now 1.68kWh, -1hr ago 1.92kWh, at midnight 2.43kWh, battery value change in the last hour -5.59p, change today -17.53p, rate_forward 23.31p 2026-08-14 08:55:02.064366: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.35kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 08:55:02.114815: Today's energy total net 8.4kWh, import 8.4kWh, export 0.0kWh, cost 262.75p, import 212.77p, export 0.0p, carbon 0.0kg 2026-08-14 08:55:02.114974: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 08:55:02.183677: Using weighted-bucket historical load forecast over 14 days 2026-08-14 08:55:02.204809: Today's load divergence 114.36%, in-day adjustment 134.49%, damping 0.95x, yesterday 146.81% today 113.64% blend 62.85% 2026-08-14 08:55:02.204904: Today's predicted so far 3.27kWh with 0.0kWh car/iBoost excluded, 1.58kWh import ignored, and 4.85kWh forecast extra. 2026-08-14 08:55:02.204931: Today's actual load so far 5.37kWh with 0.0kWh car/iBoost excluded, and 2.84kWh import ignored. 2026-08-14 08:55:02.240243: Inverter 0: Type SK Sunsynk 2026-08-14 08:55:02.240337: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 08:55:02.240536: Reserve min: 7%, battery_min: 7% 2026-08-14 08:55:02.240611: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 08:55:02.240879: Inverter 0 SoC: 1.6kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 494W, current battery voltage 51.2V, grid power -49W, load power 552W, PV Power 0W 2026-08-14 08:55:02.241070: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:55:02.241167: Inverter 0 scheduled charge enable is False 2026-08-14 08:55:02.241202: Inverter 0 charge windows currently [] 2026-08-14 08:55:02.241229: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 08:55:02.241333: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:55:02.241369: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:55:02.241404: Inverter 0 scheduled discharge enable is False 2026-08-14 08:55:02.241529: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:55:02.241566: Inverter 0 discharge windows currently [] 2026-08-14 08:55:02.241589: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:55:02.241608: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:55:02.241625: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:55:02.311095: Dynamic load last period 0.30kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 08:55:02.311202: Plan was last updated on 2026-08-14 08:45:00+01:00 and is now 10.0 minutes old 2026-08-14 08:55:02.311480: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 08:55:02.311525: Best export window [ ] 2026-08-14 08:55:02.312364: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 08:55:02.315531: Load divergence over 8.0 hours mean 446.79W, min 247.2W, max 1439.4W, std dev 199.8W, divergence 22.36% 2026-08-14 08:55:02.329156: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 08:55:02.329756: LoadML is_calculating False 2026-08-14 08:55:02.330442: Creating pool of 12 processes to match your CPU count 2026-08-14 08:55:02.462211: predict base end_record 08-15 12:40:00, final soc 1.12kWh, metric 895.7p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 29.12kWh, PV 0.0kWh 2026-08-14 08:55:02.590263: Battery has 0.67 hours left - now at 1.6kWh 2026-08-14 08:55:02.629760: predict base10 end_record 08-15 12:40:00, final soc 1.12kWh, metric 924.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 30.12kWh, PV 0.0kWh 2026-08-14 08:55:02.697957: predict best10 end_record 08-15 12:40:00, final soc 1.77kWh, metric 845.55p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 30.12kWh, PV 0.0kWh 2026-08-14 08:55:02.777688: predict best end_record 08-15 12:40:00, final soc 1.9kWh, metric 824.26p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 29.12kWh, PV 0.0kWh 2026-08-14 08:55:02.777789: Saving plan best values to HA entities 2026-08-14 08:55:02.935756: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 08:55:02.940834: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 08:55:02.945871: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.04kWh, house 5.56kWh, export 0.0kWh, metric 824.26p, metric10 845.55p 2026-08-14 08:55:03.017305: Marginal costs baseline metric (no standing charge): 774.2729 2026-08-14 08:55:03.287832: Marginal energy costs matrix computed: min=21.84 max=35.44 2026-08-14 08:55:03.363130: Rate array import [{'start': 535, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2200, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 535, 'end': 2200, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 08:55:03.363794: - Your estimated bill for today is £6.86 and tomorrow is £7.00 2026-08-14 08:55:03.363838: - Import rates are cheap (21.7p - 24.7p) for the next 7 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 08:55:03.363861: - The battery is currently at 10% and is in eco mode for the next 3 and a half hours. 2026-08-14 08:55:03.363879: - For the next 48 hours there will be no solar generation. 2026-08-14 08:55:03.363897: - You will run out of battery in 40 minutes. 2026-08-14 08:55:03.363916: - Your next charge slot will be in 3 and a half hours where import rates will be cheap (22.2p). 2026-08-14 08:55:03.363933: 2026-08-14 08:55:03.413877: Plan calculation took 1.10 seconds 2026-08-14 08:55:03.416544: No high rate period found 2026-08-14 08:55:03.462841: Import threshold used for optimisation was 24.8p 2026-08-14 08:55:03.511992: Low import rate windows [0: 08-14 08:30:00 - 08-14 09:00:00 @ 24.56, 1: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 2: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 3: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 4: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 5: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 6: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 7: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 8: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 9: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 10: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 11: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 12: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 13: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 14: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 15: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 16: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 17: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 18: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 19: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 20: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 21: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 22: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 23: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 24: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 25: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 26: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 27: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 28: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 29: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 30: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 31: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 32: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 33: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 34: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 35: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 36: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 37: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 38: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 39: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 40: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 41: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 42: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 43: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 44: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 45: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 46: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 47: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 48: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 49: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 50: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 51: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 52: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 53: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 54: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 55: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 56: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 57: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 58: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 59: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 60: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 61: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 62: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 63: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 64: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 65: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 66: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 67: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 68: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 69: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 70: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 71: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 72: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 73: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 74: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 75: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 76: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 77: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 78: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 79: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 80: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 81: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 82: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 83: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 84: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 85: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 86: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 87: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 88: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 89: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 90: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 91: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 92: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 93: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84, 94: 08-16 08:30:00 - 08-16 09:00:00 @ 24.56] 2026-08-14 08:55:03.517631: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 08:55:03.517769: Inverter 0 disabled charge window while waiting for schedule (now 08-14 08:55:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 08:55:03.517920: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:55:03.518204: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:55:03.518329: No export window planned 2026-08-14 08:55:03.518507: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 08:55:03.518559: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:55:03.518731: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:55:03.518981: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 08:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 08:55:03.519058: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 08:55:03.519181: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 08:55:03.519320: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:55:03.519380: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:55:03.519427: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:55:03.519558: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:55:03.519607: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:55:03.519652: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:55:03.519702: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:55:03.519806: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:55:03.519858: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:55:03.519904: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:55:03.519960: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:55:03.520008: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:55:03.520052: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:55:03.520103: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:55:03.520139: Inverter 0 count register writes 0 2026-08-14 08:55:03.534584: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 08:55:03.534799: Recompute is saving previous plan... 2026-08-14 08:55:03.537477: Best charge window [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 0% ] 2026-08-14 08:55:03.537560: Best export window [ ] 2026-08-14 08:55:03.538264: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 08:55:03.540863: Load divergence over 8.0 hours mean 446.79W, min 247.2W, max 1439.4W, std dev 199.8W, divergence 22.36% 2026-08-14 08:55:03.550754: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 08:55:03.550830: LoadML is_calculating False 2026-08-14 08:55:03.550885: Creating pool of 12 processes to match your CPU count 2026-08-14 08:55:03.628787: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 08:55:03.630930: Optimise levels pass started at 2026-08-14 08:55:03 2026-08-14 08:55:03.630998: Optimise all windows, total charge 94 export 1 2026-08-14 08:55:03.937908: >> Region optimisation pass width 960 2026-08-14 08:55:04.321549: >> Region optimisation pass width 480 2026-08-14 08:55:04.707779: >> Region optimisation pass width 240 2026-08-14 08:55:05.248930: >> Region optimisation pass width 120 2026-08-14 08:55:06.699502: Calculated end_record as 08-15 12:30:00 based on best_price 22.25p, next_charge_start 08-14 12:30:00, max_windows 55 2026-08-14 08:55:06.699646: Optimise levels pass ended at 2026-08-14 08:55:06, duration 3.1 seconds tried 335 combinations 2026-08-14 08:55:06.699730: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1035.23p, best_keep 0kWh, best_cycle 48.51kWh, best_carbon 0kg, best_import 37.48kWh 2026-08-14 08:55:06.716799: Starting detailed optimisation end_record 08-15 12:30:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 08:55:06.718363: Best charge windows best_metric 730.82p, best_cost 753.0p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:55:06.718485: Best export windows best_metric 730.82p, best_cost 753.0p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:55:06.718605: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 730.82p, best_cost 753.0p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:06.808772: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 730.71p, best_cost 752.88p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:06.907472: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 730.71p, best_cost 752.88p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:07.049061: Best charge windows best_metric 730.71p, best_cost 752.88p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:55:07.049382: Best export windows best_metric 730.71p, best_cost 752.88p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:55:07.051077: Best charge windows best_metric 730.71p, best_cost 752.88p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:55:07.051207: Best export windows best_metric 730.71p, best_cost 752.88p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:55:07.051324: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 730.71p, best_cost 752.88p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:07.279412: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 730.71p, best_cost 752.88p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:07.378361: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 730.71p, best_cost 752.88p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:07.519056: Best charge windows best_metric 730.71p, best_cost 752.88p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:55:07.519345: Best export windows best_metric 730.71p, best_cost 752.88p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:55:07.520934: Best charge windows best_metric 730.71p, best_cost 752.88p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:55:07.521117: Best export windows best_metric 730.71p, best_cost 752.88p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:55:07.521304: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 730.71p, best_cost 752.88p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:07.598603: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 730.71p, best_cost 752.88p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:07.687082: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 730.71p, best_cost 752.88p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:07.816697: Best charge windows best_metric 730.71p, best_cost 752.88p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:55:07.817125: Best export windows best_metric 730.71p, best_cost 752.88p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:55:07.817221: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 730.71p, best_cost 752.88p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:07.946642: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 730.71p, best_cost 752.88p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:08.033658: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 730.71p, best_cost 752.88p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:08.244674: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 730.71p, best_cost 752.88p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:08.308857: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 730.71p, best_cost 752.88p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:08.374310: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 730.71p, best_cost 752.88p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:08.438702: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 730.44p, best_cost 752.61p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:08.506602: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 730.44p, best_cost 752.61p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:08.609856: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 730.22p, best_cost 752.61p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:08.799528: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:08.839440: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:08.883292: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:08.924021: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:08.961877: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:08.999655: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.102054: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.138593: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.171062: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.219175: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.255861: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.304125: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.344886: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.394025: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.434098: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.482871: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.541255: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.593021: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.640984: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.684208: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.714455: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.756870: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.799861: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.840280: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.879134: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.916318: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.952682: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:09.998770: Best charge windows best_metric 730.14p, best_cost 752.6p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:55:09.999127: Best export windows best_metric 730.14p, best_cost 752.6p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:55:10.001295: Best charge windows best_metric 730.14p, best_cost 752.6p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:55:10.001459: Best export windows best_metric 730.14p, best_cost 752.6p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:55:10.001618: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:10.081769: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:10.122402: Optimise price set 25.6p, pass trim_import, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:10.157303: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:10.236693: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:10.326228: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:10.472827: Best charge windows best_metric 730.14p, best_cost 752.6p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:55:10.473291: Best export windows best_metric 730.14p, best_cost 752.6p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:55:10.473621: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:10.563150: Optimise price set 25.6p, pass normal, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:10.603541: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:10.830232: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:10.923952: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:11.052473: Best charge windows best_metric 730.14p, best_cost 752.6p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:55:11.052790: Best export windows best_metric 730.14p, best_cost 752.6p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:55:11.054511: Best charge windows best_metric 730.14p, best_cost 752.6p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:55:11.054678: Best export windows best_metric 730.14p, best_cost 752.6p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:55:11.054814: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:11.126786: Optimise price set 25.6p, pass trim_import, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:11.162371: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:11.239224: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:11.324184: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:11.443593: Best charge windows best_metric 730.14p, best_cost 752.6p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:55:11.443876: Best export windows best_metric 730.14p, best_cost 752.6p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:55:11.444084: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:11.528739: Optimise price set 25.6p, pass normal, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:11.560908: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:11.760019: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:11.846144: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 730.14p, best_cost 752.6p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.3kWh 2026-08-14 08:55:11.952540: Best charge windows best_metric 730.14p, best_cost 752.6p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] 2026-08-14 08:55:11.952832: Best export windows best_metric 730.14p, best_cost 752.6p, best_carbon 0kg, best_import 50.3kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 08:55:11.953095: Tweak plan optimisation started 2026-08-14 08:55:12.221452: Tweak optimisation finished metric 730.14 cost 752.6 metric_keep 0 cycle 25.24 carbon 0 import 50.3 2026-08-14 08:55:12.245317: Swap charge optimisation started metric 730.14p, cost 752.6p, min_improvement_swap 0.1p 2026-08-14 08:55:16.363144: Swap charge optimisation finished metric 730.14p, cost 752.6p 2026-08-14 08:55:16.375947: Raw charge windows [ 14-08 08:30:00 - 14-08 09:00:00 @ 24.56p 0%, 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100% ] reserve 1.12 2026-08-14 08:55:16.376702: Unclipped charge windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 09:00:00 @ 25.68p 100% ] reserve 1.12 2026-08-14 08:55:16.377185: Unfiltered charge windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 09:00:00 @ 25.68p 100% ] reserve 1.12 2026-08-14 08:55:16.377536: Filtered charge windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 09:00:00 @ 25.68p 100% ] reserve 1.12 2026-08-14 08:55:16.408817: Previous plan best metric is 730.4 (cost 752.87) and new plan best metric is 730.14 (cost 752.6) 2026-08-14 08:55:16.409046: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 08:55:16.409214: Plan valid is now true after recompute was False 2026-08-14 08:55:16.441842: predict base end_record 08-15 12:30:00, final soc 1.12kWh, metric 892.79p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 28.99kWh, PV 0.0kWh 2026-08-14 08:55:16.556333: Battery has 0.67 hours left - now at 1.6kWh 2026-08-14 08:55:16.607591: predict base10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 920.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 29.98kWh, PV 0.0kWh 2026-08-14 08:55:16.687691: predict best10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 827.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 29.98kWh, PV 0.0kWh 2026-08-14 08:55:16.778323: predict best end_record 08-15 12:30:00, final soc 1.12kWh, metric 802.85p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 28.99kWh, PV 0.0kWh 2026-08-14 08:55:16.778421: Saving plan best values to HA entities 2026-08-14 08:55:16.949058: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 08:55:16.954622: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 08:55:16.959973: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.04kWh, house 5.56kWh, export 0.0kWh, metric 802.85p, metric10 827.09p 2026-08-14 08:55:17.033427: Marginal costs baseline metric (no standing charge): 752.8711 2026-08-14 08:55:17.314578: Marginal energy costs matrix computed: min=21.84 max=35.44 2026-08-14 08:55:17.384581: Rate array import [{'start': 535, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2190, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 535, 'end': 2190, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 08:55:17.385287: - Your estimated bill for today is £6.86 and tomorrow is £7.00 2026-08-14 08:55:17.385337: - Import rates are cheap (21.7p - 24.7p) for the next 7 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 08:55:17.385360: - The battery is currently at 10% and is in eco mode for the next 3 and a half hours. 2026-08-14 08:55:17.385378: - For the next 48 hours there will be no solar generation. 2026-08-14 08:55:17.385395: - You will run out of battery in 40 minutes. 2026-08-14 08:55:17.385413: - Your next charge slot will be in 3 and a half hours where import rates will be cheap (22.2p). 2026-08-14 08:55:17.385434: 2026-08-14 08:55:17.441271: Plan calculation took 13.91 seconds 2026-08-14 08:55:17.441617: Inverter 0: Type SK Sunsynk 2026-08-14 08:55:17.441667: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 08:55:17.441925: Reserve min: 7%, battery_min: 7% 2026-08-14 08:55:17.442036: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 08:55:17.442386: Inverter 0 SoC: 1.6kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 474W, current battery voltage 51.2V, grid power -57W, load power 536W, PV Power 0W 2026-08-14 08:55:17.442611: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:55:17.442725: Inverter 0 scheduled charge enable is False 2026-08-14 08:55:17.442799: Inverter 0 charge windows currently [] 2026-08-14 08:55:17.442867: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 08:55:17.443061: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:55:17.443107: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:55:17.443154: Inverter 0 scheduled discharge enable is False 2026-08-14 08:55:17.443336: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:55:17.443379: Inverter 0 discharge windows currently [] 2026-08-14 08:55:17.443407: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:55:17.443436: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:55:17.443471: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:55:17.504217: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 08:55:17.504363: Inverter 0 disabled charge window while waiting for schedule (now 08-14 08:55:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 08:55:17.504459: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:55:17.504645: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:55:17.504722: No export window planned 2026-08-14 08:55:17.504831: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 08:55:17.504872: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 08:55:17.505164: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 08:55:17.505450: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 08:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 08:55:17.505547: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 08:55:17.505654: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 08:55:17.505817: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:55:17.505874: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:55:17.505905: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:55:17.505930: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:55:17.506055: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:55:17.506133: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:55:17.506167: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 08:55:17.506253: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:55:17.506294: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:55:17.506322: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:55:17.506346: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:55:17.506379: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:55:17.506404: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:55:17.506428: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 08:55:17.506448: Inverter 0 count register writes 0 2026-08-14 08:55:17.528109: Total inverter register writes now 806 2026-08-14 08:55:17.564439: Info: Completed run status Demand 2026-08-14 08:55:17.571877: Info: record_status Demand 2026-08-14 08:55:17.580661: Saved current settings to /config/predbat_config.json 2026-08-14 08:55:17.581105: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 08:55:53.695744: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:55:53.696075: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:55:53.696138: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:55:53.696341: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:55:53.696397: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:55:53.696905: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:55:53.697000: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:56:35.214808: Info: HAHistory: Pruning history data started. 2026-08-14 08:56:35.219561: Info: HAHistory: Pruning history data completed. 2026-08-14 08:57:53.931078: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:57:53.931324: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:57:53.931373: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:57:53.931506: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:57:53.931544: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:57:53.931565: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:57:53.931582: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 08:59:54.163090: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 08:59:54.163341: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 08:59:54.163376: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 08:59:54.163507: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 08:59:54.163547: Note: Inverter does not support discharge freeze - disabled 2026-08-14 08:59:54.163568: Note: Inverter does not support charge freeze - disabled 2026-08-14 08:59:54.163588: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:00:00.275605: --------------- PredBat - update at 2026-08-14 09:00:00+01:00 with clock skew 0 minutes, minutes now 540 2026-08-14 09:00:00.276510: Saved current settings to /config/predbat_config.json 2026-08-14 09:00:00.276733: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 90.0 minutes 2026-08-14 09:00:00.277052: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 09:00:00.277153: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 09:00:00.300505: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 09:00:00.300663: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 09:00:00.301544: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 09:00:00.301670: Predbat mode is set to Control charge & discharge 2026-08-14 09:00:00.536284: Found 21602 load_today datapoints going back 27 days 2026-08-14 09:00:00.536445: Using load_power data to fill gaps in load_today data 2026-08-14 09:00:01.398690: Processing 721 30-minute periods for power integration 2026-08-14 09:00:01.608824: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 09:00:01.609023: Car charging hold False, threshold 6.0kWh 2026-08-14 09:00:01.609078: Current data so far today: load 8.35kWh, import 8.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 09:00:01.623186: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 09:00:01.623952: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 09:00:01.624030: Standing charge is set to 49.98p 2026-08-14 09:00:01.651470: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 09:00:01.651580: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 09:00:01.651870: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 540.0 minutes 2026-08-14 09:00:01.652294: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 539.8 minutes 2026-08-14 09:00:01.655538: Loaded 47 datapoints of futurerate analysis 2026-08-14 09:00:01.744413: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 09:00:01.810550: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 09:00:01.816032: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 09:00:01.816548: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 09:00:01.858972: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 09:00:01.859108: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 09:00:01.860315: High export rate found rates in range 99p to -99p 2026-08-14 09:00:01.951027: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 09:00:01.951166: Car 0 charging is not planned as it is not plugged in 2026-08-14 09:00:01.965166: Battery level now 1.6kWh, -1hr ago 1.92kWh, at midnight 2.43kWh, battery value change in the last hour -7.46p, change today -19.39p, rate_forward 23.31p 2026-08-14 09:00:01.965483: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.43kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 09:00:02.047148: Today's energy total net 8.4kWh, import 8.4kWh, export 0.0kWh, cost 262.75p, import 212.77p, export 0.0p, carbon 0.0kg 2026-08-14 09:00:02.047390: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 09:00:02.157634: Using weighted-bucket historical load forecast over 14 days 2026-08-14 09:00:02.185532: Today's load divergence 114.08%, in-day adjustment 134.27%, damping 0.95x, yesterday 146.81% today 113.38% blend 62.5% 2026-08-14 09:00:02.185637: Today's predicted so far 3.52kWh with 0.0kWh car/iBoost excluded, 1.42kWh import ignored, and 4.94kWh forecast extra. 2026-08-14 09:00:02.185669: Today's actual load so far 5.6kWh with 0.0kWh car/iBoost excluded, and 2.81kWh import ignored. 2026-08-14 09:00:02.227279: Inverter 0: Type SK Sunsynk 2026-08-14 09:00:02.227403: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 09:00:02.227637: Reserve min: 7%, battery_min: 7% 2026-08-14 09:00:02.227710: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 09:00:02.228054: Inverter 0 SoC: 1.6kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 514W, current battery voltage 51.2V, grid power -58W, load power 606W, PV Power 0W 2026-08-14 09:00:02.228267: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:00:02.228380: Inverter 0 scheduled charge enable is False 2026-08-14 09:00:02.228406: Inverter 0 charge windows currently [] 2026-08-14 09:00:02.228429: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 09:00:02.228524: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:00:02.228561: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:00:02.228621: Inverter 0 scheduled discharge enable is False 2026-08-14 09:00:02.228798: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:00:02.228844: Inverter 0 discharge windows currently [] 2026-08-14 09:00:02.228897: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:00:02.228939: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:00:02.229014: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:00:02.310523: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 09:00:02.310666: Plan was last updated on 2026-08-14 08:55:00+01:00 and is now 5.0 minutes old 2026-08-14 09:00:02.311127: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 09:00:02.311201: Best export window [ ] 2026-08-14 09:00:02.312286: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 09:00:02.317466: Load divergence over 8.0 hours mean 445.29W, min 239.4W, max 1403.4W, std dev 192.63W, divergence 21.63% 2026-08-14 09:00:02.340133: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 09:00:02.340312: LoadML is_calculating False 2026-08-14 09:00:02.340407: Creating pool of 12 processes to match your CPU count 2026-08-14 09:00:02.505682: predict base end_record 08-15 12:35:00, final soc 1.12kWh, metric 891.68p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 29.06kWh, PV 0.0kWh 2026-08-14 09:00:02.666855: Battery has 0.67 hours left - now at 1.6kWh 2026-08-14 09:00:02.740311: predict base10 end_record 08-15 12:35:00, final soc 1.12kWh, metric 919.74p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 30.05kWh, PV 0.0kWh 2026-08-14 09:00:02.837382: predict best10 end_record 08-15 12:35:00, final soc 1.44kWh, metric 833.93p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 30.05kWh, PV 0.0kWh 2026-08-14 09:00:02.935442: predict best end_record 08-15 12:35:00, final soc 1.51kWh, metric 811.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 29.06kWh, PV 0.0kWh 2026-08-14 09:00:02.937249: Saving plan best values to HA entities 2026-08-14 09:00:03.125339: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 09:00:03.132377: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 09:00:03.139434: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.02kWh, house 5.47kWh, export 0.0kWh, metric 811.32p, metric10 833.93p 2026-08-14 09:00:03.226399: Marginal costs baseline metric (no standing charge): 761.3369 2026-08-14 09:00:03.514071: Marginal energy costs matrix computed: min=21.81 max=35.8 2026-08-14 09:00:03.586376: Rate array import [{'start': 540, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2195, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 540, 'end': 2195, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 09:00:03.586934: - Your estimated bill for today is £6.85 and tomorrow is £6.98 2026-08-14 09:00:03.586972: - Import rates are cheap (21.7p - 24.7p) for the next 7 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 09:00:03.586990: - The battery is currently at 10% and is in eco mode for the next 3 and a half hours. 2026-08-14 09:00:03.587005: - For the next 48 hours there will be no solar generation. 2026-08-14 09:00:03.587019: - You will run out of battery in 40 minutes. 2026-08-14 09:00:03.587032: - Your next charge slot will be in 3 and a half hours where import rates will be cheap (22.2p). 2026-08-14 09:00:03.587047: 2026-08-14 09:00:03.651926: Plan calculation took 1.34 seconds 2026-08-14 09:00:03.657320: No high rate period found 2026-08-14 09:00:03.712186: Import threshold used for optimisation was 24.8p 2026-08-14 09:00:03.774011: Low import rate windows [0: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 1: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 2: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 3: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 4: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 5: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 6: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 7: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 8: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 9: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 10: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 11: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 12: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 13: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 14: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 15: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 16: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 17: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 18: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 19: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 20: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 21: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 22: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 23: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 24: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 25: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 26: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 27: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 28: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 29: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 30: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 31: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 32: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 33: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 34: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 35: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 36: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 37: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 38: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 39: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 40: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 41: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 42: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 43: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 44: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 45: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 46: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 47: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 48: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 49: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 50: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 51: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 52: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 53: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 54: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 55: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 56: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 57: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 58: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 59: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 60: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 61: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 62: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 63: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 64: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 65: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 66: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 67: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 68: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 69: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 70: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 71: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 72: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 73: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 74: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 75: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 76: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 77: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 78: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 79: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 80: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 81: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 82: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 83: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 84: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 85: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 86: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 87: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 88: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 89: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 90: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 91: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 92: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84, 93: 08-16 08:30:00 - 08-16 09:00:00 @ 24.56] 2026-08-14 09:00:03.782563: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 09:00:03.782742: Inverter 0 disabled charge window while waiting for schedule (now 08-14 09:00:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 09:00:03.782931: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:00:03.783236: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:00:03.783379: No export window planned 2026-08-14 09:00:03.783588: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 09:00:03.783643: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:00:03.783843: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:00:03.784108: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 09:00:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 09:00:03.784184: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 09:00:03.784296: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 09:00:03.784449: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:00:03.784502: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:00:03.784556: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:00:03.784612: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:00:03.784666: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:00:03.784726: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:00:03.784789: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:00:03.784933: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:00:03.785056: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:00:03.785109: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:00:03.785152: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:00:03.785201: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:00:03.785238: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:00:03.785306: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:00:03.785354: Inverter 0 count register writes 0 2026-08-14 09:00:03.803596: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 09:00:03.809519: Total inverter register writes now 806 2026-08-14 09:00:03.844612: Info: Completed run status Demand 2026-08-14 09:00:03.850763: Info: record_status Demand 2026-08-14 09:00:03.858331: Saved current settings to /config/predbat_config.json 2026-08-14 09:00:03.858738: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 09:00:38.969535: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:00:38.969784: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:00:38.969823: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:00:38.969983: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:00:38.970033: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:00:38.970055: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:00:38.970081: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:02:39.191807: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:02:39.192111: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:02:39.192168: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:02:39.192374: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:02:39.192422: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:02:39.192444: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:02:39.192461: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:04:21.884636: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 09:04:22.941720: Processing 1297 30-minute periods for power integration 2026-08-14 09:04:23.044885: ML Component: Car charging hold False, car energy reported load False 2026-08-14 09:04:23.150460: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 09:04:23.247458: ML Temperature data points: 48421 2026-08-14 09:04:23.523570: ML Component: Fetched 7776 load data points, 27.0 days of history 2026-08-14 09:04:23.566938: ML Component: Data fetch completed, load data age 55.0 days, 16090 data points 2026-08-14 09:04:23.567099: ML Component: No training needed, model age is 1.67 hours 2026-08-14 09:04:23.567176: ML Component: Generating predictions load data age 55.0 days, 16090 data points 2026-08-14 09:04:23.720921: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0482 max_dow {0: 0.10909062506761402, 1: 0.09740000026300549, 2: 0.11353750061187895, 3: 0.11734375001909211, 4: 0.16123125033210967, 5: 0.09046249974276871, 6: 0.1105406252272427} 2026-08-14 09:04:24.233250: ML Component: Generated 576 predictions (total 38.61 kWh over 48h) 2026-08-14 09:04:24.273103: ML Component: Prediction cycle completed 2026-08-14 09:04:24.396530: ML Component: Saved 16090 steps (55 days) of history to /config/predbat_ml_history.npz 2026-08-14 09:04:53.752730: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:04:53.753035: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:04:53.753118: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:04:53.753269: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:04:53.753309: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:04:53.753330: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:04:53.753353: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:05:00.842576: --------------- PredBat - update at 2026-08-14 09:05:00+01:00 with clock skew 0 minutes, minutes now 545 2026-08-14 09:05:00.843542: Saved current settings to /config/predbat_config.json 2026-08-14 09:05:00.843720: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 95.0 minutes 2026-08-14 09:05:00.843823: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 09:05:00.843957: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 09:05:00.864246: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 09:05:00.864369: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 09:05:00.865022: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 09:05:00.865141: Predbat mode is set to Control charge & discharge 2026-08-14 09:05:01.076161: Found 21602 load_today datapoints going back 27 days 2026-08-14 09:05:01.076324: Using load_power data to fill gaps in load_today data 2026-08-14 09:05:01.967508: Processing 721 30-minute periods for power integration 2026-08-14 09:05:02.158632: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 09:05:02.159110: Car charging hold False, threshold 6.0kWh 2026-08-14 09:05:02.159178: Current data so far today: load 8.4kWh, import 8.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 09:05:02.173086: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 09:05:02.173880: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 09:05:02.173999: Standing charge is set to 49.98p 2026-08-14 09:05:02.204017: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 09:05:02.204113: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 09:05:02.204322: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 545.0 minutes 2026-08-14 09:05:02.204723: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 544.8 minutes 2026-08-14 09:05:02.208298: Loaded 47 datapoints of futurerate analysis 2026-08-14 09:05:02.295064: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 09:05:02.351934: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 09:05:02.357048: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 09:05:02.357385: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 09:05:02.397450: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 09:05:02.398066: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 09:05:02.399408: High export rate found rates in range 99p to -99p 2026-08-14 09:05:02.486977: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 09:05:02.487115: Car 0 charging is not planned as it is not plugged in 2026-08-14 09:05:02.500795: Battery level now 1.6kWh, -1hr ago 1.92kWh, at midnight 2.43kWh, battery value change in the last hour -7.46p, change today -19.39p, rate_forward 23.31p 2026-08-14 09:05:02.501219: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.45kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 09:05:02.565937: Today's energy total net 8.4kWh, import 8.4kWh, export 0.0kWh, cost 262.75p, import 212.77p, export 0.0p, carbon 0.0kg 2026-08-14 09:05:02.566080: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 09:05:02.637762: Using weighted-bucket historical load forecast over 14 days 2026-08-14 09:05:02.658082: Today's load divergence 113.69%, in-day adjustment 134.02%, damping 0.95x, yesterday 146.81% today 113.01% blend 62.15% 2026-08-14 09:05:02.658171: Today's predicted so far 3.58kWh with 0.0kWh car/iBoost excluded, 1.43kWh import ignored, and 5.01kWh forecast extra. 2026-08-14 09:05:02.658199: Today's actual load so far 5.58kWh with 0.0kWh car/iBoost excluded, and 2.94kWh import ignored. 2026-08-14 09:05:02.693352: Inverter 0: Type SK Sunsynk 2026-08-14 09:05:02.693438: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 09:05:02.693608: Reserve min: 7%, battery_min: 7% 2026-08-14 09:05:02.693662: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 09:05:02.693919: Inverter 0 SoC: 1.48kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power 1129W, current battery voltage 51.2V, grid power -53W, load power 1195W, PV Power 0W 2026-08-14 09:05:02.694057: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:05:02.694132: Inverter 0 scheduled charge enable is False 2026-08-14 09:05:02.694156: Inverter 0 charge windows currently [] 2026-08-14 09:05:02.694177: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 09:05:02.694267: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:05:02.694297: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:05:02.694326: Inverter 0 scheduled discharge enable is False 2026-08-14 09:05:02.694428: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:05:02.694458: Inverter 0 discharge windows currently [] 2026-08-14 09:05:02.694477: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:05:02.694492: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:05:02.694506: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:05:02.745953: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 09:05:02.746046: Plan was last updated on 2026-08-14 08:55:00+01:00 and is now 10.0 minutes old 2026-08-14 09:05:02.746279: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 09:05:02.746333: Best export window [ ] 2026-08-14 09:05:02.746981: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 09:05:02.749510: Load divergence over 8.0 hours mean 443.79W, min 230.4W, max 1260.0W, std dev 189.81W, divergence 21.39% 2026-08-14 09:05:02.759991: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 09:05:02.760081: LoadML is_calculating False 2026-08-14 09:05:02.760136: Creating pool of 12 processes to match your CPU count 2026-08-14 09:05:02.861567: predict base end_record 08-15 12:40:00, final soc 1.12kWh, metric 893.7p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 29.09kWh, PV 0.0kWh 2026-08-14 09:05:02.983302: Battery has 0.5 hours left - now at 1.48kWh 2026-08-14 09:05:03.025897: predict base10 end_record 08-15 12:40:00, final soc 1.12kWh, metric 921.78p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 30.08kWh, PV 0.0kWh 2026-08-14 09:05:03.101224: predict best10 end_record 08-15 12:40:00, final soc 1.77kWh, metric 843.83p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 30.08kWh, PV 0.0kWh 2026-08-14 09:05:03.185309: predict best end_record 08-15 12:40:00, final soc 1.9kWh, metric 822.73p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 29.09kWh, PV 0.0kWh 2026-08-14 09:05:03.185416: Saving plan best values to HA entities 2026-08-14 09:05:03.373253: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 09:05:03.379774: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 09:05:03.385893: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 42.94kWh, house 5.59kWh, export 0.0kWh, metric 822.73p, metric10 843.83p 2026-08-14 09:05:03.459925: Marginal costs baseline metric (no standing charge): 772.7481 2026-08-14 09:05:03.680384: Marginal energy costs matrix computed: min=21.8 max=36.09 2026-08-14 09:05:03.753927: Rate array import [{'start': 545, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2200, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 545, 'end': 2200, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 09:05:03.754591: - Your estimated bill for today is £6.86 and tomorrow is £6.96 2026-08-14 09:05:03.754636: - Import rates are cheap (21.7p - 24.7p) for the next 6 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 09:05:03.754658: - The battery is currently at 9% and is in eco mode for the next 3 and a half hours. 2026-08-14 09:05:03.754687: - For the next 48 hours there will be no solar generation. 2026-08-14 09:05:03.754722: - You will run out of battery in 30 minutes. 2026-08-14 09:05:03.754740: - Your next charge slot will be in 3 and a half hours where import rates will be cheap (22.2p). 2026-08-14 09:05:03.754754: 2026-08-14 09:05:03.811352: Plan calculation took 1.07 seconds 2026-08-14 09:05:03.814202: No high rate period found 2026-08-14 09:05:03.866515: Import threshold used for optimisation was 24.8p 2026-08-14 09:05:03.914768: Low import rate windows [0: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 1: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 2: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 3: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 4: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 5: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 6: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 7: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 8: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 9: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 10: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 11: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 12: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 13: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 14: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 15: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 16: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 17: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 18: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 19: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 20: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 21: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 22: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 23: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 24: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 25: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 26: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 27: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 28: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 29: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 30: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 31: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 32: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 33: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 34: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 35: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 36: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 37: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 38: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 39: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 40: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 41: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 42: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 43: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 44: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 45: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 46: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 47: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 48: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 49: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 50: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 51: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 52: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 53: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 54: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 55: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 56: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 57: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 58: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 59: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 60: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 61: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 62: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 63: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 64: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 65: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 66: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 67: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 68: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 69: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 70: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 71: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 72: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 73: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 74: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 75: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 76: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 77: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 78: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 79: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 80: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 81: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 82: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 83: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 84: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 85: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 86: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 87: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 88: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 89: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 90: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 91: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 92: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84, 93: 08-16 08:30:00 - 08-16 09:00:00 @ 24.56, 94: 08-16 09:00:00 - 08-16 09:30:00 @ 23.79] 2026-08-14 09:05:03.922775: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-14 09:05:03.922952: Inverter 0 disabled charge window while waiting for schedule (now 08-14 09:05:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 09:05:03.923087: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:05:03.923358: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:05:03.923472: No export window planned 2026-08-14 09:05:03.923640: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 09:05:03.923690: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:05:03.923858: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:05:03.924092: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 09:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 09:05:03.924158: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 09:05:03.924236: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 09:05:03.924357: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:05:03.924414: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:05:03.924466: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:05:03.924492: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:05:03.924538: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:05:03.924578: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:05:03.924603: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:05:03.924701: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:05:03.924748: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:05:03.924796: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:05:03.924820: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:05:03.924854: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:05:03.924898: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:05:03.925024: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:05:03.925071: Inverter 0 count register writes 0 2026-08-14 09:05:03.942134: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 09:05:03.942343: Recompute is saving previous plan... 2026-08-14 09:05:03.945076: Best charge window [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 0% ] 2026-08-14 09:05:03.945153: Best export window [ ] 2026-08-14 09:05:03.945928: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 09:05:03.948459: Load divergence over 8.0 hours mean 443.79W, min 230.4W, max 1260.0W, std dev 189.81W, divergence 21.39% 2026-08-14 09:05:03.958085: Calculating data from yesterday for savings calculation 2026-08-14 09:05:03.967777: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 09:05:04.010642: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 858.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 09:05:04.022155: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 872.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 09:05:04.040555: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 858.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 09:05:04.072002: Yesterday: Predbat disabled was £8.58 (adjusted £8.32) vs £6.21 (adjusted £5.62), saving £2.37 (adjusted £2.71) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 26.1kWh 2026-08-14 09:05:04.141435: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 902.27p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 09:05:04.141567: Yesterday: No Battery/PV system cost predicted was £9.02 (adjusted £9.02) vs £6.21 (adjusted £5.62), saving £2.81 (adjusted £3.41) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 09:05:04.151706: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 09:05:04.151834: LoadML is_calculating False 2026-08-14 09:05:04.151930: Creating pool of 12 processes to match your CPU count 2026-08-14 09:05:04.242246: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 09:05:04.244233: Optimise levels pass started at 2026-08-14 09:05:04 2026-08-14 09:05:04.244283: Optimise all windows, total charge 94 export 1 2026-08-14 09:05:04.569305: >> Region optimisation pass width 960 2026-08-14 09:05:05.011222: >> Region optimisation pass width 480 2026-08-14 09:05:05.371361: >> Region optimisation pass width 240 2026-08-14 09:05:06.171612: >> Region optimisation pass width 120 2026-08-14 09:05:07.571453: Calculated end_record as 08-15 12:30:00 based on best_price 22.25p, next_charge_start 08-14 12:30:00, max_windows 54 2026-08-14 09:05:07.571619: Optimise levels pass ended at 2026-08-14 09:05:07, duration 3.3 seconds tried 363 combinations 2026-08-14 09:05:07.572326: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1035.3p, best_keep 0kWh, best_cycle 48.46kWh, best_carbon 0kg, best_import 37.42kWh 2026-08-14 09:05:07.594129: Starting detailed optimisation end_record 08-15 12:30:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 09:05:07.596007: Best charge windows best_metric 729.33p, best_cost 751.59p, best_carbon 0kg, best_import 50.31kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:05:07.596119: Best export windows best_metric 729.33p, best_cost 751.59p, best_carbon 0kg, best_import 50.31kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:05:07.596243: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 729.33p, best_cost 751.59p, best_cycle 25.12kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:07.678972: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 729.22p, best_cost 751.47p, best_cycle 25.12kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:07.773696: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 729.22p, best_cost 751.47p, best_cycle 25.12kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:07.908878: Best charge windows best_metric 729.22p, best_cost 751.47p, best_carbon 0kg, best_import 50.31kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:05:07.909195: Best export windows best_metric 729.22p, best_cost 751.47p, best_carbon 0kg, best_import 50.31kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:05:07.910486: Best charge windows best_metric 729.22p, best_cost 751.47p, best_carbon 0kg, best_import 50.31kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:05:07.910668: Best export windows best_metric 729.22p, best_cost 751.47p, best_carbon 0kg, best_import 50.31kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:05:07.910779: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 729.22p, best_cost 751.47p, best_cycle 25.12kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:08.120448: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 729.22p, best_cost 751.47p, best_cycle 25.12kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:08.215719: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 729.22p, best_cost 751.47p, best_cycle 25.12kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:08.365751: Best charge windows best_metric 729.22p, best_cost 751.47p, best_carbon 0kg, best_import 50.31kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:05:08.365893: Best export windows best_metric 729.22p, best_cost 751.47p, best_carbon 0kg, best_import 50.31kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:05:08.367689: Best charge windows best_metric 729.22p, best_cost 751.47p, best_carbon 0kg, best_import 50.31kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:05:08.367819: Best export windows best_metric 729.22p, best_cost 751.47p, best_carbon 0kg, best_import 50.31kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:05:08.367956: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 729.22p, best_cost 751.47p, best_cycle 25.12kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:08.447523: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 729.22p, best_cost 751.47p, best_cycle 25.12kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:08.530600: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 729.22p, best_cost 751.47p, best_cycle 25.12kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:08.663470: Best charge windows best_metric 729.22p, best_cost 751.47p, best_carbon 0kg, best_import 50.31kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:05:08.663659: Best export windows best_metric 729.22p, best_cost 751.47p, best_carbon 0kg, best_import 50.31kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:05:08.663736: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 729.22p, best_cost 751.47p, best_cycle 25.12kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:08.782161: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 729.22p, best_cost 751.47p, best_cycle 25.12kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:08.869233: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 729.22p, best_cost 751.47p, best_cycle 25.12kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:09.067836: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 729.22p, best_cost 751.47p, best_cycle 25.12kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:09.136119: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 729.22p, best_cost 751.47p, best_cycle 25.12kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:09.200886: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 729.22p, best_cost 751.47p, best_cycle 25.12kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:09.268445: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 729.03p, best_cost 751.28p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:09.334274: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 729.03p, best_cost 751.28p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:09.412469: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 728.87p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:09.611066: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:09.657470: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:09.710000: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:09.763157: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:09.808700: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:09.850142: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:09.945682: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:09.990012: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.031027: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.074046: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.114977: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.162626: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.203896: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.246492: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.291242: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.340449: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.385570: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.428486: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.482882: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.528490: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.567729: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.615128: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.665062: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.722756: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.772440: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.817027: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.866837: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.912884: Best charge windows best_metric 728.78p, best_cost 751.27p, best_carbon 0kg, best_import 50.31kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:05:10.913152: Best export windows best_metric 728.78p, best_cost 751.27p, best_carbon 0kg, best_import 50.31kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:05:10.914833: Best charge windows best_metric 728.78p, best_cost 751.27p, best_carbon 0kg, best_import 50.31kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:05:10.915063: Best export windows best_metric 728.78p, best_cost 751.27p, best_carbon 0kg, best_import 50.31kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:05:10.915181: Optimise price set 26.6p, pass trim_import, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:10.965709: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:11.010905: Optimise price set 25.6p, pass trim_import, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:11.051181: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:11.139719: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 728.78p, best_cost 751.27p, best_cycle 25.16kWh, best_carbon 0kg, best_import 50.31kWh 2026-08-14 09:05:11.227821: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:11.375604: Best charge windows best_metric 728.62p, best_cost 751.0p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:05:11.375838: Best export windows best_metric 728.62p, best_cost 751.0p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:05:11.375991: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:11.419115: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:11.462431: Optimise price set 25.6p, pass normal, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:11.493315: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:11.705477: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:11.790325: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:11.929406: Best charge windows best_metric 728.62p, best_cost 751.0p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:05:11.929630: Best export windows best_metric 728.62p, best_cost 751.0p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:05:11.931284: Best charge windows best_metric 728.62p, best_cost 751.0p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:05:11.931418: Best export windows best_metric 728.62p, best_cost 751.0p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:05:11.931517: Optimise price set 26.6p, pass trim_import, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:11.978896: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:12.023622: Optimise price set 25.6p, pass trim_import, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:12.052893: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:12.138059: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:12.225351: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:12.357781: Best charge windows best_metric 728.62p, best_cost 751.0p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:05:12.358072: Best export windows best_metric 728.62p, best_cost 751.0p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:05:12.358270: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:12.397381: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:12.440488: Optimise price set 25.6p, pass normal, price 23.79p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:12.475064: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:12.702976: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:12.792712: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 728.62p, best_cost 751.0p, best_cycle 24.16kWh, best_carbon 0kg, best_import 50.24kWh 2026-08-14 09:05:12.926518: Best charge windows best_metric 728.62p, best_cost 751.0p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:05:12.926788: Best export windows best_metric 728.62p, best_cost 751.0p, best_carbon 0kg, best_import 50.24kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:05:12.927041: Tweak plan optimisation started 2026-08-14 09:05:13.189387: Tweak optimisation finished metric 728.62 cost 751.0 metric_keep 0 cycle 24.16 carbon 0 import 50.24 2026-08-14 09:05:13.209039: Swap charge optimisation started metric 728.62p, cost 751.0p, min_improvement_swap 0.1p 2026-08-14 09:05:16.935132: Swap charge optimisation finished metric 728.62p, cost 751.0p 2026-08-14 09:05:16.948607: Raw charge windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] reserve 1.12 2026-08-14 09:05:16.949563: Unclipped charge windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 14:00:00 @ 21.89p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 09:30:00 @ 24.73p 100% ] reserve 1.12 2026-08-14 09:05:16.950067: Unfiltered charge windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 14:00:00 @ 21.89p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 09:30:00 @ 24.73p 100% ] reserve 1.12 2026-08-14 09:05:16.950437: Filtered charge windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 9%, 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 09:30:00 @ 24.73p 100% ] reserve 1.12 2026-08-14 09:05:16.990029: Previous plan best metric is 728.97 (cost 751.46) and new plan best metric is 728.62 (cost 751.0) 2026-08-14 09:05:16.990352: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 09:05:16.990647: Plan valid is now true after recompute was False 2026-08-14 09:05:17.017661: predict base end_record 08-15 12:30:00, final soc 1.12kWh, metric 890.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 28.97kWh, PV 0.0kWh 2026-08-14 09:05:17.137279: Battery has 0.5 hours left - now at 1.48kWh 2026-08-14 09:05:17.191815: predict base10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 918.85p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 29.95kWh, PV 0.0kWh 2026-08-14 09:05:17.274495: predict best10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 825.5p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 29.95kWh, PV 0.0kWh 2026-08-14 09:05:17.354222: predict best end_record 08-15 12:30:00, final soc 1.12kWh, metric 801.45p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:35:00, load 28.97kWh, PV 0.0kWh 2026-08-14 09:05:17.354317: Saving plan best values to HA entities 2026-08-14 09:05:17.535746: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 09:05:17.541912: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 09:05:17.548061: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 42.94kWh, house 5.59kWh, export 0.0kWh, metric 801.45p, metric10 825.5p 2026-08-14 09:05:17.622686: Marginal costs baseline metric (no standing charge): 751.4639 2026-08-14 09:05:17.903949: Marginal energy costs matrix computed: min=21.8 max=36.09 2026-08-14 09:05:17.971693: Rate array import [{'start': 545, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2190, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 545, 'end': 2190, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 09:05:17.972428: - Your estimated bill for today is £6.86 and tomorrow is £6.96 2026-08-14 09:05:17.972480: - Import rates are cheap (21.7p - 24.7p) for the next 6 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 09:05:17.972503: - The battery is currently at 9% and is in eco mode for the next 3 and a half hours. 2026-08-14 09:05:17.972522: - For the next 48 hours there will be no solar generation. 2026-08-14 09:05:17.972539: - You will run out of battery in 30 minutes. 2026-08-14 09:05:17.972556: - Your next charge slot will be in 3 and a half hours where import rates will be cheap (22.2p). 2026-08-14 09:05:17.972586: 2026-08-14 09:05:18.021842: Plan calculation took 14.08 seconds 2026-08-14 09:05:18.022250: Inverter 0: Type SK Sunsynk 2026-08-14 09:05:18.022307: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 09:05:18.022627: Reserve min: 7%, battery_min: 7% 2026-08-14 09:05:18.022732: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 09:05:18.023186: Inverter 0 SoC: 1.48kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power 1129W, current battery voltage 51.2V, grid power -53W, load power 1195W, PV Power 0W 2026-08-14 09:05:18.023496: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:05:18.023624: Inverter 0 scheduled charge enable is False 2026-08-14 09:05:18.023678: Inverter 0 charge windows currently [] 2026-08-14 09:05:18.023737: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 09:05:18.023904: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:05:18.023965: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:05:18.024026: Inverter 0 scheduled discharge enable is False 2026-08-14 09:05:18.024208: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:05:18.024251: Inverter 0 discharge windows currently [] 2026-08-14 09:05:18.024290: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:05:18.024334: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:05:18.024355: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:05:18.072795: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-14 09:05:18.072984: Inverter 0 disabled charge window while waiting for schedule (now 08-14 09:05:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 09:05:18.073064: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:05:18.073252: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:05:18.073329: No export window planned 2026-08-14 09:05:18.073439: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 09:05:18.073477: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:05:18.073615: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:05:18.073780: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 09:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 09:05:18.073832: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 09:05:18.073892: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 09:05:18.073997: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:05:18.074041: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:05:18.074068: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:05:18.074093: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:05:18.074118: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:05:18.074143: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:05:18.074168: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:05:18.074230: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:05:18.074261: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:05:18.074287: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:05:18.074311: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:05:18.074334: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:05:18.074365: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:05:18.074389: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:05:18.074417: Inverter 0 count register writes 0 2026-08-14 09:05:18.094993: Total inverter register writes now 806 2026-08-14 09:05:18.127160: Info: Completed run status Demand 2026-08-14 09:05:18.134574: Info: record_status Demand 2026-08-14 09:05:18.141176: Saved current settings to /config/predbat_config.json 2026-08-14 09:05:18.141443: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 09:05:54.249053: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:05:54.249300: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:05:54.249390: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:05:54.249538: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:05:54.249589: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:05:54.249610: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:05:54.249628: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:07:54.475406: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:07:54.475659: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:07:54.475695: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:07:54.475852: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:07:54.475891: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:07:54.475911: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:07:54.475929: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:10:00.706995: --------------- PredBat - update at 2026-08-14 09:10:00+01:00 with clock skew 0 minutes, minutes now 550 2026-08-14 09:10:00.707902: Saved current settings to /config/predbat_config.json 2026-08-14 09:10:00.708080: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 100.0 minutes 2026-08-14 09:10:00.708236: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 09:10:00.708347: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 09:10:00.728206: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 09:10:00.728337: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 09:10:00.729258: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 09:10:00.729388: Predbat mode is set to Control charge & discharge 2026-08-14 09:10:00.912147: Found 21602 load_today datapoints going back 28 days 2026-08-14 09:10:00.912301: Using load_power data to fill gaps in load_today data 2026-08-14 09:10:01.600437: Processing 721 30-minute periods for power integration 2026-08-14 09:10:01.750673: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 09:10:01.750836: Car charging hold False, threshold 6.0kWh 2026-08-14 09:10:01.750892: Current data so far today: load 8.45kWh, import 8.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 09:10:01.762507: Cars: SoC: [18.166]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 09:10:01.763302: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 09:10:01.763394: Standing charge is set to 49.98p 2026-08-14 09:10:01.797657: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 09:10:01.797765: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 09:10:01.798041: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 550.0 minutes 2026-08-14 09:10:01.798514: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 549.8 minutes 2026-08-14 09:10:01.801703: Loaded 47 datapoints of futurerate analysis 2026-08-14 09:10:01.888908: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 09:10:01.950186: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 09:10:01.955743: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 09:10:01.956130: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 09:10:01.996201: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 09:10:01.996314: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 09:10:01.997353: High export rate found rates in range 99p to -99p 2026-08-14 09:10:02.072539: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 09:10:02.072671: Car 0 charging is not planned as it is not plugged in 2026-08-14 09:10:02.083679: Battery level now 1.48kWh, -1hr ago 1.92kWh, at midnight 2.43kWh, battery value change in the last hour -10.26p, change today -22.19p, rate_forward 23.31p 2026-08-14 09:10:02.083994: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.47kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 09:10:02.141469: Today's energy total net 8.4kWh, import 8.4kWh, export 0.0kWh, cost 262.75p, import 212.77p, export 0.0p, carbon 0.0kg 2026-08-14 09:10:02.141594: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 09:10:02.206503: Using weighted-bucket historical load forecast over 14 days 2026-08-14 09:10:02.233499: Today's load divergence 112.81%, in-day adjustment 133.58%, damping 0.95x, yesterday 146.81% today 112.17% blend 61.81% 2026-08-14 09:10:02.233597: Today's predicted so far 3.53kWh with 0.0kWh car/iBoost excluded, 1.48kWh import ignored, and 5.01kWh forecast extra. 2026-08-14 09:10:02.233664: Today's actual load so far 5.38kWh with 0.0kWh car/iBoost excluded, and 3.15kWh import ignored. 2026-08-14 09:10:02.266645: Inverter 0: Type SK Sunsynk 2026-08-14 09:10:02.266729: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 09:10:02.266902: Reserve min: 7%, battery_min: 7% 2026-08-14 09:10:02.266993: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 09:10:02.267264: Inverter 0 SoC: 1.48kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4491W, current battery voltage 51.2V, grid power -6022W, load power 1027W, PV Power 0W 2026-08-14 09:10:02.267416: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:10:02.267501: Inverter 0 scheduled charge enable is False 2026-08-14 09:10:02.267528: Inverter 0 charge windows currently [] 2026-08-14 09:10:02.267554: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 09:10:02.267654: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:10:02.267690: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:10:02.267724: Inverter 0 scheduled discharge enable is False 2026-08-14 09:10:02.267844: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:10:02.267881: Inverter 0 discharge windows currently [] 2026-08-14 09:10:02.267921: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:10:02.267941: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:10:02.267957: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:10:02.318287: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 09:10:02.318380: Plan was last updated on 2026-08-14 09:05:00+01:00 and is now 5.0 minutes old 2026-08-14 09:10:02.318641: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 09:10:02.318682: Best export window [ ] 2026-08-14 09:10:02.319420: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 09:10:02.321983: Load divergence over 8.0 hours mean 443.81W, min 240.6W, max 1225.8W, std dev 180.1W, divergence 20.29% 2026-08-14 09:10:02.333028: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 09:10:02.333221: LoadML is_calculating False 2026-08-14 09:10:02.333311: Creating pool of 12 processes to match your CPU count 2026-08-14 09:10:02.451002: predict base end_record 08-15 12:35:00, final soc 1.12kWh, metric 889.93p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 28.99kWh, PV 0.0kWh 2026-08-14 09:10:02.584827: Battery has 0.5 hours left - now at 1.48kWh 2026-08-14 09:10:02.628869: predict base10 end_record 08-15 12:35:00, final soc 1.12kWh, metric 917.83p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 29.97kWh, PV 0.0kWh 2026-08-14 09:10:02.706409: predict best10 end_record 08-15 12:35:00, final soc 1.44kWh, metric 832.36p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 29.97kWh, PV 0.0kWh 2026-08-14 09:10:02.778211: predict best end_record 08-15 12:35:00, final soc 1.51kWh, metric 809.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 28.99kWh, PV 0.0kWh 2026-08-14 09:10:02.778313: Saving plan best values to HA entities 2026-08-14 09:10:02.931657: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 09:10:02.937315: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 09:10:02.942542: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 42.93kWh, house 5.52kWh, export 0.0kWh, metric 809.9p, metric10 832.36p 2026-08-14 09:10:03.016484: Marginal costs baseline metric (no standing charge): 759.9153 2026-08-14 09:10:03.252627: Marginal energy costs matrix computed: min=21.78 max=36.44 2026-08-14 09:10:03.326425: Rate array import [{'start': 550, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2195, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 550, 'end': 2195, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 09:10:03.327249: - Your estimated bill for today is £6.84 and tomorrow is £6.97 2026-08-14 09:10:03.327328: - Import rates are cheap (21.7p - 24.7p) for the next 6 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 09:10:03.327364: - The battery is currently at 9% and is in eco mode for the next 3 and a quarter hours. 2026-08-14 09:10:03.327568: - For the next 48 hours there will be no solar generation. 2026-08-14 09:10:03.328190: - You will run out of battery in 30 minutes. 2026-08-14 09:10:03.328269: - Your next charge slot will be in 3 and a quarter hours where import rates will be cheap (22.2p). 2026-08-14 09:10:03.328294: 2026-08-14 09:10:03.382500: Plan calculation took 1.06 seconds 2026-08-14 09:10:03.386187: No high rate period found 2026-08-14 09:10:03.440879: Import threshold used for optimisation was 24.8p 2026-08-14 09:10:03.487212: Low import rate windows [0: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 1: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 2: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 3: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 4: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 5: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 6: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 7: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 8: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 9: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 10: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 11: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 12: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 13: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 14: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 15: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 16: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 17: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 18: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 19: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 20: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 21: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 22: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 23: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 24: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 25: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 26: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 27: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 28: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 29: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 30: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 31: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 32: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 33: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 34: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 35: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 36: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 37: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 38: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 39: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 40: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 41: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 42: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 43: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 44: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 45: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 46: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 47: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 48: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 49: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 50: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 51: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 52: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 53: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 54: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 55: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 56: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 57: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 58: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 59: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 60: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 61: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 62: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 63: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 64: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 65: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 66: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 67: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 68: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 69: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 70: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 71: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 72: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 73: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 74: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 75: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 76: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 77: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 78: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 79: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 80: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 81: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 82: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 83: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 84: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 85: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 86: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 87: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 88: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 89: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 90: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 91: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 92: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84, 93: 08-16 08:30:00 - 08-16 09:00:00 @ 24.56, 94: 08-16 09:00:00 - 08-16 09:30:00 @ 23.79] 2026-08-14 09:10:03.492891: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-14 09:10:03.493062: Inverter 0 disabled charge window while waiting for schedule (now 08-14 09:10:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 09:10:03.493287: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:10:03.493602: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:10:03.493730: No export window planned 2026-08-14 09:10:03.493910: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 09:10:03.493964: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:10:03.494150: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:10:03.494383: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 09:10:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 09:10:03.494456: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 09:10:03.494568: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 09:10:03.494685: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:10:03.494733: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:10:03.494787: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:10:03.494828: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:10:03.494868: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:10:03.494903: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:10:03.494941: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:10:03.495029: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:10:03.495068: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:10:03.495091: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:10:03.495222: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:10:03.495288: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:10:03.495321: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:10:03.495347: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:10:03.495369: Inverter 0 count register writes 0 2026-08-14 09:10:03.511353: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 09:10:03.517163: Total inverter register writes now 806 2026-08-14 09:10:03.552913: Info: Completed run status Demand 2026-08-14 09:10:03.559600: Info: record_status Demand 2026-08-14 09:10:03.566344: Saved current settings to /config/predbat_config.json 2026-08-14 09:10:03.566648: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 09:10:38.675230: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:10:38.675518: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:10:38.675558: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:10:38.675713: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:10:38.675761: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:10:38.675783: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:10:38.675801: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:12:38.889112: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:12:38.889389: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:12:38.889426: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:12:38.889587: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:12:38.889627: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:12:38.889661: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:12:38.889683: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:14:39.116908: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:14:39.117229: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:14:39.117272: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:14:39.117498: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:14:39.117561: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:14:39.117583: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:14:39.117601: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:15:00.213806: --------------- PredBat - update at 2026-08-14 09:15:00+01:00 with clock skew 0 minutes, minutes now 555 2026-08-14 09:15:00.214606: Saved current settings to /config/predbat_config.json 2026-08-14 09:15:00.214728: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 105.0 minutes 2026-08-14 09:15:00.214811: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 09:15:00.214960: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 09:15:00.239054: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 09:15:00.239184: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 09:15:00.239831: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 09:15:00.239945: Predbat mode is set to Control charge & discharge 2026-08-14 09:15:00.432373: Found 21602 load_today datapoints going back 28 days 2026-08-14 09:15:00.432527: Using load_power data to fill gaps in load_today data 2026-08-14 09:15:01.217835: Processing 721 30-minute periods for power integration 2026-08-14 09:15:01.372136: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 09:15:01.372290: Car charging hold False, threshold 6.0kWh 2026-08-14 09:15:01.372331: Current data so far today: load 8.5kWh, import 8.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 09:15:01.383767: Cars: SoC: [17.58]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 09:15:01.384482: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 09:15:01.384562: Standing charge is set to 49.98p 2026-08-14 09:15:01.419065: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 09:15:01.419193: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 09:15:01.419509: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 555.0 minutes 2026-08-14 09:15:01.420027: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 554.8 minutes 2026-08-14 09:15:01.423871: Loaded 47 datapoints of futurerate analysis 2026-08-14 09:15:01.507290: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 09:15:01.552542: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 09:15:01.556705: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 09:15:01.557021: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 09:15:01.594531: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 09:15:01.594704: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 09:15:01.596385: High export rate found rates in range 99p to -99p 2026-08-14 09:15:01.681120: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 09:15:01.681601: Car 0 charging is not planned as it is not plugged in 2026-08-14 09:15:01.694907: Battery level now 1.48kWh, -1hr ago 1.88kWh, at midnight 2.43kWh, battery value change in the last hour -9.32p, change today -22.19p, rate_forward 23.31p 2026-08-14 09:15:01.695298: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.5kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 09:15:01.755439: Today's energy total net 8.4kWh, import 8.4kWh, export 0.0kWh, cost 262.75p, import 212.77p, export 0.0p, carbon 0.0kg 2026-08-14 09:15:01.755642: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 09:15:01.850366: Using weighted-bucket historical load forecast over 14 days 2026-08-14 09:15:01.876358: Today's load divergence 113.68%, in-day adjustment 133.78%, damping 0.95x, yesterday 146.81% today 113.0% blend 61.46% 2026-08-14 09:15:01.876444: Today's predicted so far 3.39kWh with 0.0kWh car/iBoost excluded, 1.62kWh import ignored, and 5.02kWh forecast extra. 2026-08-14 09:15:01.876476: Today's actual load so far 5.37kWh with 0.0kWh car/iBoost excluded, and 3.18kWh import ignored. 2026-08-14 09:15:01.912272: Inverter 0: Type SK Sunsynk 2026-08-14 09:15:01.912364: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 09:15:01.912634: Reserve min: 7%, battery_min: 7% 2026-08-14 09:15:01.912726: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 09:15:01.913095: Inverter 0 SoC: 1.42kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4477W, current battery voltage 51.2V, grid power -5978W, load power 853W, PV Power 0W 2026-08-14 09:15:01.913326: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:15:01.913437: Inverter 0 scheduled charge enable is False 2026-08-14 09:15:01.913488: Inverter 0 charge windows currently [] 2026-08-14 09:15:01.913545: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 09:15:01.913699: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:15:01.913743: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:15:01.913789: Inverter 0 scheduled discharge enable is False 2026-08-14 09:15:01.913986: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:15:01.914030: Inverter 0 discharge windows currently [] 2026-08-14 09:15:01.914055: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:15:01.914098: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:15:01.914138: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:15:01.973043: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 09:15:01.973153: Plan was last updated on 2026-08-14 09:05:00+01:00 and is now 10.0 minutes old 2026-08-14 09:15:01.973465: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 09:15:01.973514: Best export window [ ] 2026-08-14 09:15:01.974330: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 09:15:01.977485: Load divergence over 8.0 hours mean 445.5W, min 220.2W, max 1101.0W, std dev 171.1W, divergence 19.2% 2026-08-14 09:15:01.990420: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 09:15:01.990544: LoadML is_calculating False 2026-08-14 09:15:01.990610: Creating pool of 12 processes to match your CPU count 2026-08-14 09:15:02.112161: predict base end_record 08-15 12:40:00, final soc 1.12kWh, metric 892.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 29.09kWh, PV 0.0kWh 2026-08-14 09:15:02.245818: Battery has 0.42 hours left - now at 1.42kWh 2026-08-14 09:15:02.292432: predict base10 end_record 08-15 12:40:00, final soc 1.12kWh, metric 920.48p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 30.07kWh, PV 0.0kWh 2026-08-14 09:15:02.389007: predict best10 end_record 08-15 12:40:00, final soc 1.77kWh, metric 842.37p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 30.07kWh, PV 0.0kWh 2026-08-14 09:15:02.476305: predict best end_record 08-15 12:40:00, final soc 1.9kWh, metric 821.45p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 29.09kWh, PV 0.0kWh 2026-08-14 09:15:02.476399: Saving plan best values to HA entities 2026-08-14 09:15:02.666442: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 09:15:02.682085: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 09:15:02.688627: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.0kWh, house 5.47kWh, export 0.0kWh, metric 821.45p, metric10 842.37p 2026-08-14 09:15:02.776859: Marginal costs baseline metric (no standing charge): 771.4629 2026-08-14 09:15:03.013507: Marginal energy costs matrix computed: min=21.77 max=36.81 2026-08-14 09:15:03.090443: Rate array import [{'start': 555, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2200, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 555, 'end': 2200, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 09:15:03.091027: - Your estimated bill for today is £6.84 and tomorrow is £6.99 2026-08-14 09:15:03.091081: - Import rates are cheap (21.7p - 24.7p) for the next 6 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 09:15:03.091111: - The battery is currently at 9% and is in eco mode for the next 3 and a quarter hours. 2026-08-14 09:15:03.091128: - For the next 48 hours there will be no solar generation. 2026-08-14 09:15:03.091144: - You will run out of battery in 25 minutes. 2026-08-14 09:15:03.091158: - Your next charge slot will be in 3 and a quarter hours where import rates will be cheap (22.2p). 2026-08-14 09:15:03.091176: 2026-08-14 09:15:03.138101: Plan calculation took 1.16 seconds 2026-08-14 09:15:03.142488: No high rate period found 2026-08-14 09:15:03.197898: Import threshold used for optimisation was 24.8p 2026-08-14 09:15:03.254622: Low import rate windows [0: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 1: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 2: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 3: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 4: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 5: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 6: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 7: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 8: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 9: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 10: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 11: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 12: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 13: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 14: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 15: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 16: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 17: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 18: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 19: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 20: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 21: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 22: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 23: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 24: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 25: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 26: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 27: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 28: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 29: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 30: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 31: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 32: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 33: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 34: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 35: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 36: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 37: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 38: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 39: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 40: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 41: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 42: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 43: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 44: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 45: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 46: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 47: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 48: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 49: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 50: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 51: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 52: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 53: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 54: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 55: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 56: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 57: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 58: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 59: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 60: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 61: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 62: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 63: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 64: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 65: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 66: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 67: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 68: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 69: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 70: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 71: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 72: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 73: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 74: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 75: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 76: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 77: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 78: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 79: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 80: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 81: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 82: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 83: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 84: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 85: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 86: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 87: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 88: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 89: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 90: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 91: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 92: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84, 93: 08-16 08:30:00 - 08-16 09:00:00 @ 24.56, 94: 08-16 09:00:00 - 08-16 09:30:00 @ 23.79] 2026-08-14 09:15:03.260486: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-14 09:15:03.260593: Inverter 0 disabled charge window while waiting for schedule (now 08-14 09:15:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 09:15:03.260728: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:15:03.261011: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:15:03.261119: No export window planned 2026-08-14 09:15:03.261300: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 09:15:03.261343: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:15:03.261494: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:15:03.261699: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 09:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 09:15:03.261755: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 09:15:03.261847: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 09:15:03.261972: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:15:03.262014: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:15:03.262047: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:15:03.262093: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:15:03.262147: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:15:03.262201: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:15:03.262280: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:15:03.262369: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:15:03.262417: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:15:03.262449: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:15:03.262493: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:15:03.262541: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:15:03.262591: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:15:03.262637: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:15:03.262682: Inverter 0 count register writes 0 2026-08-14 09:15:03.277012: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 09:15:03.277248: Recompute is saving previous plan... 2026-08-14 09:15:03.280043: Best charge window [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 0% ] 2026-08-14 09:15:03.280114: Best export window [ ] 2026-08-14 09:15:03.280730: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 09:15:03.283282: Load divergence over 8.0 hours mean 445.5W, min 220.2W, max 1101.0W, std dev 171.1W, divergence 19.2% 2026-08-14 09:15:03.293159: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 09:15:03.293265: LoadML is_calculating False 2026-08-14 09:15:03.293328: Creating pool of 12 processes to match your CPU count 2026-08-14 09:15:03.375202: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 09:15:03.377110: Optimise levels pass started at 2026-08-14 09:15:03 2026-08-14 09:15:03.377171: Optimise all windows, total charge 94 export 1 2026-08-14 09:15:03.665830: >> Region optimisation pass width 960 2026-08-14 09:15:04.088295: >> Region optimisation pass width 480 2026-08-14 09:15:04.479361: >> Region optimisation pass width 240 2026-08-14 09:15:05.003233: >> Region optimisation pass width 120 2026-08-14 09:15:06.084250: Calculated end_record as 08-15 13:00:00 based on best_price 22.25p, next_charge_start 08-14 13:00:00, max_windows 55 2026-08-14 09:15:06.084382: Optimise levels pass ended at 2026-08-14 09:15:06, duration 2.7 seconds tried 320 combinations 2026-08-14 09:15:06.084444: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1036.19p, best_keep 0kWh, best_cycle 48.49kWh, best_carbon 0kg, best_import 37.36kWh 2026-08-14 09:15:06.104755: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 09:15:06.106755: Best charge windows best_metric 737.34p, best_cost 759.13p, best_carbon 0kg, best_import 50.32kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:15:06.106854: Best export windows best_metric 737.34p, best_cost 759.13p, best_carbon 0kg, best_import 50.32kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:15:06.107041: Optimise price set 23.8p, pass trim_import, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 737.34p, best_cost 759.13p, best_cycle 25.07kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:06.155129: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 737.08p, best_cost 758.81p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:06.247415: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 737.08p, best_cost 758.81p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:06.381697: Best charge windows best_metric 737.08p, best_cost 758.81p, best_carbon 0kg, best_import 50.32kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:15:06.382080: Best export windows best_metric 737.08p, best_cost 758.81p, best_carbon 0kg, best_import 50.32kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:15:06.383638: Best charge windows best_metric 737.08p, best_cost 758.81p, best_carbon 0kg, best_import 50.32kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:15:06.383774: Best export windows best_metric 737.08p, best_cost 758.81p, best_carbon 0kg, best_import 50.32kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:15:06.383901: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 737.08p, best_cost 758.81p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:06.626385: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 736.61p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:06.712899: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 736.61p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:06.852775: Best charge windows best_metric 736.61p, best_cost 758.75p, best_carbon 0kg, best_import 50.32kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:15:06.853129: Best export windows best_metric 736.61p, best_cost 758.75p, best_carbon 0kg, best_import 50.32kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:15:06.854732: Best charge windows best_metric 736.61p, best_cost 758.75p, best_carbon 0kg, best_import 50.32kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:15:06.854901: Best export windows best_metric 736.61p, best_cost 758.75p, best_carbon 0kg, best_import 50.32kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:15:06.855099: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 736.61p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:06.947180: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 736.61p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:07.042281: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 736.61p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:07.178472: Best charge windows best_metric 736.61p, best_cost 758.75p, best_carbon 0kg, best_import 50.32kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:15:07.178717: Best export windows best_metric 736.61p, best_cost 758.75p, best_carbon 0kg, best_import 50.32kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:15:07.178823: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 736.61p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:07.300552: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 736.61p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:07.378767: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 736.61p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:07.635391: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 736.61p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:07.704663: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 736.61p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:07.781846: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 736.61p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:07.848549: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 736.61p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:07.919116: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 736.61p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:07.995545: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 736.39p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.175733: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.223760: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.264735: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.305140: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.352658: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.395476: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.489553: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.532585: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.571452: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.613759: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.651570: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.692783: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.730461: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.769720: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.811333: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.858860: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.903755: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.950809: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:08.993364: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:09.035891: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:09.071016: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:09.113559: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:09.154817: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:09.202871: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:09.242256: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:09.296135: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:09.338076: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:09.381372: Best charge windows best_metric 736.31p, best_cost 758.75p, best_carbon 0kg, best_import 50.32kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:15:09.381651: Best export windows best_metric 736.31p, best_cost 758.75p, best_carbon 0kg, best_import 50.32kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:15:09.383386: Best charge windows best_metric 736.31p, best_cost 758.75p, best_carbon 0kg, best_import 50.32kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:15:09.383519: Best export windows best_metric 736.31p, best_cost 758.75p, best_carbon 0kg, best_import 50.32kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:15:09.383776: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:09.475136: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 736.31p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:09.517815: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 736.3p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:09.604548: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 736.3p, best_cost 758.75p, best_cycle 25.06kWh, best_carbon 0kg, best_import 50.32kWh 2026-08-14 09:15:09.694933: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 736.26p, best_cost 758.47p, best_cycle 24.07kWh, best_carbon 0kg, best_import 50.25kWh 2026-08-14 09:15:09.837954: Best charge windows best_metric 736.26p, best_cost 758.47p, best_carbon 0kg, best_import 50.25kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:15:09.838308: Best export windows best_metric 736.26p, best_cost 758.47p, best_carbon 0kg, best_import 50.25kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:15:09.838467: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 736.26p, best_cost 758.47p, best_cycle 24.07kWh, best_carbon 0kg, best_import 50.25kWh 2026-08-14 09:15:09.924845: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 736.2p, best_cost 758.48p, best_cycle 24.07kWh, best_carbon 0kg, best_import 50.25kWh 2026-08-14 09:15:10.185920: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 736.2p, best_cost 758.48p, best_cycle 24.07kWh, best_carbon 0kg, best_import 50.25kWh 2026-08-14 09:15:10.282127: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 736.2p, best_cost 758.48p, best_cycle 24.07kWh, best_carbon 0kg, best_import 50.25kWh 2026-08-14 09:15:10.428839: Best charge windows best_metric 736.19p, best_cost 758.48p, best_carbon 0kg, best_import 50.25kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:15:10.429063: Best export windows best_metric 736.19p, best_cost 758.48p, best_carbon 0kg, best_import 50.25kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:15:10.430873: Best charge windows best_metric 736.19p, best_cost 758.48p, best_carbon 0kg, best_import 50.25kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:15:10.430992: Best export windows best_metric 736.19p, best_cost 758.48p, best_carbon 0kg, best_import 50.25kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:15:10.431098: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 736.19p, best_cost 758.48p, best_cycle 24.07kWh, best_carbon 0kg, best_import 50.25kWh 2026-08-14 09:15:10.516924: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 736.19p, best_cost 758.48p, best_cycle 24.07kWh, best_carbon 0kg, best_import 50.25kWh 2026-08-14 09:15:10.601024: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 736.19p, best_cost 758.48p, best_cycle 24.07kWh, best_carbon 0kg, best_import 50.25kWh 2026-08-14 09:15:10.692664: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 736.19p, best_cost 758.48p, best_cycle 24.07kWh, best_carbon 0kg, best_import 50.25kWh 2026-08-14 09:15:10.831079: Best charge windows best_metric 736.19p, best_cost 758.48p, best_carbon 0kg, best_import 50.25kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:15:10.831431: Best export windows best_metric 736.19p, best_cost 758.48p, best_carbon 0kg, best_import 50.25kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:15:10.831674: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 736.19p, best_cost 758.48p, best_cycle 24.07kWh, best_carbon 0kg, best_import 50.25kWh 2026-08-14 09:15:10.909866: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 736.19p, best_cost 758.48p, best_cycle 24.07kWh, best_carbon 0kg, best_import 50.25kWh 2026-08-14 09:15:11.156591: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 736.19p, best_cost 758.48p, best_cycle 24.07kWh, best_carbon 0kg, best_import 50.25kWh 2026-08-14 09:15:11.237399: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 736.19p, best_cost 758.48p, best_cycle 24.07kWh, best_carbon 0kg, best_import 50.25kWh 2026-08-14 09:15:11.365733: Best charge windows best_metric 736.19p, best_cost 758.48p, best_carbon 0kg, best_import 50.25kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:15:11.365880: Best export windows best_metric 736.19p, best_cost 758.48p, best_carbon 0kg, best_import 50.25kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:15:11.366189: Tweak plan optimisation started 2026-08-14 09:15:11.650059: Tweak optimisation finished metric 736.2 cost 758.48 metric_keep 0 cycle 24.07 carbon 0 import 50.25 2026-08-14 09:15:11.669785: Swap charge optimisation started metric 736.2p, cost 758.48p, min_improvement_swap 0.1p 2026-08-14 09:15:15.696761: Swap charge optimisation finished metric 736.2p, cost 758.48p 2026-08-14 09:15:15.709834: Raw charge windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] reserve 1.12 2026-08-14 09:15:15.710580: Unclipped charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:30:00 @ 21.73p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 13:00:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 09:30:00 @ 24.73p 100% ] reserve 1.12 2026-08-14 09:15:15.711002: Unfiltered charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:30:00 @ 21.73p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 13:00:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 09:30:00 @ 24.73p 100% ] reserve 1.12 2026-08-14 09:15:15.711322: Filtered charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 15:00:00 @ 21.9p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 13:00:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 09:30:00 @ 24.73p 100% ] reserve 1.12 2026-08-14 09:15:15.749639: Previous plan best metric is 737.77 (cost 814.52) and new plan best metric is 736.2 (cost 758.48) 2026-08-14 09:15:15.749893: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 09:15:15.750102: Plan valid is now true after recompute was False 2026-08-14 09:15:15.779195: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 898.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 29.36kWh, PV 0.0kWh 2026-08-14 09:15:15.892123: Battery has 0.42 hours left - now at 1.42kWh 2026-08-14 09:15:15.935740: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 926.85p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 30.35kWh, PV 0.0kWh 2026-08-14 09:15:16.014364: predict best10 end_record 08-15 13:00:00, final soc 3.06kWh, metric 879.55p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 30.35kWh, PV 0.0kWh 2026-08-14 09:15:16.099396: predict best end_record 08-15 13:00:00, final soc 3.45kWh, metric 864.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:40:00, load 29.36kWh, PV 0.0kWh 2026-08-14 09:15:16.099493: Saving plan best values to HA entities 2026-08-14 09:15:16.269404: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 09:15:16.275770: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 09:15:16.281770: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.0kWh, house 5.47kWh, export 0.0kWh, metric 864.51p, metric10 879.55p 2026-08-14 09:15:16.358907: Marginal costs baseline metric (no standing charge): 814.5217 2026-08-14 09:15:16.608599: Marginal energy costs matrix computed: min=21.77 max=36.81 2026-08-14 09:15:16.677832: Rate array import [{'start': 555, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2220, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 555, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 09:15:16.678527: - Your estimated bill for today is £6.84 and tomorrow is £6.99 2026-08-14 09:15:16.678573: - Import rates are cheap (21.7p - 24.7p) for the next 6 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 09:15:16.678616: - The battery is currently at 9% and is in eco mode for the next 3 and a quarter hours. 2026-08-14 09:15:16.678640: - For the next 48 hours there will be no solar generation. 2026-08-14 09:15:16.678658: - You will run out of battery in 25 minutes. 2026-08-14 09:15:16.678675: - Your next charge slot will be in 3 and a quarter hours where import rates will be cheap (22.2p). 2026-08-14 09:15:16.678692: 2026-08-14 09:15:16.730017: Plan calculation took 13.45 seconds 2026-08-14 09:15:16.730437: Inverter 0: Type SK Sunsynk 2026-08-14 09:15:16.730502: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 09:15:16.730812: Reserve min: 7%, battery_min: 7% 2026-08-14 09:15:16.730959: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 09:15:16.731429: Inverter 0 SoC: 1.54kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power -4477W, current battery voltage 51.2V, grid power -5962W, load power 950W, PV Power 0W 2026-08-14 09:15:16.731732: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:15:16.731856: Inverter 0 scheduled charge enable is False 2026-08-14 09:15:16.731897: Inverter 0 charge windows currently [] 2026-08-14 09:15:16.731945: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 09:15:16.732091: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:15:16.732134: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:15:16.732178: Inverter 0 scheduled discharge enable is False 2026-08-14 09:15:16.732355: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:15:16.732402: Inverter 0 discharge windows currently [] 2026-08-14 09:15:16.732436: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:15:16.732462: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:15:16.732495: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:15:16.786931: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 09:15:16.787126: Inverter 0 disabled charge window while waiting for schedule (now 08-14 09:15:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 09:15:16.787248: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:15:16.787496: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:15:16.787615: No export window planned 2026-08-14 09:15:16.787810: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 09:15:16.787872: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:15:16.788094: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:15:16.788340: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 09:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 09:15:16.788419: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 09:15:16.788513: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 09:15:16.788620: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:15:16.788655: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:15:16.788682: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:15:16.788729: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:15:16.788756: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:15:16.788788: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:15:16.788814: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:15:16.788883: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:15:16.788913: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:15:16.788974: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:15:16.789047: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:15:16.789101: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:15:16.789152: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:15:16.789210: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:15:16.789280: Inverter 0 count register writes 0 2026-08-14 09:15:16.811206: Total inverter register writes now 806 2026-08-14 09:15:16.859928: Info: Completed run status Demand 2026-08-14 09:15:16.871029: Info: record_status Demand 2026-08-14 09:15:16.879407: Saved current settings to /config/predbat_config.json 2026-08-14 09:15:16.879800: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 09:15:53.988385: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:15:53.988627: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:15:53.988662: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:15:53.988800: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:15:53.988840: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:15:53.988861: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:15:53.988879: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:17:54.210369: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:17:54.210610: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:17:54.210645: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:17:54.210789: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:17:54.210827: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:17:54.210848: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:17:54.210866: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:19:54.443563: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:19:54.443804: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:19:54.443847: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:19:54.443980: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:19:54.444019: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:19:54.444041: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:19:54.444082: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:20:00.525405: --------------- PredBat - update at 2026-08-14 09:20:00+01:00 with clock skew 0 minutes, minutes now 560 2026-08-14 09:20:00.526190: Saved current settings to /config/predbat_config.json 2026-08-14 09:20:00.526329: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 110.0 minutes 2026-08-14 09:20:00.526443: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 09:20:00.526567: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 09:20:00.542825: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 09:20:00.542929: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 09:20:00.543441: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 09:20:00.543670: Predbat mode is set to Control charge & discharge 2026-08-14 09:20:00.715383: Found 21602 load_today datapoints going back 28 days 2026-08-14 09:20:00.715528: Using load_power data to fill gaps in load_today data 2026-08-14 09:20:01.435157: Processing 721 30-minute periods for power integration 2026-08-14 09:20:01.601538: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 09:20:01.601679: Car charging hold False, threshold 6.0kWh 2026-08-14 09:20:01.601746: Current data so far today: load 8.7kWh, import 8.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 09:20:01.614009: Cars: SoC: [16.994]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 09:20:01.614629: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 09:20:01.614695: Standing charge is set to 49.98p 2026-08-14 09:20:01.641022: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 09:20:01.641127: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 09:20:01.641349: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 560.0 minutes 2026-08-14 09:20:01.641728: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 559.8 minutes 2026-08-14 09:20:01.644608: Loaded 47 datapoints of futurerate analysis 2026-08-14 09:20:01.725069: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 09:20:01.772153: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 09:20:01.776512: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 09:20:01.776809: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 09:20:01.808228: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 09:20:01.808354: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 09:20:01.809510: High export rate found rates in range 99p to -99p 2026-08-14 09:20:01.896757: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 09:20:01.896877: Car 0 charging is not planned as it is not plugged in 2026-08-14 09:20:01.909620: Battery level now 1.42kWh, -1hr ago 1.88kWh, at midnight 2.43kWh, battery value change in the last hour -10.63p, change today -23.49p, rate_forward 23.31p 2026-08-14 09:20:01.910058: Last hour: net energy 0.28kWh, import 0.28kWh, export 0.0kWh, car 0kWh, load 0.65kWh, net cost 6.71p, import 6.71p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 09:20:01.968138: Today's energy total net 8.8kWh, import 8.8kWh, export 0.0kWh, cost 272.66p, import 222.68p, export 0.0p, carbon 0.0kg 2026-08-14 09:20:01.968353: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 09:20:02.039274: Using weighted-bucket historical load forecast over 14 days 2026-08-14 09:20:02.068037: Today's load divergence 114.83%, in-day adjustment 134.09%, damping 0.95x, yesterday 146.81% today 114.09% blend 61.11% 2026-08-14 09:20:02.068131: Today's predicted so far 3.41kWh with 0.0kWh car/iBoost excluded, 1.63kWh import ignored, and 5.05kWh forecast extra. 2026-08-14 09:20:02.068164: Today's actual load so far 5.58kWh with 0.0kWh car/iBoost excluded, and 3.08kWh import ignored. 2026-08-14 09:20:02.104231: Inverter 0: Type SK Sunsynk 2026-08-14 09:20:02.104322: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 09:20:02.104477: Reserve min: 7%, battery_min: 7% 2026-08-14 09:20:02.104528: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 09:20:02.104743: Inverter 0 SoC: 1.54kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 981W, current battery voltage 51.2V, grid power -54W, load power 1027W, PV Power 0W 2026-08-14 09:20:02.104870: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:20:02.104936: Inverter 0 scheduled charge enable is False 2026-08-14 09:20:02.104988: Inverter 0 charge windows currently [] 2026-08-14 09:20:02.105011: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 09:20:02.105100: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:20:02.105131: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:20:02.105160: Inverter 0 scheduled discharge enable is False 2026-08-14 09:20:02.105259: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:20:02.105305: Inverter 0 discharge windows currently [] 2026-08-14 09:20:02.105323: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:20:02.105339: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:20:02.105352: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:20:02.157858: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 09:20:02.157965: Plan was last updated on 2026-08-14 09:15:00+01:00 and is now 5.0 minutes old 2026-08-14 09:20:02.158331: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 09:20:02.158381: Best export window [ ] 2026-08-14 09:20:02.159207: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 09:20:02.162453: Load divergence over 8.0 hours mean 440.61W, min 235.2W, max 1260.6W, std dev 175.5W, divergence 19.92% 2026-08-14 09:20:02.175625: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 09:20:02.175719: LoadML is_calculating False 2026-08-14 09:20:02.175801: Creating pool of 12 processes to match your CPU count 2026-08-14 09:20:02.290426: predict base end_record 08-15 13:05:00, final soc 1.12kWh, metric 907.04p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:50:00, load 29.61kWh, PV 0.0kWh 2026-08-14 09:20:02.415381: Battery has 0.5 hours left - now at 1.54kWh 2026-08-14 09:20:02.455391: predict base10 end_record 08-15 13:05:00, final soc 1.12kWh, metric 935.3p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:50:00, load 30.61kWh, PV 0.0kWh 2026-08-14 09:20:02.526237: predict best10 end_record 08-15 13:05:00, final soc 3.38kWh, metric 895.53p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:50:00, load 30.61kWh, PV 0.0kWh 2026-08-14 09:20:02.604073: predict best end_record 08-15 13:05:00, final soc 3.84kWh, metric 881.94p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 09:50:00, load 29.61kWh, PV 0.0kWh 2026-08-14 09:20:02.604297: Saving plan best values to HA entities 2026-08-14 09:20:02.795788: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 09:20:02.801594: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 09:20:02.806973: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.02kWh, house 5.34kWh, export 0.0kWh, metric 881.94p, metric10 895.53p 2026-08-14 09:20:02.879801: Marginal costs baseline metric (no standing charge): 831.957 2026-08-14 09:20:03.149420: Marginal energy costs matrix computed: min=21.76 max=37.14 2026-08-14 09:20:03.227621: Rate array import [{'start': 560, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2225, 'rate': 'cheap', 'range': '(21.9p - 32.0p)'}] export [{'start': 560, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 09:20:03.228354: - Your estimated bill for today is £6.91 and tomorrow is £7.00 2026-08-14 09:20:03.228410: - Import rates are cheap (21.7p - 24.7p) for the next 6 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 09:20:03.228434: - The battery is currently at 10% and is in eco mode for the next 3 and a quarter hours. 2026-08-14 09:20:03.228452: - For the next 48 hours there will be no solar generation. 2026-08-14 09:20:03.228469: - You will run out of battery in 30 minutes. 2026-08-14 09:20:03.228486: - Your next charge slot will be in 3 and a quarter hours where import rates will be cheap (22.2p). 2026-08-14 09:20:03.228503: 2026-08-14 09:20:03.287519: Plan calculation took 1.13 seconds 2026-08-14 09:20:03.290927: No high rate period found 2026-08-14 09:20:03.343734: Import threshold used for optimisation was 24.8p 2026-08-14 09:20:03.398759: Low import rate windows [0: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 1: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 2: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 3: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 4: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 5: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 6: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 7: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 8: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 9: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 10: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 11: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 12: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 13: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 14: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 15: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 16: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 17: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 18: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 19: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 20: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 21: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 22: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 23: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 24: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 25: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 26: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 27: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 28: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 29: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 30: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 31: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 32: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 33: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 34: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 35: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 36: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 37: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 38: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 39: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 40: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 41: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 42: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 43: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 44: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 45: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 46: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 47: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 48: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 49: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 50: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 51: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 52: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 53: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 54: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 55: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 56: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 57: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 58: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 59: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 60: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 61: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 62: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 63: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 64: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 65: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 66: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 67: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 68: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 69: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 70: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 71: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 72: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 73: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 74: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 75: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 76: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 77: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 78: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 79: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 80: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 81: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 82: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 83: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 84: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 85: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 86: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 87: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 88: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 89: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 90: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 91: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 92: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84, 93: 08-16 08:30:00 - 08-16 09:00:00 @ 24.56, 94: 08-16 09:00:00 - 08-16 09:30:00 @ 23.79] 2026-08-14 09:20:03.405222: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 09:20:03.405372: Inverter 0 disabled charge window while waiting for schedule (now 08-14 09:20:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 09:20:03.405539: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:20:03.405855: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:20:03.405995: No export window planned 2026-08-14 09:20:03.406189: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 09:20:03.406241: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:20:03.406441: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:20:03.406690: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 09:20:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 09:20:03.406758: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 09:20:03.406858: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 09:20:03.407008: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:20:03.407060: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:20:03.407103: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:20:03.407156: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:20:03.407213: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:20:03.407290: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:20:03.407348: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:20:03.407472: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:20:03.407531: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:20:03.407594: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:20:03.407655: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:20:03.407716: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:20:03.407771: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:20:03.407819: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:20:03.407848: Inverter 0 count register writes 0 2026-08-14 09:20:03.425836: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 09:20:03.433126: Total inverter register writes now 806 2026-08-14 09:20:03.472845: Info: Completed run status Demand 2026-08-14 09:20:03.479749: Info: record_status Demand 2026-08-14 09:20:03.488396: Saved current settings to /config/predbat_config.json 2026-08-14 09:20:03.488799: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 09:20:25.296047: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 09:20:26.177550: Processing 1345 30-minute periods for power integration 2026-08-14 09:20:26.269415: ML Component: Car charging hold False, car energy reported load False 2026-08-14 09:20:26.362684: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 09:20:26.446126: ML Temperature data points: 49841 2026-08-14 09:20:26.685618: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 09:20:26.724490: ML Component: Data fetch completed, load data age 55.0 days, 16094 data points 2026-08-14 09:20:26.724640: ML Component: Starting fine-tune training (2h interval), model age is 2.000250739722222 hours 2026-08-14 09:20:26.724687: ML Component: Doing training... 2026-08-14 09:20:26.738049: ML Predictor: Curriculum training - capped to last 4 intermediate passes (starting at window=52.0 days) 2026-08-14 09:20:26.738185: ML Predictor: Curriculum training - 5 passes, window 52.0→55.0 days + final full pass (55.9 days) 2026-08-14 09:20:26.796075: ML Predictor: Curriculum pass 1/5: window=52.0 days (1248 hours of data) 2026-08-14 09:20:26.796222: ML Predictor: Starting initial training with 30 epochs 2026-08-14 09:20:27.334855: ML Predictor: Creating dataset with 1248 hours of training data, 48 hours validation 2026-08-14 09:20:31.987998: ML Predictor: Created 14688 training samples, 576 validation samples 2026-08-14 09:20:32.043399: ML Predictor: Normalization stats [fit] target(mean=0.0588 std=0.0474) load(mean=0.0587 std=0.0469) pv(mean=0.0000 std=0.0100) temp(mean=19.5283 std=4.4098) import_rate(mean=24.2360 std=1.9826) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1939 std=0.5220) 2026-08-14 09:20:39.272395: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:20:39.272678: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:20:39.272730: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:20:39.272868: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:20:39.272917: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:20:39.272940: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:20:39.273118: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:20:45.167639: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0150 val_mae=0.0043 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0023 kWh ema_combined=0.0023 kWh 2026-08-14 09:20:59.848773: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0206 val_mae=0.0049 kWh val_bias=-0.0005 kWh (-0.8%) combined=0.0031 kWh ema_combined=0.0025 kWh 2026-08-14 09:21:16.679089: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0201 val_mae=0.0040 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0024 kWh ema_combined=0.0025 kWh 2026-08-14 09:21:30.285211: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0185 val_mae=0.0042 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0026 kWh ema_combined=0.0025 kWh 2026-08-14 09:21:43.317704: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0189 val_mae=0.0040 kWh val_bias=-0.0012 kWh (-1.9%) combined=0.0034 kWh ema_combined=0.0028 kWh 2026-08-14 09:21:56.440259: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0135 val_mae=0.0037 kWh val_bias=+0.0006 kWh (+0.9%) combined=0.0025 kWh ema_combined=0.0027 kWh 2026-08-14 09:22:10.793452: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0111 val_mae=0.0032 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0017 kWh ema_combined=0.0024 kWh 2026-08-14 09:22:24.380799: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0110 val_mae=0.0029 kWh val_bias=-0.0008 kWh (-1.2%) combined=0.0026 kWh ema_combined=0.0025 kWh 2026-08-14 09:22:38.013784: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0111 val_mae=0.0040 kWh val_bias=+0.0027 kWh (+4.2%) combined=0.0035 kWh ema_combined=0.0028 kWh 2026-08-14 09:22:39.655628: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:22:39.656214: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:22:39.656307: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:22:39.656501: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:22:39.656576: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:22:39.656622: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:22:39.656701: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:22:52.500491: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0120 val_mae=0.0026 kWh val_bias=-0.0011 kWh (-1.7%) combined=0.0018 kWh ema_combined=0.0025 kWh 2026-08-14 09:23:06.469029: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0101 val_mae=0.0031 kWh val_bias=-0.0016 kWh (-2.5%) combined=0.0020 kWh ema_combined=0.0023 kWh 2026-08-14 09:23:06.469328: ML Predictor: Early stopping at epoch 11 2026-08-14 09:23:06.470316: ML Predictor: Restored best weights from epoch with val_mae=0.0043 kWh val_bias=-0.0003 kWh (-0.5%) 2026-08-14 09:23:06.470652: ML Predictor: Training complete, final val_mae=0.0043 kWh val_bias=-0.0003 kWh (-0.5%) 2026-08-14 09:23:07.587582: ML Predictor: AR rollout over holdout: ar_mae=0.0074 kWh ar_bias=-0.0017 kWh (-2.6%) [drift vs teacher-forced: +0.0031 kWh] 2026-08-14 09:23:07.592109: ML Predictor: Curriculum pass 1/5 complete, val_mae=0.0043 kWh 2026-08-14 09:23:07.678835: ML Predictor: Curriculum pass 2/5: window=53.0 days (1272 hours of data) 2026-08-14 09:23:07.679103: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 09:23:08.347772: ML Predictor: Creating dataset with 1272 hours of training data, 48 hours validation 2026-08-14 09:23:13.349694: ML Predictor: Created 14976 training samples, 576 validation samples 2026-08-14 09:23:13.402949: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0588 std=0.0471) load(mean=0.0587 std=0.0469) pv(mean=0.0000 std=0.0100) temp(mean=19.5241 std=4.4090) import_rate(mean=24.2363 std=1.9807) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1936 std=0.5221) 2026-08-14 09:23:13.488523: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 09:23:13.505100: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 09:23:13.532421: ML Predictor: Baseline (pre-finetune) val_mae=0.0035 kWh val_bias=-0.0005 kWh 2026-08-14 09:23:27.381783: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0142 val_mae=0.0032 kWh val_bias=+0.0006 kWh (+1.1%) combined=0.0023 kWh ema_combined=0.0023 kWh 2026-08-14 09:23:41.615872: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0126 val_mae=0.0030 kWh val_bias=+0.0004 kWh (+0.6%) combined=0.0016 kWh ema_combined=0.0021 kWh 2026-08-14 09:23:54.945597: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0113 val_mae=0.0033 kWh val_bias=+0.0012 kWh (+2.1%) combined=0.0021 kWh ema_combined=0.0021 kWh 2026-08-14 09:24:10.397730: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0118 val_mae=0.0028 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0015 kWh ema_combined=0.0019 kWh 2026-08-14 09:24:27.898119: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0111 val_mae=0.0030 kWh val_bias=-0.0007 kWh (-1.2%) combined=0.0016 kWh ema_combined=0.0018 kWh 2026-08-14 09:24:45.260400: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0107 val_mae=0.0024 kWh val_bias=-0.0000 kWh (-0.0%) combined=0.0015 kWh ema_combined=0.0017 kWh 2026-08-14 09:24:54.489700: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:24:54.490035: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:24:54.491113: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:24:54.491477: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:24:54.491534: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:24:54.491564: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:24:54.491589: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:24:57.789324: TemperatureAPI: Using coordinates latitude 53.4, longitude -2.2 2026-08-14 09:24:57.952891: TemperatureAPI: Successfully fetched temperature data from Open-Meteo API 2026-08-14 09:25:00.179180: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0101 val_mae=0.0027 kWh val_bias=+0.0004 kWh (+0.7%) combined=0.0014 kWh ema_combined=0.0016 kWh 2026-08-14 09:25:00.692882: --------------- PredBat - update at 2026-08-14 09:25:00+01:00 with clock skew 0 minutes, minutes now 565 2026-08-14 09:25:00.693853: Saved current settings to /config/predbat_config.json 2026-08-14 09:25:00.694006: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 115.0 minutes 2026-08-14 09:25:00.694147: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 09:25:00.694259: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 09:25:00.734628: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 09:25:00.734853: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 09:25:00.736053: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 09:25:00.736288: Predbat mode is set to Control charge & discharge 2026-08-14 09:25:01.009766: Found 21602 load_today datapoints going back 28 days 2026-08-14 09:25:01.009977: Using load_power data to fill gaps in load_today data 2026-08-14 09:25:02.195944: Processing 721 30-minute periods for power integration 2026-08-14 09:25:02.423904: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 09:25:02.424996: Car charging hold False, threshold 6.0kWh 2026-08-14 09:25:02.425415: Current data so far today: load 8.8kWh, import 8.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 09:25:02.446087: Cars: SoC: [15.822000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 09:25:02.448351: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 09:25:02.448553: Standing charge is set to 49.98p 2026-08-14 09:25:02.552559: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 09:25:02.552731: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 09:25:02.553218: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 565.0 minutes 2026-08-14 09:25:02.554062: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 564.8 minutes 2026-08-14 09:25:02.560344: Loaded 47 datapoints of futurerate analysis 2026-08-14 09:25:02.771002: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 09:25:02.837549: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 09:25:02.842788: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 09:25:02.843242: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 09:25:02.884039: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 09:25:02.884578: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 09:25:02.885898: High export rate found rates in range 99p to -99p 2026-08-14 09:25:02.975996: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 09:25:02.976258: Car 0 charging is not planned as it is not plugged in 2026-08-14 09:25:02.994824: Battery level now 1.54kWh, -1hr ago 1.76kWh, at midnight 2.43kWh, battery value change in the last hour -5.22p, change today -20.88p, rate_forward 23.31p 2026-08-14 09:25:02.995374: Last hour: net energy 0.25kWh, import 0.25kWh, export 0.0kWh, car 0kWh, load 0.7kWh, net cost 6.08p, import 6.08p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 09:25:03.091050: Today's energy total net 8.8kWh, import 8.8kWh, export 0.0kWh, cost 272.66p, import 222.68p, export 0.0p, carbon 0.0kg 2026-08-14 09:25:03.091342: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 09:25:03.214795: Using weighted-bucket historical load forecast over 14 days 2026-08-14 09:25:03.252914: Today's load divergence 116.03%, in-day adjustment 134.42%, damping 0.95x, yesterday 146.81% today 115.23% blend 60.76% 2026-08-14 09:25:03.253336: Today's predicted so far 3.46kWh with 0.0kWh car/iBoost excluded, 1.61kWh import ignored, and 5.07kWh forecast extra. 2026-08-14 09:25:03.254407: Today's actual load so far 5.84kWh with 0.0kWh car/iBoost excluded, and 2.86kWh import ignored. 2026-08-14 09:25:03.318730: Inverter 0: Type SK Sunsynk 2026-08-14 09:25:03.319061: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 09:25:03.319555: Reserve min: 7%, battery_min: 7% 2026-08-14 09:25:03.319823: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 09:25:03.320413: Inverter 0 SoC: 1.9kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 981W, current battery voltage 51.2V, grid power -59W, load power 1115W, PV Power 0W 2026-08-14 09:25:03.320801: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:25:03.321095: Inverter 0 scheduled charge enable is False 2026-08-14 09:25:03.321244: Inverter 0 charge windows currently [] 2026-08-14 09:25:03.321498: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 09:25:03.321840: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:25:03.322063: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:25:03.322296: Inverter 0 scheduled discharge enable is False 2026-08-14 09:25:03.322660: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:25:03.322804: Inverter 0 discharge windows currently [] 2026-08-14 09:25:03.322985: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:25:03.323142: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:25:03.323348: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:25:03.476046: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 09:25:03.476412: Plan was last updated on 2026-08-14 09:15:00+01:00 and is now 10.0 minutes old 2026-08-14 09:25:03.477026: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 09:25:03.477250: Best export window [ ] 2026-08-14 09:25:03.478240: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 09:25:03.482212: Load divergence over 8.0 hours mean 437.69W, min 247.2W, max 1439.4W, std dev 192.5W, divergence 21.99% 2026-08-14 09:25:03.500149: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 09:25:03.500517: LoadML is_calculating True 2026-08-14 09:25:03.500635: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 09:25:03.550679: predict base end_record 08-15 13:10:00, final soc 1.12kWh, metric 900.11p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:20:00, load 29.76kWh, PV 0.0kWh 2026-08-14 09:25:03.791974: Battery has 0.92 hours left - now at 1.9kWh 2026-08-14 09:25:03.835058: predict base10 end_record 08-15 13:10:00, final soc 1.12kWh, metric 928.45p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:20:00, load 30.76kWh, PV 0.0kWh 2026-08-14 09:25:03.969744: predict best10 end_record 08-15 13:10:00, final soc 3.71kWh, metric 896.04p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:20:00, load 30.76kWh, PV 0.0kWh 2026-08-14 09:25:04.166562: predict best end_record 08-15 13:10:00, final soc 4.22kWh, metric 883.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:20:00, load 29.76kWh, PV 0.0kWh 2026-08-14 09:25:04.166694: Saving plan best values to HA entities 2026-08-14 09:25:04.491109: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 09:25:04.499801: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 09:25:04.509302: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.04kWh, house 4.97kWh, export 0.0kWh, metric 883.9p, metric10 896.04p 2026-08-14 09:25:04.660288: Marginal costs baseline metric (no standing charge): 833.9157 2026-08-14 09:25:04.935654: Marginal energy costs matrix computed: min=21.75 max=37.43 2026-08-14 09:25:05.034282: Rate array import [{'start': 565, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2230, 'rate': 'cheap', 'range': '(21.9p - 32.0p)'}] export [{'start': 565, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 09:25:05.035167: - Your estimated bill for today is £6.82 and tomorrow is £7.00 2026-08-14 09:25:05.035293: - Import rates are cheap (21.7p - 24.7p) for the next 6 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 09:25:05.035417: - The battery is currently at 12% and is in eco mode for the next 3 hours. 2026-08-14 09:25:05.035502: - For the next 48 hours there will be no solar generation. 2026-08-14 09:25:05.035601: - You will run out of battery in 55 minutes. 2026-08-14 09:25:05.035673: - Your next charge slot will be in 3 hours where import rates will be cheap (22.2p). 2026-08-14 09:25:05.035771: 2026-08-14 09:25:05.077849: Plan calculation took 1.60 seconds 2026-08-14 09:25:05.081205: No high rate period found 2026-08-14 09:25:05.166769: Import threshold used for optimisation was 24.8p 2026-08-14 09:25:05.286340: Low import rate windows [0: 08-14 09:00:00 - 08-14 09:30:00 @ 23.79, 1: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 2: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 3: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 4: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 5: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 6: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 7: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 8: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 9: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 10: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 11: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 12: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 13: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 14: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 15: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 16: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 17: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 18: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 19: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 20: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 21: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 22: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 23: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 24: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 25: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 26: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 27: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 28: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 29: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 30: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 31: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 32: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 33: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 34: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 35: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 36: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 37: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 38: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 39: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 40: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 41: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 42: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 43: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 44: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 45: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 46: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 47: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 48: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 49: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 50: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 51: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 52: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 53: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 54: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 55: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 56: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 57: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 58: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 59: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 60: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 61: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 62: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 63: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 64: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 65: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 66: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 67: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 68: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 69: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 70: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 71: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 72: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 73: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 74: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 75: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 76: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 77: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 78: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 79: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 80: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 81: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 82: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 83: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 84: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 85: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 86: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 87: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 88: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 89: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 90: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 91: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 92: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84, 93: 08-16 08:30:00 - 08-16 09:00:00 @ 24.56, 94: 08-16 09:00:00 - 08-16 09:30:00 @ 23.79] 2026-08-14 09:25:05.311804: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 09:25:05.312077: Inverter 0 disabled charge window while waiting for schedule (now 08-14 09:25:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 09:25:05.312186: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:25:05.312453: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:25:05.312591: No export window planned 2026-08-14 09:25:05.312759: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 09:25:05.312844: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:25:05.313077: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:25:05.313293: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 09:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 09:25:05.313353: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 09:25:05.313472: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 09:25:05.313605: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:25:05.313654: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:25:05.313754: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:25:05.313799: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:25:05.313869: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:25:05.313969: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:25:05.314071: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:25:05.314190: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:25:05.314239: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:25:05.314350: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:25:05.314398: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:25:05.314484: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:25:05.314527: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:25:05.314612: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:25:05.314651: Inverter 0 count register writes 0 2026-08-14 09:25:05.341469: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 09:25:05.341720: Recompute is saving previous plan... 2026-08-14 09:25:05.345532: Best charge window [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 0% ] 2026-08-14 09:25:05.357176: Best export window [ ] 2026-08-14 09:25:05.358499: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 09:25:05.363916: Load divergence over 8.0 hours mean 437.69W, min 247.2W, max 1439.4W, std dev 192.5W, divergence 21.99% 2026-08-14 09:25:05.401752: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 09:25:05.401899: LoadML is_calculating True 2026-08-14 09:25:05.401932: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 09:25:05.434382: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 09:25:05.438158: Optimise levels pass started at 2026-08-14 09:25:05 2026-08-14 09:25:05.438245: Optimise all windows, total charge 94 export 1 2026-08-14 09:25:07.407348: >> Region optimisation pass width 960 2026-08-14 09:25:08.472982: >> Region optimisation pass width 480 2026-08-14 09:25:09.258720: >> Region optimisation pass width 240 2026-08-14 09:25:10.634793: >> Region optimisation pass width 120 2026-08-14 09:25:13.688552: Calculated end_record as 08-15 13:00:00 based on best_price 22.25p, next_charge_start 08-14 13:00:00, max_windows 55 2026-08-14 09:25:13.689486: Optimise levels pass ended at 2026-08-14 09:25:13, duration 8.3 seconds tried 320 combinations 2026-08-14 09:25:13.689610: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1036.85p, best_keep 0kWh, best_cycle 49.04kWh, best_carbon 0kg, best_import 36.9kWh 2026-08-14 09:25:13.728553: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 09:25:13.737559: Best charge windows best_metric 735.74p, best_cost 757.5p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:25:13.737825: Best export windows best_metric 735.74p, best_cost 757.5p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:25:13.738101: Optimise price set 23.8p, pass trim_import, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 735.74p, best_cost 757.5p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:14.090853: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 735.48p, best_cost 757.19p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:14.717138: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 735.48p, best_cost 757.19p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:15.693980: Best charge windows best_metric 735.48p, best_cost 757.19p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:25:15.694358: Best export windows best_metric 735.48p, best_cost 757.19p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:25:15.695740: Best charge windows best_metric 735.48p, best_cost 757.19p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:25:15.695938: Best export windows best_metric 735.48p, best_cost 757.19p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:25:15.696043: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 735.48p, best_cost 757.19p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:16.784522: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 735.02p, best_cost 757.13p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:17.374052: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 735.01p, best_cost 757.13p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:18.179536: Best charge windows best_metric 735.01p, best_cost 757.13p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:25:18.179735: Best export windows best_metric 735.01p, best_cost 757.13p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:25:18.180907: Best charge windows best_metric 735.01p, best_cost 757.13p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:25:18.181129: Best export windows best_metric 735.01p, best_cost 757.13p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:25:18.181296: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 735.01p, best_cost 757.13p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:18.576587: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 735.01p, best_cost 757.13p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:18.836728: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 735.01p, best_cost 757.13p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:19.088827: Best charge windows best_metric 735.01p, best_cost 757.13p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:25:19.089020: Best export windows best_metric 735.01p, best_cost 757.13p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:25:19.089123: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 735.01p, best_cost 757.13p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:19.338594: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 735.01p, best_cost 757.13p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:19.465163: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 735.01p, best_cost 757.13p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:20.645295: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 735.01p, best_cost 757.13p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:21.008757: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 735.01p, best_cost 757.13p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:21.390044: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 735.01p, best_cost 757.13p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:21.684083: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 735.01p, best_cost 757.13p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:22.161456: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 735.01p, best_cost 757.13p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:22.688490: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 734.78p, best_cost 757.13p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:23.803774: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:24.078326: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:24.352478: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:24.671314: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:24.927539: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:25.201197: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:25.636967: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:25.912314: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:26.113589: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:26.456883: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:26.691016: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:27.029856: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:27.315080: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:27.508238: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:27.760116: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:28.067889: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:28.389389: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:28.634038: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:28.901347: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:29.168696: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:29.359793: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:29.693255: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:29.982615: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:30.237904: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:30.578117: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:30.822247: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:31.187908: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:31.394848: Best charge windows best_metric 734.68p, best_cost 757.11p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 22%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:25:31.395255: Best export windows best_metric 734.68p, best_cost 757.11p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:25:31.397781: Best charge windows best_metric 734.68p, best_cost 757.11p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 22%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:25:31.398103: Best export windows best_metric 734.68p, best_cost 757.11p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:25:31.398419: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:31.712613: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:31.972070: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:32.458899: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:33.014302: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:33.782507: Best charge windows best_metric 734.68p, best_cost 757.11p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 22%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:25:33.782855: Best export windows best_metric 734.68p, best_cost 757.11p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:25:33.783041: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:33.893307: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:33.965719: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:35.216454: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:35.391519: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:36.055353: Best charge windows best_metric 734.68p, best_cost 757.11p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 22%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:25:36.055612: Best export windows best_metric 734.68p, best_cost 757.11p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:25:36.057877: Best charge windows best_metric 734.68p, best_cost 757.11p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 22%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:25:36.058505: Best export windows best_metric 734.68p, best_cost 757.11p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:25:36.058847: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:36.535383: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:36.873684: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:37.310078: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:37.824649: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:38.002227: Best charge windows best_metric 734.68p, best_cost 757.11p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 22%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:25:38.002395: Best export windows best_metric 734.68p, best_cost 757.11p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:25:38.002516: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:38.100998: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:38.211410: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:39.326130: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:39.512859: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 734.68p, best_cost 757.11p, best_cycle 25.52kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:25:39.678858: Best charge windows best_metric 734.68p, best_cost 757.11p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 22%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] 2026-08-14 09:25:39.679209: Best export windows best_metric 734.68p, best_cost 757.11p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:25:39.679639: Tweak plan optimisation started 2026-08-14 09:25:41.049472: Tweak optimisation finished metric 734.68 cost 757.11 metric_keep 0 cycle 25.52 carbon 0 import 49.94 2026-08-14 09:25:41.074102: Swap charge optimisation started metric 734.68p, cost 757.11p, min_improvement_swap 0.1p 2026-08-14 09:25:47.693314: Swap charge optimisation finished metric 734.68p, cost 757.11p 2026-08-14 09:25:47.707134: Raw charge windows [ 14-08 09:00:00 - 14-08 09:30:00 @ 23.79p 0%, 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 22%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100% ] reserve 1.12 2026-08-14 09:25:47.707999: Unclipped charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:30:00 @ 21.73p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 09:30:00 @ 24.73p 100% ] reserve 1.12 2026-08-14 09:25:47.708510: Unfiltered charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:30:00 @ 21.73p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 09:30:00 @ 24.73p 100% ] reserve 1.12 2026-08-14 09:25:47.708930: Filtered charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 15:00:00 @ 21.9p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 09:30:00 @ 24.73p 100% ] reserve 1.12 2026-08-14 09:25:47.754469: Previous plan best metric is 736.11 (cost 812.86) and new plan best metric is 734.68 (cost 757.11) 2026-08-14 09:25:47.754931: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 09:25:47.755103: Plan valid is now true after recompute was False 2026-08-14 09:25:47.794328: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 897.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:20:00, load 29.63kWh, PV 0.0kWh 2026-08-14 09:25:47.948847: Battery has 0.92 hours left - now at 1.9kWh 2026-08-14 09:25:48.066296: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 925.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:20:00, load 30.63kWh, PV 0.0kWh 2026-08-14 09:25:48.205454: predict best10 end_record 08-15 13:00:00, final soc 3.06kWh, metric 877.89p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:20:00, load 30.63kWh, PV 0.0kWh 2026-08-14 09:25:48.407121: predict best end_record 08-15 13:00:00, final soc 3.45kWh, metric 862.85p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:20:00, load 29.63kWh, PV 0.0kWh 2026-08-14 09:25:48.407891: Saving plan best values to HA entities 2026-08-14 09:25:48.678051: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 09:25:48.686789: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 09:25:48.693262: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.04kWh, house 4.97kWh, export 0.0kWh, metric 862.85p, metric10 877.89p 2026-08-14 09:25:48.824158: Marginal costs baseline metric (no standing charge): 812.8642 2026-08-14 09:25:49.309679: Marginal energy costs matrix computed: min=21.75 max=37.43 2026-08-14 09:25:49.385191: Rate array import [{'start': 565, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2220, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 565, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 09:25:49.385747: - Your estimated bill for today is £6.82 and tomorrow is £7.00 2026-08-14 09:25:49.385792: - Import rates are cheap (21.7p - 24.7p) for the next 6 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 09:25:49.385811: - The battery is currently at 12% and is in eco mode for the next 3 hours. 2026-08-14 09:25:49.385826: - For the next 48 hours there will be no solar generation. 2026-08-14 09:25:49.385840: - You will run out of battery in 55 minutes. 2026-08-14 09:25:49.385853: - Your next charge slot will be in 3 hours where import rates will be cheap (22.2p). 2026-08-14 09:25:49.385878: 2026-08-14 09:25:49.440627: Plan calculation took 44.10 seconds 2026-08-14 09:25:49.440885: Inverter 0: Type SK Sunsynk 2026-08-14 09:25:49.440990: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 09:25:49.441215: Reserve min: 7%, battery_min: 7% 2026-08-14 09:25:49.441303: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 09:25:49.441560: Inverter 0 SoC: 1.99kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 1025W, current battery voltage 51.2V, grid power -56W, load power 1085W, PV Power 0W 2026-08-14 09:25:49.441722: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:25:49.441814: Inverter 0 scheduled charge enable is False 2026-08-14 09:25:49.441851: Inverter 0 charge windows currently [] 2026-08-14 09:25:49.441878: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 09:25:49.442015: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:25:49.442054: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:25:49.442089: Inverter 0 scheduled discharge enable is False 2026-08-14 09:25:49.442254: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:25:49.442341: Inverter 0 discharge windows currently [] 2026-08-14 09:25:49.442371: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:25:49.442400: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:25:49.442418: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:25:49.572439: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 09:25:49.572618: Inverter 0 disabled charge window while waiting for schedule (now 08-14 09:25:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 09:25:49.572706: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:25:49.572930: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:25:49.573053: No export window planned 2026-08-14 09:25:49.573180: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 09:25:49.573226: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:25:49.573417: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:25:49.573601: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 09:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 09:25:49.573663: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 09:25:49.573729: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 09:25:49.573821: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:25:49.573872: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:25:49.573917: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:25:49.573953: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:25:49.573997: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:25:49.574031: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:25:49.574075: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:25:49.574148: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:25:49.574194: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:25:49.574238: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:25:49.574288: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:25:49.574336: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:25:49.574372: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:25:49.574414: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:25:49.574472: Inverter 0 count register writes 0 2026-08-14 09:25:49.614977: Total inverter register writes now 806 2026-08-14 09:25:49.666525: Info: Completed run status Demand 2026-08-14 09:25:49.675671: Info: record_status Demand 2026-08-14 09:25:49.685090: Saved current settings to /config/predbat_config.json 2026-08-14 09:25:49.685334: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 09:25:51.343722: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0102 val_mae=0.0027 kWh val_bias=-0.0007 kWh (-1.1%) combined=0.0015 kWh ema_combined=0.0016 kWh 2026-08-14 09:26:05.500552: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0095 val_mae=0.0025 kWh val_bias=+0.0004 kWh (+0.7%) combined=0.0017 kWh ema_combined=0.0016 kWh 2026-08-14 09:26:19.581981: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0108 val_mae=0.0025 kWh val_bias=+0.0008 kWh (+1.5%) combined=0.0023 kWh ema_combined=0.0018 kWh 2026-08-14 09:26:23.815111: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:26:23.815531: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:26:23.815581: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:26:23.815785: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:26:23.815833: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:26:23.815897: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:26:23.815963: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:26:32.858476: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0103 val_mae=0.0021 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0012 kWh ema_combined=0.0016 kWh 2026-08-14 09:26:46.459819: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0088 val_mae=0.0023 kWh val_bias=-0.0009 kWh (-1.5%) combined=0.0016 kWh ema_combined=0.0016 kWh 2026-08-14 09:27:00.386956: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0076 val_mae=0.0021 kWh val_bias=+0.0006 kWh (+1.1%) combined=0.0017 kWh ema_combined=0.0016 kWh 2026-08-14 09:27:14.118974: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0072 val_mae=0.0021 kWh val_bias=-0.0007 kWh (-1.2%) combined=0.0016 kWh ema_combined=0.0016 kWh 2026-08-14 09:27:27.607459: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0064 val_mae=0.0024 kWh val_bias=-0.0004 kWh (-0.7%) combined=0.0015 kWh ema_combined=0.0016 kWh 2026-08-14 09:27:41.767327: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0069 val_mae=0.0019 kWh val_bias=-0.0007 kWh (-1.2%) combined=0.0013 kWh ema_combined=0.0015 kWh 2026-08-14 09:27:55.657724: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0067 val_mae=0.0019 kWh val_bias=-0.0006 kWh (-1.1%) combined=0.0014 kWh ema_combined=0.0015 kWh 2026-08-14 09:28:09.780786: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0066 val_mae=0.0018 kWh val_bias=+0.0001 kWh (+0.1%) combined=0.0012 kWh ema_combined=0.0014 kWh 2026-08-14 09:28:23.835150: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0064 val_mae=0.0018 kWh val_bias=-0.0002 kWh (-0.4%) combined=0.0009 kWh ema_combined=0.0013 kWh 2026-08-14 09:28:24.172126: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:28:24.172656: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:28:24.172734: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:28:24.173320: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:28:24.173426: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:28:24.173477: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:28:24.173563: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:28:38.616787: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0061 val_mae=0.0018 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0010 kWh ema_combined=0.0012 kWh 2026-08-14 09:28:50.976344: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0053 val_mae=0.0017 kWh val_bias=-0.0003 kWh (-0.6%) combined=0.0010 kWh ema_combined=0.0011 kWh 2026-08-14 09:29:07.425452: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0053 val_mae=0.0016 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0010 kWh ema_combined=0.0011 kWh 2026-08-14 09:29:20.735428: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0056 val_mae=0.0015 kWh val_bias=-0.0002 kWh (-0.4%) combined=0.0010 kWh ema_combined=0.0010 kWh 2026-08-14 09:29:32.419641: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0056 val_mae=0.0016 kWh val_bias=-0.0002 kWh (-0.3%) combined=0.0010 kWh ema_combined=0.0010 kWh 2026-08-14 09:29:45.234999: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0051 val_mae=0.0016 kWh val_bias=-0.0004 kWh (-0.7%) combined=0.0012 kWh ema_combined=0.0011 kWh 2026-08-14 09:29:58.755112: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0056 val_mae=0.0015 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0010 kWh ema_combined=0.0010 kWh 2026-08-14 09:30:00.500288: --------------- PredBat - update at 2026-08-14 09:30:00+01:00 with clock skew 0 minutes, minutes now 570 2026-08-14 09:30:00.501804: Saved current settings to /config/predbat_config.json 2026-08-14 09:30:00.502131: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 120.0 minutes 2026-08-14 09:30:00.502447: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 09:30:00.502701: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 09:30:00.551030: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 09:30:00.551412: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 09:30:00.552596: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 09:30:00.552870: Predbat mode is set to Control charge & discharge 2026-08-14 09:30:00.867594: Found 21602 load_today datapoints going back 28 days 2026-08-14 09:30:00.867856: Using load_power data to fill gaps in load_today data 2026-08-14 09:30:02.273118: Processing 721 30-minute periods for power integration 2026-08-14 09:30:02.539418: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 09:30:02.539589: Car charging hold False, threshold 6.0kWh 2026-08-14 09:30:02.539645: Current data so far today: load 8.75kWh, import 9.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 09:30:02.562656: Cars: SoC: [15.822000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 09:30:02.563899: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 09:30:02.564110: Standing charge is set to 49.98p 2026-08-14 09:30:02.701968: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 09:30:02.702261: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 09:30:03.065999: Loaded 47 datapoints of futurerate analysis 2026-08-14 09:30:03.214151: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 09:30:03.273510: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 09:30:03.278957: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 09:30:03.279338: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 09:30:03.319850: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 09:30:03.320074: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 09:30:03.321291: High export rate found rates in range 99p to -99p 2026-08-14 09:30:03.424203: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 09:30:03.424386: Car 0 charging is not planned as it is not plugged in 2026-08-14 09:30:03.455457: Battery level now 1.9kWh, -1hr ago 1.76kWh, at midnight 2.43kWh, battery value change in the last hour 3.17p, change today -12.49p, rate_forward 23.31p 2026-08-14 09:30:03.455880: Last hour: net energy 0.83kWh, import 0.83kWh, export 0.0kWh, car 0kWh, load 0.62kWh, net cost 19.74p, import 19.74p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 09:30:03.565347: Today's energy total net 9.4kWh, import 9.4kWh, export 0.0kWh, cost 286.94p, import 236.95p, export 0.0p, carbon 0.0kg 2026-08-14 09:30:03.565515: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 09:30:03.706356: Using weighted-bucket historical load forecast over 14 days 2026-08-14 09:30:03.750654: Today's load divergence 114.87%, in-day adjustment 133.87%, damping 0.95x, yesterday 146.81% today 114.13% blend 60.42% 2026-08-14 09:30:03.751421: Today's predicted so far 3.66kWh with 0.0kWh car/iBoost excluded, 1.5kWh import ignored, and 5.16kWh forecast extra. 2026-08-14 09:30:03.751551: Today's actual load so far 5.86kWh with 0.0kWh car/iBoost excluded, and 2.93kWh import ignored. 2026-08-14 09:30:03.850625: Inverter 0: Type SK Sunsynk 2026-08-14 09:30:03.850744: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 09:30:03.851009: Reserve min: 7%, battery_min: 7% 2026-08-14 09:30:03.851090: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 09:30:03.851441: Inverter 0 SoC: 1.99kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 4138W, current battery voltage 51.2V, grid power -57W, load power 4100W, PV Power 0W 2026-08-14 09:30:03.851647: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:30:03.851751: Inverter 0 scheduled charge enable is False 2026-08-14 09:30:03.851784: Inverter 0 charge windows currently [] 2026-08-14 09:30:03.851816: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 09:30:03.851940: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:30:03.851972: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:30:03.852014: Inverter 0 scheduled discharge enable is False 2026-08-14 09:30:03.852160: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:30:03.852194: Inverter 0 discharge windows currently [] 2026-08-14 09:30:03.852221: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:30:03.852245: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:30:03.852286: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:30:04.009670: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 09:30:04.009842: Plan was last updated on 2026-08-14 09:25:00+01:00 and is now 5.0 minutes old 2026-08-14 09:30:04.010184: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 09:30:04.010228: Best export window [ ] 2026-08-14 09:30:04.011533: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 09:30:04.017073: Load divergence over 8.0 hours mean 436.19W, min 239.4W, max 1403.4W, std dev 186.15W, divergence 21.34% 2026-08-14 09:30:04.097015: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 09:30:04.097163: LoadML is_calculating True 2026-08-14 09:30:04.097196: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 09:30:04.163173: predict base end_record 08-15 13:05:00, final soc 1.12kWh, metric 907.31p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:30:00, load 29.52kWh, PV 0.0kWh 2026-08-14 09:30:04.517095: Battery has 1.0 hours left - now at 1.99kWh 2026-08-14 09:30:04.627916: predict base10 end_record 08-15 13:05:00, final soc 1.12kWh, metric 935.36p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:25:00, load 30.51kWh, PV 0.0kWh 2026-08-14 09:30:04.881757: predict best10 end_record 08-15 13:05:00, final soc 3.38kWh, metric 895.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:25:00, load 30.51kWh, PV 0.0kWh 2026-08-14 09:30:05.086992: predict best end_record 08-15 13:05:00, final soc 3.84kWh, metric 882.49p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:30:00, load 29.52kWh, PV 0.0kWh 2026-08-14 09:30:05.088014: Saving plan best values to HA entities 2026-08-14 09:30:05.548347: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 09:30:05.568772: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 09:30:05.576499: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 42.94kWh, house 4.84kWh, export 0.0kWh, metric 882.49p, metric10 895.9p 2026-08-14 09:30:05.715388: Marginal costs baseline metric (no standing charge): 832.5108 2026-08-14 09:30:06.161905: Marginal energy costs matrix computed: min=21.73 max=37.75 2026-08-14 09:30:06.380927: Rate array import [{'start': 570, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2225, 'rate': 'cheap', 'range': '(21.9p - 32.0p)'}] export [{'start': 570, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 09:30:06.382472: - Your estimated bill for today is £6.92 and tomorrow is £6.97 2026-08-14 09:30:06.382557: - Import rates are cheap (21.7p - 24.7p) for the next 6 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 09:30:06.382598: - The battery is currently at 12% and is in eco mode for the next 3 hours. 2026-08-14 09:30:06.382631: - For the next 48 hours there will be no solar generation. 2026-08-14 09:30:06.382674: - You will run out of battery in 1 hour. 2026-08-14 09:30:06.382707: - Your next charge slot will be in 3 hours where import rates will be cheap (22.2p). 2026-08-14 09:30:06.382737: 2026-08-14 09:30:06.454150: Plan calculation took 2.44 seconds 2026-08-14 09:30:06.459586: No high rate period found 2026-08-14 09:30:06.573628: Import threshold used for optimisation was 24.8p 2026-08-14 09:30:06.722998: Low import rate windows [0: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 1: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 2: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 3: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 4: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 5: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 6: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 7: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 8: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 9: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 10: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 11: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 12: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 13: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 14: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 15: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 16: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 17: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 18: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 19: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 20: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 21: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 22: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 23: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 24: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 25: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 26: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 27: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 28: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 29: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 30: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 31: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 32: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 33: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 34: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 35: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 36: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 37: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 38: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 39: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 40: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 41: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 42: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 43: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 44: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 45: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 46: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 47: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 48: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 49: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 50: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 51: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 52: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 53: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 54: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 55: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 56: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 57: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 58: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 59: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 60: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 61: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 62: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 63: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 64: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 65: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 66: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 67: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 68: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 69: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 70: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 71: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 72: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 73: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 74: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 75: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 76: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 77: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 78: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 79: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 80: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 81: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 82: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 83: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 84: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 85: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 86: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 87: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 88: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 89: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 90: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 91: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84, 92: 08-16 08:30:00 - 08-16 09:00:00 @ 24.56, 93: 08-16 09:00:00 - 08-16 09:30:00 @ 23.79] 2026-08-14 09:30:06.740418: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 09:30:06.740810: Inverter 0 disabled charge window while waiting for schedule (now 08-14 09:30:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 09:30:06.741059: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:30:06.741451: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:30:06.741642: No export window planned 2026-08-14 09:30:06.741890: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 09:30:06.742107: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:30:06.742579: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:30:06.742965: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 09:30:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 09:30:06.743131: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 09:30:06.743297: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 09:30:06.743489: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:30:06.743681: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:30:06.743911: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:30:06.744113: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:30:06.744335: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:30:06.744489: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:30:06.744694: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:30:06.744878: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:30:06.745035: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:30:06.745166: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:30:06.745313: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:30:06.745532: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:30:06.745745: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:30:06.745952: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:30:06.746140: Inverter 0 count register writes 0 2026-08-14 09:30:06.791034: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 09:30:06.801092: Total inverter register writes now 806 2026-08-14 09:30:06.873103: Info: Completed run status Demand 2026-08-14 09:30:06.888221: Info: record_status Demand 2026-08-14 09:30:06.898914: Saved current settings to /config/predbat_config.json 2026-08-14 09:30:06.899181: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 09:30:26.574369: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0053 val_mae=0.0015 kWh val_bias=+0.0000 kWh (+0.1%) combined=0.0008 kWh ema_combined=0.0010 kWh 2026-08-14 09:30:39.068126: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:30:39.068513: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:30:39.068585: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:30:39.069072: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:30:39.069284: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:30:39.069349: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:30:39.069416: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:30:41.118590: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0053 val_mae=0.0015 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0008 kWh ema_combined=0.0009 kWh 2026-08-14 09:30:55.142562: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0050 val_mae=0.0016 kWh val_bias=+0.0000 kWh (+0.1%) combined=0.0010 kWh ema_combined=0.0009 kWh 2026-08-14 09:31:08.884050: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0052 val_mae=0.0015 kWh val_bias=-0.0002 kWh (-0.3%) combined=0.0008 kWh ema_combined=0.0009 kWh 2026-08-14 09:31:08.889142: ML Predictor: Restored best weights from epoch with val_mae=0.0015 kWh val_bias=-0.0002 kWh (-0.3%) 2026-08-14 09:31:08.889445: ML Predictor: Training complete, final val_mae=0.0015 kWh val_bias=-0.0002 kWh (-0.3%) 2026-08-14 09:31:09.893662: ML Predictor: AR rollout over holdout: ar_mae=0.0016 kWh ar_bias=-0.0001 kWh (-0.3%) [drift vs teacher-forced: +0.0001 kWh] 2026-08-14 09:31:09.902703: ML Predictor: Curriculum pass 2/5 complete, val_mae=0.0015 kWh 2026-08-14 09:31:09.983366: ML Predictor: Curriculum pass 3/5: window=54.0 days (1296 hours of data) 2026-08-14 09:31:09.983616: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 09:31:10.664135: ML Predictor: Creating dataset with 1296 hours of training data, 48 hours validation 2026-08-14 09:31:15.624748: ML Predictor: Created 15264 training samples, 576 validation samples 2026-08-14 09:31:15.676531: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0588 std=0.0471) load(mean=0.0587 std=0.0469) pv(mean=0.0000 std=0.0100) temp(mean=19.5216 std=4.4095) import_rate(mean=24.2370 std=1.9772) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1931 std=0.5224) 2026-08-14 09:31:15.760248: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 09:31:15.777414: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 09:31:15.803779: ML Predictor: Baseline (pre-finetune) val_mae=0.0027 kWh val_bias=-0.0003 kWh 2026-08-14 09:31:29.514145: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0081 val_mae=0.0032 kWh val_bias=-0.0012 kWh (-2.2%) combined=0.0027 kWh ema_combined=0.0027 kWh 2026-08-14 09:31:43.104049: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0091 val_mae=0.0030 kWh val_bias=-0.0013 kWh (-2.5%) combined=0.0029 kWh ema_combined=0.0027 kWh 2026-08-14 09:31:55.706396: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0091 val_mae=0.0031 kWh val_bias=-0.0016 kWh (-3.0%) combined=0.0024 kWh ema_combined=0.0026 kWh 2026-08-14 09:32:08.521647: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0122 val_mae=0.0034 kWh val_bias=-0.0012 kWh (-2.3%) combined=0.0021 kWh ema_combined=0.0025 kWh 2026-08-14 09:32:22.265914: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0105 val_mae=0.0026 kWh val_bias=-0.0002 kWh (-0.5%) combined=0.0015 kWh ema_combined=0.0022 kWh 2026-08-14 09:32:37.658679: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0084 val_mae=0.0025 kWh val_bias=-0.0004 kWh (-0.8%) combined=0.0016 kWh ema_combined=0.0020 kWh 2026-08-14 09:32:39.187638: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:32:39.187988: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:32:39.188086: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:32:39.188325: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:32:39.188390: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:32:39.188429: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:32:39.188463: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:32:52.263994: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0091 val_mae=0.0029 kWh val_bias=-0.0000 kWh (-0.0%) combined=0.0015 kWh ema_combined=0.0019 kWh 2026-08-14 09:33:05.707596: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0086 val_mae=0.0029 kWh val_bias=-0.0007 kWh (-1.4%) combined=0.0017 kWh ema_combined=0.0018 kWh 2026-08-14 09:33:17.997421: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0096 val_mae=0.0026 kWh val_bias=-0.0004 kWh (-0.7%) combined=0.0017 kWh ema_combined=0.0018 kWh 2026-08-14 09:33:30.553624: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0089 val_mae=0.0026 kWh val_bias=+0.0006 kWh (+1.2%) combined=0.0020 kWh ema_combined=0.0018 kWh 2026-08-14 09:33:30.553768: ML Predictor: Early stopping at epoch 10 2026-08-14 09:33:30.554518: ML Predictor: Restored best weights from epoch with val_mae=0.0027 kWh val_bias=-0.0003 kWh (-0.6%) 2026-08-14 09:33:30.554666: ML Predictor: Training complete, final val_mae=0.0027 kWh val_bias=-0.0003 kWh (-0.6%) 2026-08-14 09:33:31.952053: ML Predictor: AR rollout over holdout: ar_mae=0.0035 kWh ar_bias=-0.0005 kWh (-0.9%) [drift vs teacher-forced: +0.0007 kWh] 2026-08-14 09:33:31.958856: ML Predictor: Curriculum pass 3/5 complete, val_mae=0.0027 kWh 2026-08-14 09:33:32.059873: ML Predictor: Curriculum pass 4/5: window=55.0 days (1320 hours of data) 2026-08-14 09:33:32.060148: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 09:33:32.659998: ML Predictor: Creating dataset with 1320 hours of training data, 48 hours validation 2026-08-14 09:33:37.885017: ML Predictor: Created 15552 training samples, 576 validation samples 2026-08-14 09:33:37.937663: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0588 std=0.0471) load(mean=0.0587 std=0.0469) pv(mean=0.0000 std=0.0100) temp(mean=19.5286 std=4.4159) import_rate(mean=24.2381 std=1.9725) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1926 std=0.5227) 2026-08-14 09:33:38.023007: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 09:33:38.039748: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 09:33:38.066463: ML Predictor: Baseline (pre-finetune) val_mae=0.0055 kWh val_bias=-0.0019 kWh 2026-08-14 09:33:50.848460: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0089 val_mae=0.0042 kWh val_bias=+0.0001 kWh (+0.1%) combined=0.0023 kWh ema_combined=0.0023 kWh 2026-08-14 09:34:05.481078: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0099 val_mae=0.0044 kWh val_bias=+0.0000 kWh (+0.0%) combined=0.0025 kWh ema_combined=0.0023 kWh 2026-08-14 09:34:20.011153: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0115 val_mae=0.0043 kWh val_bias=-0.0005 kWh (-0.8%) combined=0.0021 kWh ema_combined=0.0023 kWh 2026-08-14 09:34:36.250129: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0131 val_mae=0.0045 kWh val_bias=-0.0022 kWh (-3.1%) combined=0.0035 kWh ema_combined=0.0026 kWh 2026-08-14 09:34:52.509518: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0119 val_mae=0.0047 kWh val_bias=-0.0012 kWh (-1.7%) combined=0.0030 kWh ema_combined=0.0027 kWh 2026-08-14 09:34:54.120313: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:34:54.120536: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:34:54.120578: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:34:54.120755: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:34:54.120817: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:34:54.120836: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:34:54.120992: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:35:00.413844: --------------- PredBat - update at 2026-08-14 09:35:00+01:00 with clock skew 0 minutes, minutes now 575 2026-08-14 09:35:00.414691: Saved current settings to /config/predbat_config.json 2026-08-14 09:35:00.830861: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 09:35:00.831048: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 09:35:00.869082: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 09:35:00.869440: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 09:35:00.870375: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 09:35:00.870515: Predbat mode is set to Control charge & discharge 2026-08-14 09:35:01.342296: Found 21602 load_today datapoints going back 28 days 2026-08-14 09:35:01.342541: Using load_power data to fill gaps in load_today data 2026-08-14 09:35:02.559795: Processing 721 30-minute periods for power integration 2026-08-14 09:35:02.872637: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 09:35:02.873036: Car charging hold False, threshold 6.0kWh 2026-08-14 09:35:02.873583: Current data so far today: load 8.8kWh, import 9.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 09:35:02.885906: Cars: SoC: [15.822000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 09:35:02.886791: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 09:35:02.886962: Standing charge is set to 49.98p 2026-08-14 09:35:02.933416: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 09:35:02.933665: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 09:35:02.933969: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 5.0 minutes 2026-08-14 09:35:02.934565: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 5.0 minutes 2026-08-14 09:35:02.938999: Loaded 47 datapoints of futurerate analysis 2026-08-14 09:35:03.096919: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 09:35:03.163733: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 09:35:03.169279: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 09:35:03.169691: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 09:35:03.207549: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 09:35:03.208639: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 09:35:03.211349: High export rate found rates in range 99p to -99p 2026-08-14 09:35:03.348026: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 09:35:03.348170: Car 0 charging is not planned as it is not plugged in 2026-08-14 09:35:03.368358: Battery level now 1.99kWh, -1hr ago 1.76kWh, at midnight 2.43kWh, battery value change in the last hour 5.41p, change today -10.26p, rate_forward 23.31p 2026-08-14 09:35:03.369176: Last hour: net energy 0.8kWh, import 0.8kWh, export 0.0kWh, car 0kWh, load 0.65kWh, net cost 19.13p, import 19.13p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 09:35:03.479477: Today's energy total net 9.4kWh, import 9.4kWh, export 0.0kWh, cost 286.94p, import 236.95p, export 0.0p, carbon 0.0kg 2026-08-14 09:35:03.479902: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 09:35:03.703446: Using weighted-bucket historical load forecast over 14 days 2026-08-14 09:35:03.728887: Today's load divergence 114.7%, in-day adjustment 133.7%, damping 0.95x, yesterday 146.81% today 113.97% blend 60.07% 2026-08-14 09:35:03.729103: Today's predicted so far 3.72kWh with 0.0kWh car/iBoost excluded, 1.51kWh import ignored, and 5.23kWh forecast extra. 2026-08-14 09:35:03.729156: Today's actual load so far 5.89kWh with 0.0kWh car/iBoost excluded, and 3.04kWh import ignored. 2026-08-14 09:35:03.792049: Inverter 0: Type SK Sunsynk 2026-08-14 09:35:03.792165: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 09:35:03.792435: Reserve min: 7%, battery_min: 7% 2026-08-14 09:35:03.792551: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 09:35:03.792879: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 1078W, current battery voltage 51.2V, grid power -53W, load power 1128W, PV Power 0W 2026-08-14 09:35:03.793096: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:35:03.793214: Inverter 0 scheduled charge enable is False 2026-08-14 09:35:03.793276: Inverter 0 charge windows currently [] 2026-08-14 09:35:03.793313: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 09:35:03.793610: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:35:03.793783: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:35:03.793971: Inverter 0 scheduled discharge enable is False 2026-08-14 09:35:03.794289: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:35:03.794452: Inverter 0 discharge windows currently [] 2026-08-14 09:35:03.794608: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:35:03.794746: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:35:03.794877: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:35:03.945561: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 09:35:03.945726: Plan was last updated on 2026-08-14 09:25:00+01:00 and is now 10.0 minutes old 2026-08-14 09:35:03.946392: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 09:35:03.946459: Best export window [ ] 2026-08-14 09:35:03.947562: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 09:35:03.953727: Load divergence over 8.0 hours mean 434.64W, min 230.4W, max 1260.0W, std dev 184.49W, divergence 21.22% 2026-08-14 09:35:04.029036: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 09:35:04.029226: LoadML is_calculating True 2026-08-14 09:35:04.029279: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 09:35:04.076539: predict base end_record 08-15 13:10:00, final soc 1.12kWh, metric 912.05p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 29.56kWh, PV 0.0kWh 2026-08-14 09:35:04.265751: Battery has 0.67 hours left - now at 1.76kWh 2026-08-14 09:35:04.365891: predict base10 end_record 08-15 13:10:00, final soc 1.12kWh, metric 940.13p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 30.55kWh, PV 0.0kWh 2026-08-14 09:35:04.549890: predict best10 end_record 08-15 13:10:00, final soc 3.71kWh, metric 908.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 30.55kWh, PV 0.0kWh 2026-08-14 09:35:04.693470: predict best end_record 08-15 13:10:00, final soc 4.22kWh, metric 896.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 29.56kWh, PV 0.0kWh 2026-08-14 09:35:04.693723: Saving plan best values to HA entities 2026-08-14 09:35:05.121425: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 09:35:05.128175: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 09:35:05.146636: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 42.93kWh, house 5.0kWh, export 0.0kWh, metric 896.47p, metric10 908.39p 2026-08-14 09:35:05.357874: Marginal costs baseline metric (no standing charge): 846.4901 2026-08-14 09:35:05.784665: Marginal energy costs matrix computed: min=21.76 max=38.26 2026-08-14 09:35:06.016550: Rate array import [{'start': 575, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2230, 'rate': 'cheap', 'range': '(21.9p - 32.0p)'}] export [{'start': 575, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 09:35:06.017697: - Your estimated bill for today is £6.96 and tomorrow is £6.95 2026-08-14 09:35:06.033034: - Import rates are cheap (21.7p - 24.7p) for the next 6 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 09:35:06.033363: - The battery is currently at 11% and is in eco mode for the next 2 hours. 2026-08-14 09:35:06.033547: - For the next 48 hours there will be no solar generation. 2026-08-14 09:35:06.033724: - You will run out of battery in 40 minutes. 2026-08-14 09:35:06.033938: - Your next charge slot will be in 2 hours where import rates will be cheap (22.2p). 2026-08-14 09:35:06.034104: 2026-08-14 09:35:06.098173: Plan calculation took 2.15 seconds 2026-08-14 09:35:06.105086: No high rate period found 2026-08-14 09:35:06.191942: Import threshold used for optimisation was 24.8p 2026-08-14 09:35:06.283398: Low import rate windows [0: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 1: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 2: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 3: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 4: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 5: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 6: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 7: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 8: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 9: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 10: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 11: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 12: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 13: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 14: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 15: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 16: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 17: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 18: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 19: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 20: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 21: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 22: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 23: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 24: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 25: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 26: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 27: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 28: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 29: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 30: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 31: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 32: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 33: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 34: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 35: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 36: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 37: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 38: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 39: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 40: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 41: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 42: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 43: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 44: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 45: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 46: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 47: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 48: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 49: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 50: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 51: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 52: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 53: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 54: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 55: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 56: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 57: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 58: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 59: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 60: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 61: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 62: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 63: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 64: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 65: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 66: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 67: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 68: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 69: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 70: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 71: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 72: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 73: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 74: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 75: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 76: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 77: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 78: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 79: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 80: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 81: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 82: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 83: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 84: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 85: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 86: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 87: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 88: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 89: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 90: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 91: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84, 92: 08-16 08:30:00 - 08-16 09:00:00 @ 24.56, 93: 08-16 09:00:00 - 08-16 09:30:00 @ 23.79, 94: 08-16 09:30:00 - 08-16 10:00:00 @ 24.72] 2026-08-14 09:35:06.299043: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 09:35:06.299436: Inverter 0 disabled charge window while waiting for schedule (now 08-14 09:35:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 09:35:06.299647: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:35:06.300018: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:35:06.300219: No export window planned 2026-08-14 09:35:06.300486: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 09:35:06.300631: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:35:06.300930: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:35:06.301330: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 09:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 09:35:06.301498: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 09:35:06.301663: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 09:35:06.301870: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:35:06.302024: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:35:06.302167: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:35:06.302327: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:35:06.302471: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:35:06.302610: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:35:06.302746: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:35:06.302933: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:35:06.303079: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:35:06.303218: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:35:06.303376: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:35:06.303515: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:35:06.303650: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:35:06.303787: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:35:06.303915: Inverter 0 count register writes 0 2026-08-14 09:35:06.329893: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 09:35:06.330312: Recompute is saving previous plan... 2026-08-14 09:35:06.335157: Best charge window [ 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 0% ] 2026-08-14 09:35:06.335401: Best export window [ ] 2026-08-14 09:35:06.336800: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 09:35:06.341600: Load divergence over 8.0 hours mean 434.64W, min 230.4W, max 1260.0W, std dev 184.49W, divergence 21.22% 2026-08-14 09:35:06.360381: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 09:35:06.360686: LoadML is_calculating True 2026-08-14 09:35:06.360827: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 09:35:06.374513: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 09:35:06.376351: Optimise levels pass started at 2026-08-14 09:35:06 2026-08-14 09:35:06.376518: Optimise all windows, total charge 94 export 1 2026-08-14 09:35:08.404243: >> Region optimisation pass width 960 2026-08-14 09:35:09.446610: >> Region optimisation pass width 480 2026-08-14 09:35:10.510204: >> Region optimisation pass width 240 2026-08-14 09:35:13.528198: >> Region optimisation pass width 120 2026-08-14 09:35:17.824021: Calculated end_record as 08-15 12:30:00 based on best_price 22.25p, next_charge_start 08-14 12:30:00, max_windows 53 2026-08-14 09:35:17.824157: Optimise levels pass ended at 2026-08-14 09:35:17, duration 11.4 seconds tried 378 combinations 2026-08-14 09:35:17.824211: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1050.59p, best_keep 0kWh, best_cycle 48.97kWh, best_carbon 0kg, best_import 36.82kWh 2026-08-14 09:35:17.872032: Starting detailed optimisation end_record 08-15 12:30:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 09:35:17.873450: Best charge windows best_metric 738.79p, best_cost 761.14p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:35:17.873644: Best export windows best_metric 738.79p, best_cost 761.14p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:35:17.873748: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 738.79p, best_cost 761.14p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:18.457548: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 738.69p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:19.115826: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 738.69p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:20.048972: Best charge windows best_metric 738.69p, best_cost 761.01p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:35:20.049309: Best export windows best_metric 738.69p, best_cost 761.01p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:35:20.051332: Best charge windows best_metric 738.69p, best_cost 761.01p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:35:20.051533: Best export windows best_metric 738.69p, best_cost 761.01p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:35:20.051765: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 738.69p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:21.144766: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 738.69p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:21.254463: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 738.69p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:22.108760: Best charge windows best_metric 738.69p, best_cost 761.01p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:35:22.109056: Best export windows best_metric 738.69p, best_cost 761.01p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:35:22.111666: Best charge windows best_metric 738.69p, best_cost 761.01p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:35:22.112038: Best export windows best_metric 738.69p, best_cost 761.01p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:35:22.112345: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 738.69p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:22.623833: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 738.69p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:22.906654: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 738.69p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:23.123991: Best charge windows best_metric 738.69p, best_cost 761.01p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:35:23.124374: Best export windows best_metric 738.69p, best_cost 761.01p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:35:23.124455: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 738.69p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:23.455570: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 738.69p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:23.561240: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 738.69p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:24.389347: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 738.69p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:24.875784: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 738.69p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:25.257171: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 738.69p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:25.416446: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 738.69p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:25.822935: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 738.69p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:26.381379: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 738.54p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:27.499520: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:27.703489: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:28.034757: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:28.289929: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:28.553810: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:28.838484: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:29.378082: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:29.671137: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:29.894344: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:30.129064: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:30.513964: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:30.759810: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:31.044677: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:31.271084: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:31.620092: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:31.969465: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:32.198451: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:32.540470: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:32.776553: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:33.035834: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:33.212479: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:33.506234: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:33.763834: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:34.109744: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:34.327240: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:34.659121: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:34.805672: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:35.150688: Best charge windows best_metric 738.45p, best_cost 761.01p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:35:35.150859: Best export windows best_metric 738.45p, best_cost 761.01p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:35:35.152453: Best charge windows best_metric 738.45p, best_cost 761.01p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:35:35.152782: Best export windows best_metric 738.45p, best_cost 761.01p, best_carbon 0kg, best_import 49.94kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:35:35.152897: Optimise price set 26.6p, pass trim_import, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:35.197360: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:35.489702: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:36.098863: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 738.45p, best_cost 761.01p, best_cycle 25.39kWh, best_carbon 0kg, best_import 49.94kWh 2026-08-14 09:35:36.665282: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 738.3p, best_cost 760.75p, best_cycle 24.39kWh, best_carbon 0kg, best_import 49.87kWh 2026-08-14 09:35:37.483142: Best charge windows best_metric 738.3p, best_cost 760.75p, best_carbon 0kg, best_import 49.87kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:35:37.483368: Best export windows best_metric 738.3p, best_cost 760.75p, best_carbon 0kg, best_import 49.87kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:35:37.483544: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 738.3p, best_cost 760.75p, best_cycle 24.39kWh, best_carbon 0kg, best_import 49.87kWh 2026-08-14 09:35:37.842613: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 738.3p, best_cost 760.75p, best_cycle 24.39kWh, best_carbon 0kg, best_import 49.87kWh 2026-08-14 09:35:38.141608: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 738.3p, best_cost 760.75p, best_cycle 24.39kWh, best_carbon 0kg, best_import 49.87kWh 2026-08-14 09:35:39.548398: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 738.3p, best_cost 760.75p, best_cycle 24.39kWh, best_carbon 0kg, best_import 49.87kWh 2026-08-14 09:35:39.957184: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 738.3p, best_cost 760.75p, best_cycle 24.39kWh, best_carbon 0kg, best_import 49.87kWh 2026-08-14 09:35:40.170572: Best charge windows best_metric 738.3p, best_cost 760.75p, best_carbon 0kg, best_import 49.87kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:35:40.170896: Best export windows best_metric 738.3p, best_cost 760.75p, best_carbon 0kg, best_import 49.87kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:35:40.172463: Best charge windows best_metric 738.3p, best_cost 760.75p, best_carbon 0kg, best_import 49.87kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:35:40.172553: Best export windows best_metric 738.3p, best_cost 760.75p, best_carbon 0kg, best_import 49.87kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:35:40.172653: Optimise price set 26.6p, pass trim_import, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 738.3p, best_cost 760.75p, best_cycle 24.39kWh, best_carbon 0kg, best_import 49.87kWh 2026-08-14 09:35:40.541342: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 738.3p, best_cost 760.75p, best_cycle 24.39kWh, best_carbon 0kg, best_import 49.87kWh 2026-08-14 09:35:40.767487: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 738.3p, best_cost 760.75p, best_cycle 24.39kWh, best_carbon 0kg, best_import 49.87kWh 2026-08-14 09:35:40.829676: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0128 val_mae=0.0045 kWh val_bias=-0.0004 kWh (-0.5%) combined=0.0024 kWh ema_combined=0.0026 kWh 2026-08-14 09:35:41.269520: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 738.3p, best_cost 760.75p, best_cycle 24.39kWh, best_carbon 0kg, best_import 49.87kWh 2026-08-14 09:35:41.821676: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 738.3p, best_cost 760.75p, best_cycle 24.39kWh, best_carbon 0kg, best_import 49.87kWh 2026-08-14 09:35:42.527018: Best charge windows best_metric 738.3p, best_cost 760.75p, best_carbon 0kg, best_import 49.87kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:35:42.527317: Best export windows best_metric 738.3p, best_cost 760.75p, best_carbon 0kg, best_import 49.87kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:35:42.527469: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 738.3p, best_cost 760.75p, best_cycle 24.39kWh, best_carbon 0kg, best_import 49.87kWh 2026-08-14 09:35:42.579928: Optimise price set 26.4p, pass normal, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 738.3p, best_cost 760.75p, best_cycle 24.39kWh, best_carbon 0kg, best_import 49.87kWh 2026-08-14 09:35:42.632995: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 738.3p, best_cost 760.75p, best_cycle 24.39kWh, best_carbon 0kg, best_import 49.87kWh 2026-08-14 09:35:43.539183: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 738.3p, best_cost 760.75p, best_cycle 24.39kWh, best_carbon 0kg, best_import 49.87kWh 2026-08-14 09:35:43.652851: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 738.3p, best_cost 760.75p, best_cycle 24.39kWh, best_carbon 0kg, best_import 49.87kWh 2026-08-14 09:35:43.895784: Best charge windows best_metric 738.3p, best_cost 760.75p, best_carbon 0kg, best_import 49.87kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:35:43.895959: Best export windows best_metric 738.3p, best_cost 760.75p, best_carbon 0kg, best_import 49.87kWh, metric_keep 0kWh, end_record 08-15 12:30:00, windows [ ] 2026-08-14 09:35:43.896192: Tweak plan optimisation started 2026-08-14 09:35:45.207659: Tweak optimisation finished metric 738.3 cost 760.75 metric_keep 0 cycle 24.39 carbon 0 import 49.87 2026-08-14 09:35:45.246228: Swap charge optimisation started metric 738.3p, cost 760.75p, min_improvement_swap 0.1p 2026-08-14 09:35:50.477703: Swap charge optimisation finished metric 738.3p, cost 760.75p 2026-08-14 09:35:50.491194: Raw charge windows [ 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 100%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 25%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] reserve 1.12 2026-08-14 09:35:50.492004: Unclipped charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 10:00:00 @ 24.73p 100% ] reserve 1.12 2026-08-14 09:35:50.492398: Unfiltered charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 10:00:00 @ 24.73p 100% ] reserve 1.12 2026-08-14 09:35:50.492678: Filtered charge windows [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 16:00:00 @ 22.13p 81%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 10:00:00 @ 24.73p 100% ] reserve 1.12 2026-08-14 09:35:50.531498: Previous plan best metric is 738.45 (cost 761.01) and new plan best metric is 738.3 (cost 760.75) 2026-08-14 09:35:50.531726: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 09:35:50.531931: Plan valid is now true after recompute was False 2026-08-14 09:35:50.558853: predict base end_record 08-15 12:30:00, final soc 1.12kWh, metric 900.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 29.03kWh, PV 0.0kWh 2026-08-14 09:35:50.758458: Battery has 0.67 hours left - now at 1.76kWh 2026-08-14 09:35:50.847302: predict base10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 927.77p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 29.99kWh, PV 0.0kWh 2026-08-14 09:35:50.945519: predict best10 end_record 08-15 12:30:00, final soc 1.12kWh, metric 834.63p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 29.99kWh, PV 0.0kWh 2026-08-14 09:35:51.059723: predict best end_record 08-15 12:30:00, final soc 1.12kWh, metric 811.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 29.03kWh, PV 0.0kWh 2026-08-14 09:35:51.060065: Saving plan best values to HA entities 2026-08-14 09:35:51.367728: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 09:35:51.395219: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 09:35:51.405958: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 42.93kWh, house 5.0kWh, export 0.0kWh, metric 811.0p, metric10 834.63p 2026-08-14 09:35:51.550870: Marginal costs baseline metric (no standing charge): 761.0129 2026-08-14 09:35:52.040089: Marginal energy costs matrix computed: min=21.76 max=38.26 2026-08-14 09:35:52.202221: Rate array import [{'start': 575, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2190, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 575, 'end': 2190, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 09:35:52.206457: - Your estimated bill for today is £6.96 and tomorrow is £6.95 2026-08-14 09:35:52.206552: - Import rates are cheap (21.7p - 24.7p) for the next 6 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 09:35:52.206578: - The battery is currently at 11% and is in eco mode for the next 2 hours. 2026-08-14 09:35:52.206599: - For the next 48 hours there will be no solar generation. 2026-08-14 09:35:52.206662: - You will run out of battery in 40 minutes. 2026-08-14 09:35:52.206737: - Your next charge slot will be in 2 hours where import rates will be cheap (22.2p). 2026-08-14 09:35:52.206832: 2026-08-14 09:35:52.268137: Plan calculation took 45.94 seconds 2026-08-14 09:35:52.268381: Inverter 0: Type SK Sunsynk 2026-08-14 09:35:52.268415: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 09:35:52.268563: Reserve min: 7%, battery_min: 7% 2026-08-14 09:35:52.268619: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 09:35:52.269132: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 1078W, current battery voltage 51.2V, grid power -53W, load power 1128W, PV Power 0W 2026-08-14 09:35:52.269310: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:35:52.269390: Inverter 0 scheduled charge enable is False 2026-08-14 09:35:52.269414: Inverter 0 charge windows currently [] 2026-08-14 09:35:52.269435: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 09:35:52.269520: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:35:52.269549: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:35:52.269579: Inverter 0 scheduled discharge enable is False 2026-08-14 09:35:52.269676: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:35:52.269706: Inverter 0 discharge windows currently [] 2026-08-14 09:35:52.269725: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:35:52.269740: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:35:52.269754: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:35:52.347660: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 09:35:52.347935: Inverter 0 disabled charge window while waiting for schedule (now 08-14 09:35:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 09:35:52.348033: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:35:52.348247: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:35:52.348355: No export window planned 2026-08-14 09:35:52.348487: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 09:35:52.348529: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:35:52.348694: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:35:52.348869: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 09:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 09:35:52.348925: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 09:35:52.349141: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 09:35:52.349328: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:35:52.349391: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:35:52.349512: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:35:52.349565: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:35:52.349655: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:35:52.349780: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:35:52.349869: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:35:52.350012: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:35:52.350068: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:35:52.350221: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:35:52.350327: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:35:52.350459: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:35:52.350515: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:35:52.350604: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:35:52.350685: Inverter 0 count register writes 0 2026-08-14 09:35:52.385937: Total inverter register writes now 806 2026-08-14 09:35:52.438686: Info: Completed run status Demand 2026-08-14 09:35:52.448192: Info: record_status Demand 2026-08-14 09:35:52.477592: Saved current settings to /config/predbat_config.json 2026-08-14 09:35:52.477848: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 09:36:07.334619: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0121 val_mae=0.0041 kWh val_bias=-0.0006 kWh (-0.9%) combined=0.0024 kWh ema_combined=0.0026 kWh 2026-08-14 09:36:21.553669: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0102 val_mae=0.0039 kWh val_bias=-0.0006 kWh (-0.8%) combined=0.0020 kWh ema_combined=0.0024 kWh 2026-08-14 09:36:24.637169: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:36:24.637443: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:36:24.637487: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:36:24.637628: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:36:24.637668: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:36:24.637691: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:36:24.637711: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:36:34.565297: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0092 val_mae=0.0033 kWh val_bias=+0.0005 kWh (+0.7%) combined=0.0022 kWh ema_combined=0.0023 kWh 2026-08-14 09:36:47.036112: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0092 val_mae=0.0035 kWh val_bias=+0.0004 kWh (+0.6%) combined=0.0019 kWh ema_combined=0.0022 kWh 2026-08-14 09:36:59.685013: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0080 val_mae=0.0033 kWh val_bias=-0.0013 kWh (-1.8%) combined=0.0023 kWh ema_combined=0.0022 kWh 2026-08-14 09:37:12.473211: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0085 val_mae=0.0030 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0019 kWh ema_combined=0.0021 kWh 2026-08-14 09:37:27.819510: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0080 val_mae=0.0030 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0018 kWh ema_combined=0.0020 kWh 2026-08-14 09:37:40.813855: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0077 val_mae=0.0030 kWh val_bias=-0.0007 kWh (-1.0%) combined=0.0017 kWh ema_combined=0.0019 kWh 2026-08-14 09:37:55.048364: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0077 val_mae=0.0028 kWh val_bias=-0.0006 kWh (-0.8%) combined=0.0016 kWh ema_combined=0.0018 kWh 2026-08-14 09:38:09.210878: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0067 val_mae=0.0028 kWh val_bias=+0.0003 kWh (+0.4%) combined=0.0015 kWh ema_combined=0.0017 kWh 2026-08-14 09:38:24.250109: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0070 val_mae=0.0027 kWh val_bias=-0.0007 kWh (-1.0%) combined=0.0015 kWh ema_combined=0.0017 kWh 2026-08-14 09:38:39.032895: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:38:39.033173: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:38:39.033255: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:38:39.033404: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:38:39.033443: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:38:39.033465: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:38:39.033652: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:38:39.371642: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0070 val_mae=0.0026 kWh val_bias=-0.0004 kWh (-0.6%) combined=0.0015 kWh ema_combined=0.0016 kWh 2026-08-14 09:38:54.608000: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0067 val_mae=0.0028 kWh val_bias=-0.0008 kWh (-1.2%) combined=0.0017 kWh ema_combined=0.0016 kWh 2026-08-14 09:39:08.807024: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0056 val_mae=0.0025 kWh val_bias=-0.0003 kWh (-0.4%) combined=0.0013 kWh ema_combined=0.0015 kWh 2026-08-14 09:39:21.394179: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0055 val_mae=0.0025 kWh val_bias=-0.0006 kWh (-0.9%) combined=0.0016 kWh ema_combined=0.0015 kWh 2026-08-14 09:39:34.632468: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0060 val_mae=0.0026 kWh val_bias=-0.0011 kWh (-1.6%) combined=0.0018 kWh ema_combined=0.0016 kWh 2026-08-14 09:39:47.412574: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0054 val_mae=0.0024 kWh val_bias=-0.0007 kWh (-1.0%) combined=0.0014 kWh ema_combined=0.0016 kWh 2026-08-14 09:40:00.335926: --------------- PredBat - update at 2026-08-14 09:40:00+01:00 with clock skew 0 minutes, minutes now 580 2026-08-14 09:40:00.337271: Saved current settings to /config/predbat_config.json 2026-08-14 09:40:00.337584: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 5.0 minutes 2026-08-14 09:40:00.337820: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 09:40:00.338036: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 09:40:00.377393: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 09:40:00.377619: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 09:40:00.378359: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 09:40:00.378561: Predbat mode is set to Control charge & discharge 2026-08-14 09:40:00.651103: Found 21602 load_today datapoints going back 28 days 2026-08-14 09:40:00.651332: Using load_power data to fill gaps in load_today data 2026-08-14 09:40:01.790290: Processing 721 30-minute periods for power integration 2026-08-14 09:40:02.015324: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 09:40:02.016529: Car charging hold False, threshold 6.0kWh 2026-08-14 09:40:02.016605: Current data so far today: load 9.15kWh, import 9.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 09:40:02.033969: Cars: SoC: [15.822000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 09:40:02.035001: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 09:40:02.035089: Standing charge is set to 49.98p 2026-08-14 09:40:02.137877: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 09:40:02.138016: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 09:40:02.138270: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 10.0 minutes 2026-08-14 09:40:02.138969: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 10.0 minutes 2026-08-14 09:40:02.143262: Loaded 47 datapoints of futurerate analysis 2026-08-14 09:40:02.266340: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 09:40:02.326795: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 09:40:02.334927: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 09:40:02.335593: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 09:40:02.425227: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 09:40:02.425384: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 09:40:02.426925: High export rate found rates in range 99p to -99p 2026-08-14 09:40:02.640216: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 09:40:02.653101: Car 0 charging is not planned as it is not plugged in 2026-08-14 09:40:02.667228: Battery level now 1.76kWh, -1hr ago 1.76kWh, at midnight 2.43kWh, battery value change in the last hour 0.0p, change today -15.66p, rate_forward 23.31p 2026-08-14 09:40:02.667777: Last hour: net energy 0.78kWh, import 0.78kWh, export 0.0kWh, car 0kWh, load 0.97kWh, net cost 18.51p, import 18.51p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 09:40:02.808551: Today's energy total net 9.4kWh, import 9.4kWh, export 0.0kWh, cost 286.94p, import 236.95p, export 0.0p, carbon 0.0kg 2026-08-14 09:40:02.808747: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 09:40:03.043927: Using weighted-bucket historical load forecast over 14 days 2026-08-14 09:40:03.111139: Today's load divergence 115.02%, in-day adjustment 133.7%, damping 0.95x, yesterday 146.81% today 114.27% blend 59.72% 2026-08-14 09:40:03.111281: Today's predicted so far 3.64kWh with 0.0kWh car/iBoost excluded, 1.59kWh import ignored, and 5.23kWh forecast extra. 2026-08-14 09:40:03.111310: Today's actual load so far 5.85kWh with 0.0kWh car/iBoost excluded, and 3.35kWh import ignored. 2026-08-14 09:40:03.170757: Inverter 0: Type SK Sunsynk 2026-08-14 09:40:03.171646: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 09:40:03.172061: Reserve min: 7%, battery_min: 7% 2026-08-14 09:40:03.172270: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 09:40:03.172854: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 1126W, current battery voltage 51.2V, grid power -54W, load power 1181W, PV Power 0W 2026-08-14 09:40:03.173198: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:40:03.173503: Inverter 0 scheduled charge enable is False 2026-08-14 09:40:03.173651: Inverter 0 charge windows currently [] 2026-08-14 09:40:03.173817: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 09:40:03.174137: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:40:03.174328: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:40:03.174490: Inverter 0 scheduled discharge enable is False 2026-08-14 09:40:03.174835: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:40:03.175008: Inverter 0 discharge windows currently [] 2026-08-14 09:40:03.175179: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:40:03.175331: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:40:03.175480: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:40:03.293818: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 09:40:03.293932: Plan was last updated on 2026-08-14 09:35:00+01:00 and is now 5.0 minutes old 2026-08-14 09:40:03.294193: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 09:40:03.294252: Best export window [ ] 2026-08-14 09:40:03.295108: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 09:40:03.298340: Load divergence over 8.0 hours mean 433.12W, min 240.6W, max 1225.8W, std dev 175.23W, divergence 20.23% 2026-08-14 09:40:03.314554: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 09:40:03.314799: LoadML is_calculating True 2026-08-14 09:40:03.314839: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 09:40:03.351188: predict base end_record 08-15 12:35:00, final soc 1.12kWh, metric 900.76p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:20:00, load 29.4kWh, PV 0.0kWh 2026-08-14 09:40:03.386628: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0057 val_mae=0.0023 kWh val_bias=+0.0002 kWh (+0.2%) combined=0.0014 kWh ema_combined=0.0015 kWh 2026-08-14 09:40:03.575461: Battery has 0.67 hours left - now at 1.76kWh 2026-08-14 09:40:03.622329: predict base10 end_record 08-15 12:35:00, final soc 1.12kWh, metric 928.28p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:20:00, load 30.36kWh, PV 0.0kWh 2026-08-14 09:40:03.753941: predict best10 end_record 08-15 12:35:00, final soc 1.44kWh, metric 842.73p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:20:00, load 30.36kWh, PV 0.0kWh 2026-08-14 09:40:03.962440: predict best end_record 08-15 12:35:00, final soc 1.51kWh, metric 820.64p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:20:00, load 29.4kWh, PV 0.0kWh 2026-08-14 09:40:03.964219: Saving plan best values to HA entities 2026-08-14 09:40:04.247312: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 09:40:04.254198: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 09:40:04.263311: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 42.93kWh, house 4.96kWh, export 0.0kWh, metric 820.64p, metric10 842.73p 2026-08-14 09:40:04.362979: Marginal costs baseline metric (no standing charge): 770.6561 2026-08-14 09:40:04.676683: Marginal energy costs matrix computed: min=21.78 max=38.6 2026-08-14 09:40:04.837817: Rate array import [{'start': 580, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2195, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 580, 'end': 2195, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 09:40:04.838506: - Your estimated bill for today is £6.95 and tomorrow is £6.97 2026-08-14 09:40:04.838556: - Import rates are cheap (21.7p - 24.7p) for the next 6 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 09:40:04.838579: - The battery is currently at 11% and is in eco mode for the next 2 and three quarters hours. 2026-08-14 09:40:04.838597: - For the next 48 hours there will be no solar generation. 2026-08-14 09:40:04.838614: - You will run out of battery in 40 minutes. 2026-08-14 09:40:04.838638: - Your next charge slot will be in 2 and three quarters hours where import rates will be cheap (22.2p). 2026-08-14 09:40:04.838655: 2026-08-14 09:40:04.887853: Plan calculation took 1.59 seconds 2026-08-14 09:40:04.891794: No high rate period found 2026-08-14 09:40:04.986397: Import threshold used for optimisation was 24.8p 2026-08-14 09:40:05.070590: Low import rate windows [0: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 1: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 2: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 3: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 4: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 5: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 6: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 7: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 8: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 9: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 10: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 11: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 12: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 13: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 14: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 15: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 16: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 17: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 18: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 19: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 20: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 21: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 22: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 23: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 24: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 25: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 26: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 27: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 28: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 29: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 30: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 31: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 32: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 33: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 34: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 35: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 36: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 37: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 38: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 39: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 40: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 41: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 42: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 43: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 44: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 45: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 46: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 47: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 48: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 49: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 50: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 51: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 52: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 53: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 54: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 55: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 56: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 57: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 58: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 59: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 60: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 61: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 62: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 63: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 64: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 65: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 66: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 67: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 68: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 69: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 70: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 71: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 72: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 73: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 74: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 75: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 76: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 77: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 78: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 79: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 80: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 81: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 82: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 83: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 84: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 85: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 86: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 87: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 88: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 89: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 90: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 91: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84, 92: 08-16 08:30:00 - 08-16 09:00:00 @ 24.56, 93: 08-16 09:00:00 - 08-16 09:30:00 @ 23.79, 94: 08-16 09:30:00 - 08-16 10:00:00 @ 24.72] 2026-08-14 09:40:05.079128: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 09:40:05.079471: Inverter 0 disabled charge window while waiting for schedule (now 08-14 09:40:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 09:40:05.079809: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:40:05.080334: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:40:05.081120: No export window planned 2026-08-14 09:40:05.081416: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 09:40:05.081557: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:40:05.081884: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:40:05.082194: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 09:40:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 09:40:05.082349: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 09:40:05.082567: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 09:40:05.082785: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:40:05.082977: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:40:05.083140: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:40:05.083331: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:40:05.083491: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:40:05.083668: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:40:05.083826: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:40:05.084046: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:40:05.084211: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:40:05.084404: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:40:05.084563: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:40:05.084763: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:40:05.084921: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:40:05.085429: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:40:05.085614: Inverter 0 count register writes 0 2026-08-14 09:40:05.105979: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 09:40:05.112981: Total inverter register writes now 806 2026-08-14 09:40:05.203268: Info: Completed run status Demand 2026-08-14 09:40:05.211983: Info: record_status Demand 2026-08-14 09:40:05.219706: Saved current settings to /config/predbat_config.json 2026-08-14 09:40:05.219978: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 09:40:17.126618: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0057 val_mae=0.0024 kWh val_bias=-0.0010 kWh (-1.4%) combined=0.0017 kWh ema_combined=0.0016 kWh 2026-08-14 09:40:31.930909: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0058 val_mae=0.0022 kWh val_bias=-0.0004 kWh (-0.5%) combined=0.0011 kWh ema_combined=0.0014 kWh 2026-08-14 09:40:39.342775: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:40:39.343355: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:40:39.343562: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:40:39.343914: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:40:39.344074: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:40:39.344264: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:40:39.344442: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:40:44.914976: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0051 val_mae=0.0023 kWh val_bias=-0.0007 kWh (-1.0%) combined=0.0013 kWh ema_combined=0.0014 kWh 2026-08-14 09:41:01.867038: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0055 val_mae=0.0021 kWh val_bias=-0.0004 kWh (-0.5%) combined=0.0013 kWh ema_combined=0.0014 kWh 2026-08-14 09:41:18.684106: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0055 val_mae=0.0021 kWh val_bias=-0.0002 kWh (-0.3%) combined=0.0011 kWh ema_combined=0.0013 kWh 2026-08-14 09:41:33.129287: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0052 val_mae=0.0022 kWh val_bias=-0.0006 kWh (-0.9%) combined=0.0013 kWh ema_combined=0.0013 kWh 2026-08-14 09:41:33.138296: ML Predictor: Restored best weights from epoch with val_mae=0.0022 kWh val_bias=-0.0006 kWh (-0.9%) 2026-08-14 09:41:33.138692: ML Predictor: Training complete, final val_mae=0.0022 kWh val_bias=-0.0006 kWh (-0.9%) 2026-08-14 09:41:34.316759: ML Predictor: AR rollout over holdout: ar_mae=0.0024 kWh ar_bias=-0.0007 kWh (-1.0%) [drift vs teacher-forced: +0.0002 kWh] 2026-08-14 09:41:34.325172: ML Predictor: Curriculum pass 4/5 complete, val_mae=0.0022 kWh 2026-08-14 09:41:34.325294: ML Predictor: Curriculum final pass 5/5: full dataset (55.9 days) 2026-08-14 09:41:34.325333: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 09:41:35.095234: ML Predictor: Creating dataset with 1341 hours of training data, 48 hours validation 2026-08-14 09:41:40.508243: ML Predictor: Created 15805 training samples, 576 validation samples 2026-08-14 09:41:40.564485: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0588 std=0.0471) load(mean=0.0588 std=0.0470) pv(mean=0.0000 std=0.0100) temp(mean=19.5467 std=4.4314) import_rate(mean=24.2475 std=2.0176) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1925 std=0.5231) 2026-08-14 09:41:40.653492: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 09:41:40.669913: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 09:41:40.695581: ML Predictor: Baseline (pre-finetune) val_mae=0.0088 kWh val_bias=-0.0029 kWh 2026-08-14 09:41:54.187626: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0112 val_mae=0.0082 kWh val_bias=-0.0022 kWh (-2.6%) combined=0.0048 kWh ema_combined=0.0048 kWh 2026-08-14 09:42:07.655190: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0126 val_mae=0.0074 kWh val_bias=+0.0010 kWh (+1.2%) combined=0.0038 kWh ema_combined=0.0045 kWh 2026-08-14 09:42:20.191767: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0155 val_mae=0.0076 kWh val_bias=-0.0021 kWh (-2.5%) combined=0.0050 kWh ema_combined=0.0047 kWh 2026-08-14 09:42:33.232162: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0133 val_mae=0.0072 kWh val_bias=+0.0001 kWh (+0.1%) combined=0.0038 kWh ema_combined=0.0044 kWh 2026-08-14 09:42:45.898272: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0150 val_mae=0.0065 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0041 kWh ema_combined=0.0043 kWh 2026-08-14 09:42:54.301029: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:42:54.301310: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:42:54.301360: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:42:54.301503: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:42:54.301544: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:42:54.301566: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:42:54.301584: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:43:00.251021: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0122 val_mae=0.0069 kWh val_bias=-0.0024 kWh (-2.9%) combined=0.0045 kWh ema_combined=0.0044 kWh 2026-08-14 09:43:14.391285: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0120 val_mae=0.0071 kWh val_bias=+0.0018 kWh (+2.2%) combined=0.0040 kWh ema_combined=0.0043 kWh 2026-08-14 09:43:28.225032: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0120 val_mae=0.0076 kWh val_bias=-0.0026 kWh (-3.0%) combined=0.0048 kWh ema_combined=0.0044 kWh 2026-08-14 09:43:42.806667: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0117 val_mae=0.0075 kWh val_bias=-0.0037 kWh (-4.3%) combined=0.0059 kWh ema_combined=0.0048 kWh 2026-08-14 09:43:57.009201: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0107 val_mae=0.0071 kWh val_bias=-0.0033 kWh (-3.9%) combined=0.0053 kWh ema_combined=0.0050 kWh 2026-08-14 09:44:11.335171: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0115 val_mae=0.0066 kWh val_bias=-0.0004 kWh (-0.5%) combined=0.0035 kWh ema_combined=0.0045 kWh 2026-08-14 09:44:24.625487: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0100 val_mae=0.0067 kWh val_bias=-0.0008 kWh (-1.0%) combined=0.0035 kWh ema_combined=0.0042 kWh 2026-08-14 09:44:38.420890: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0105 val_mae=0.0059 kWh val_bias=-0.0012 kWh (-1.4%) combined=0.0046 kWh ema_combined=0.0043 kWh 2026-08-14 09:44:51.763175: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0091 val_mae=0.0061 kWh val_bias=-0.0003 kWh (-0.4%) combined=0.0035 kWh ema_combined=0.0041 kWh 2026-08-14 09:44:54.637941: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:44:54.638427: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:44:54.638509: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:44:54.638804: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:44:54.638861: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:44:54.638931: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:44:54.638973: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:45:00.807930: --------------- PredBat - update at 2026-08-14 09:45:00+01:00 with clock skew 0 minutes, minutes now 585 2026-08-14 09:45:00.808778: Saved current settings to /config/predbat_config.json 2026-08-14 09:45:00.808904: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 10.0 minutes 2026-08-14 09:45:00.809004: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 09:45:00.809093: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 09:45:00.846301: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 09:45:00.846452: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 09:45:00.847116: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 09:45:00.847259: Predbat mode is set to Control charge & discharge 2026-08-14 09:45:01.153752: Found 21602 load_today datapoints going back 28 days 2026-08-14 09:45:01.153938: Using load_power data to fill gaps in load_today data 2026-08-14 09:45:02.299128: Processing 721 30-minute periods for power integration 2026-08-14 09:45:02.579967: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 09:45:02.580228: Car charging hold False, threshold 6.0kWh 2026-08-14 09:45:02.580390: Current data so far today: load 9.3kWh, import 9.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 09:45:02.619853: Cars: SoC: [15.822000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 09:45:02.621282: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 09:45:02.621565: Standing charge is set to 49.98p 2026-08-14 09:45:02.670621: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 09:45:02.671495: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 09:45:02.671996: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 15.0 minutes 2026-08-14 09:45:02.672695: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 15.0 minutes 2026-08-14 09:45:02.677184: Loaded 47 datapoints of futurerate analysis 2026-08-14 09:45:02.811899: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 09:45:02.905342: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 09:45:02.913920: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 09:45:02.914555: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 09:45:02.978527: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 09:45:02.980054: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 09:45:02.982307: High export rate found rates in range 99p to -99p 2026-08-14 09:45:03.134086: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 09:45:03.149093: Car 0 charging is not planned as it is not plugged in 2026-08-14 09:45:03.166504: Battery level now 1.76kWh, -1hr ago 1.68kWh, at midnight 2.43kWh, battery value change in the last hour 1.86p, change today -15.66p, rate_forward 23.31p 2026-08-14 09:45:03.167140: Last hour: net energy 0.75kWh, import 0.75kWh, export 0.0kWh, car 0kWh, load 1.1kWh, net cost 17.9p, import 17.9p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 09:45:03.277960: Today's energy total net 9.4kWh, import 9.4kWh, export 0.0kWh, cost 286.94p, import 236.95p, export 0.0p, carbon 0.0kg 2026-08-14 09:45:03.278136: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 09:45:03.407871: Using weighted-bucket historical load forecast over 14 days 2026-08-14 09:45:03.438983: Today's load divergence 115.96%, in-day adjustment 133.95%, damping 0.95x, yesterday 146.81% today 115.16% blend 59.38% 2026-08-14 09:45:03.439160: Today's predicted so far 3.4kWh with 0.0kWh car/iBoost excluded, 1.85kWh import ignored, and 5.24kWh forecast extra. 2026-08-14 09:45:03.439199: Today's actual load so far 5.72kWh with 0.0kWh car/iBoost excluded, and 3.57kWh import ignored. 2026-08-14 09:45:03.497486: Inverter 0: Type SK Sunsynk 2026-08-14 09:45:03.497597: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 09:45:03.497819: Reserve min: 7%, battery_min: 7% 2026-08-14 09:45:03.497907: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 09:45:03.498245: Inverter 0 SoC: 1.6kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1116W, current battery voltage 51.2V, grid power -54W, load power 1174W, PV Power 0W 2026-08-14 09:45:03.498432: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:45:03.498539: Inverter 0 scheduled charge enable is False 2026-08-14 09:45:03.498583: Inverter 0 charge windows currently [] 2026-08-14 09:45:03.498617: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 09:45:03.499091: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:45:03.499160: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:45:03.499230: Inverter 0 scheduled discharge enable is False 2026-08-14 09:45:03.499524: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:45:03.499579: Inverter 0 discharge windows currently [] 2026-08-14 09:45:03.499667: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:45:03.499710: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:45:03.499781: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:45:03.604161: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 09:45:03.604282: Plan was last updated on 2026-08-14 09:35:00+01:00 and is now 10.0 minutes old 2026-08-14 09:45:03.604511: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 09:45:03.604550: Best export window [ ] 2026-08-14 09:45:03.605269: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 09:45:03.607884: Load divergence over 8.0 hours mean 431.76W, min 220.2W, max 1101.0W, std dev 165.43W, divergence 19.16% 2026-08-14 09:45:03.626506: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 09:45:03.626600: LoadML is_calculating True 2026-08-14 09:45:03.626623: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 09:45:03.692282: predict base end_record 08-15 12:40:00, final soc 1.12kWh, metric 905.48p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 29.59kWh, PV 0.0kWh 2026-08-14 09:45:03.918116: Battery has 0.5 hours left - now at 1.6kWh 2026-08-14 09:45:04.004621: predict base10 end_record 08-15 12:40:00, final soc 1.12kWh, metric 933.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 30.55kWh, PV 0.0kWh 2026-08-14 09:45:04.138891: predict best10 end_record 08-15 12:40:00, final soc 1.77kWh, metric 854.89p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 30.55kWh, PV 0.0kWh 2026-08-14 09:45:04.335969: predict best end_record 08-15 12:40:00, final soc 1.9kWh, metric 834.28p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 29.59kWh, PV 0.0kWh 2026-08-14 09:45:04.337201: Saving plan best values to HA entities 2026-08-14 09:45:04.641254: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 09:45:04.656317: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 09:45:04.680713: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.0kWh, house 5.0kWh, export 0.0kWh, metric 834.28p, metric10 854.89p 2026-08-14 09:45:04.841995: Marginal costs baseline metric (no standing charge): 784.2971 2026-08-14 09:45:05.320883: Marginal energy costs matrix computed: min=21.8 max=38.9 2026-08-14 09:45:05.487019: Rate array import [{'start': 585, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2200, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 585, 'end': 2200, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 09:45:05.487963: - Your estimated bill for today is £6.97 and tomorrow is £6.99 2026-08-14 09:45:05.488024: - Import rates are cheap (21.7p - 24.7p) for the next 6 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 09:45:05.488054: - The battery is currently at 10% and is in eco mode for the next 2 and three quarters hours. 2026-08-14 09:45:05.488082: - For the next 48 hours there will be no solar generation. 2026-08-14 09:45:05.488125: - You will run out of battery in 30 minutes. 2026-08-14 09:45:05.488160: - Your next charge slot will be in 2 and three quarters hours where import rates will be cheap (22.2p). 2026-08-14 09:45:05.488223: 2026-08-14 09:45:05.545746: Plan calculation took 1.94 seconds 2026-08-14 09:45:05.549289: No high rate period found 2026-08-14 09:45:05.627956: Import threshold used for optimisation was 24.8p 2026-08-14 09:45:05.739849: Low import rate windows [0: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 1: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 2: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 3: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 4: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 5: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 6: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 7: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 8: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 9: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 10: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 11: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 12: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 13: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 14: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 15: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 16: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 17: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 18: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 19: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 20: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 21: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 22: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 23: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 24: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 25: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 26: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 27: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 28: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 29: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 30: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 31: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 32: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 33: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 34: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 35: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 36: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 37: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 38: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 39: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 40: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 41: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 42: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 43: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 44: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 45: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 46: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 47: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 48: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 49: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 50: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 51: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 52: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 53: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 54: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 55: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 56: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 57: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 58: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 59: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 60: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 61: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 62: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 63: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 64: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 65: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 66: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 67: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 68: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 69: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 70: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 71: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 72: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 73: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 74: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 75: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 76: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 77: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 78: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 79: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 80: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 81: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 82: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 83: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 84: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 85: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 86: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 87: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 88: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 89: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 90: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 91: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84, 92: 08-16 08:30:00 - 08-16 09:00:00 @ 24.56, 93: 08-16 09:00:00 - 08-16 09:30:00 @ 23.79, 94: 08-16 09:30:00 - 08-16 10:00:00 @ 24.72] 2026-08-14 09:45:05.765245: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 09:45:05.765424: Inverter 0 disabled charge window while waiting for schedule (now 08-14 09:45:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 09:45:05.765499: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:45:05.765721: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:45:05.765832: No export window planned 2026-08-14 09:45:05.765963: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 09:45:05.766008: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:45:05.766176: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:45:05.766372: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 09:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 09:45:05.766435: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 09:45:05.766494: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 09:45:05.766585: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:45:05.766635: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:45:05.766671: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:45:05.766705: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:45:05.766743: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:45:05.766778: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:45:05.766811: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:45:05.766885: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:45:05.766934: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:45:05.767077: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:45:05.767135: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:45:05.767285: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:45:05.767344: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:45:05.767465: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:45:05.767513: Inverter 0 count register writes 0 2026-08-14 09:45:05.808653: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 09:45:05.808939: Recompute is saving previous plan... 2026-08-14 09:45:05.813717: Best charge window [ 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 0% ] 2026-08-14 09:45:05.814070: Best export window [ ] 2026-08-14 09:45:05.815398: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 09:45:05.820301: Load divergence over 8.0 hours mean 431.76W, min 220.2W, max 1101.0W, std dev 165.43W, divergence 19.16% 2026-08-14 09:45:05.859932: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 09:45:05.860093: LoadML is_calculating True 2026-08-14 09:45:05.860125: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 09:45:05.878571: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 09:45:05.880258: Optimise levels pass started at 2026-08-14 09:45:05 2026-08-14 09:45:05.880531: Optimise all windows, total charge 94 export 1 2026-08-14 09:45:07.643900: >> Region optimisation pass width 960 2026-08-14 09:45:08.640857: >> Region optimisation pass width 480 2026-08-14 09:45:09.413462: >> Region optimisation pass width 240 2026-08-14 09:45:10.843398: >> Region optimisation pass width 120 2026-08-14 09:45:13.731201: Calculated end_record as 08-15 13:00:00 based on best_price 22.25p, next_charge_start 08-14 13:00:00, max_windows 54 2026-08-14 09:45:13.731428: Optimise levels pass ended at 2026-08-14 09:45:13, duration 7.9 seconds tried 325 combinations 2026-08-14 09:45:13.731491: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1054.93p, best_keep 0kWh, best_cycle 48.91kWh, best_carbon 0kg, best_import 36.89kWh 2026-08-14 09:45:13.755514: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 09:45:13.757362: Best charge windows best_metric 750.14p, best_cost 771.97p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:45:13.757485: Best export windows best_metric 750.14p, best_cost 771.97p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:45:13.757611: Optimise price set 23.8p, pass trim_import, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 750.14p, best_cost 771.97p, best_cycle 25.24kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:14.173760: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 749.88p, best_cost 771.66p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:14.691659: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 749.88p, best_cost 771.66p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:15.631040: Best charge windows best_metric 749.88p, best_cost 771.66p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:45:15.631396: Best export windows best_metric 749.88p, best_cost 771.66p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:45:15.633709: Best charge windows best_metric 749.88p, best_cost 771.66p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:45:15.633958: Best export windows best_metric 749.88p, best_cost 771.66p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:45:15.634231: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 749.88p, best_cost 771.66p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:16.841179: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 749.41p, best_cost 771.6p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:17.528475: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 749.41p, best_cost 771.6p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:18.009454: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0094 val_mae=0.0058 kWh val_bias=+0.0011 kWh (+1.2%) combined=0.0036 kWh ema_combined=0.0039 kWh 2026-08-14 09:45:18.295644: Best charge windows best_metric 749.41p, best_cost 771.6p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:45:18.295797: Best export windows best_metric 749.41p, best_cost 771.6p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:45:18.297036: Best charge windows best_metric 749.41p, best_cost 771.6p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:45:18.297134: Best export windows best_metric 749.41p, best_cost 771.6p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:45:18.297242: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 749.41p, best_cost 771.6p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:18.633558: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 749.41p, best_cost 771.6p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:18.859717: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 749.41p, best_cost 771.6p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:19.044799: Best charge windows best_metric 749.41p, best_cost 771.6p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:45:19.045148: Best export windows best_metric 749.41p, best_cost 771.6p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:45:19.045533: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 749.41p, best_cost 771.6p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:19.332168: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 749.41p, best_cost 771.6p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:19.454574: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 749.41p, best_cost 771.6p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:20.851012: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 749.41p, best_cost 771.6p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:21.268647: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 749.41p, best_cost 771.6p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:21.727170: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 749.41p, best_cost 771.6p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:21.939953: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 749.41p, best_cost 771.6p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:22.441076: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 749.41p, best_cost 771.6p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:22.857668: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 749.19p, best_cost 771.6p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:24.041516: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:24.365402: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:24.601273: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:24.905824: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:25.268521: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:25.477388: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:26.164096: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:26.469293: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:26.684277: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:26.940533: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:27.184762: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:27.506894: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:27.857065: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:28.182219: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:28.566085: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:28.833606: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:29.244618: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:29.645260: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:29.882011: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:30.162410: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:30.448144: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:30.651744: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:30.929245: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:31.215440: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:31.531186: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:31.794131: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:32.094506: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:32.319821: Best charge windows best_metric 749.1p, best_cost 771.59p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 28%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:45:32.320145: Best export windows best_metric 749.1p, best_cost 771.59p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:45:32.322154: Best charge windows best_metric 749.1p, best_cost 771.59p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 28%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:45:32.322382: Best export windows best_metric 749.1p, best_cost 771.59p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:45:32.322584: Optimise price set 26.8p, pass trim_import, price 24.94p, start_at_low False, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:32.386186: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:32.760712: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 749.1p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:33.110943: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 749.09p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:33.612843: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 749.09p, best_cost 771.59p, best_cycle 25.23kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:45:34.438936: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 749.06p, best_cost 771.36p, best_cycle 24.24kWh, best_carbon 0kg, best_import 50.02kWh 2026-08-14 09:45:35.461171: Best charge windows best_metric 749.06p, best_cost 771.36p, best_carbon 0kg, best_import 50.02kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 28%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:45:35.461383: Best export windows best_metric 749.06p, best_cost 771.36p, best_carbon 0kg, best_import 50.02kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:45:35.461543: Optimise price set 26.8p, pass normal, price 24.94p, start_at_low False, best_price_charge 22.25p, best_metric 749.06p, best_cost 771.36p, best_cycle 24.24kWh, best_carbon 0kg, best_import 50.02kWh 2026-08-14 09:45:35.744271: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 748.87p, best_cost 771.33p, best_cycle 24.24kWh, best_carbon 0kg, best_import 50.02kWh 2026-08-14 09:45:36.369890: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 748.87p, best_cost 771.33p, best_cycle 24.24kWh, best_carbon 0kg, best_import 50.02kWh 2026-08-14 09:45:38.063995: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 748.87p, best_cost 771.33p, best_cycle 24.24kWh, best_carbon 0kg, best_import 50.02kWh 2026-08-14 09:45:38.648314: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 748.87p, best_cost 771.33p, best_cycle 24.24kWh, best_carbon 0kg, best_import 50.02kWh 2026-08-14 09:45:39.527079: Best charge windows best_metric 748.86p, best_cost 771.33p, best_carbon 0kg, best_import 50.02kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:45:39.527265: Best export windows best_metric 748.86p, best_cost 771.33p, best_carbon 0kg, best_import 50.02kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:45:39.529093: Best charge windows best_metric 748.86p, best_cost 771.33p, best_carbon 0kg, best_import 50.02kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:45:39.529331: Best export windows best_metric 748.86p, best_cost 771.33p, best_carbon 0kg, best_import 50.02kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:45:39.529532: Optimise price set 26.8p, pass trim_import, price 24.94p, start_at_low False, best_price_charge 22.25p, best_metric 748.86p, best_cost 771.33p, best_cycle 24.24kWh, best_carbon 0kg, best_import 50.02kWh 2026-08-14 09:45:39.947302: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 748.86p, best_cost 771.33p, best_cycle 24.24kWh, best_carbon 0kg, best_import 50.02kWh 2026-08-14 09:45:40.463344: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 748.86p, best_cost 771.33p, best_cycle 24.24kWh, best_carbon 0kg, best_import 50.02kWh 2026-08-14 09:45:40.885523: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 748.86p, best_cost 771.33p, best_cycle 24.24kWh, best_carbon 0kg, best_import 50.02kWh 2026-08-14 09:45:41.514546: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 748.86p, best_cost 771.33p, best_cycle 24.24kWh, best_carbon 0kg, best_import 50.02kWh 2026-08-14 09:45:41.669110: Best charge windows best_metric 748.86p, best_cost 771.33p, best_carbon 0kg, best_import 50.02kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:45:41.669428: Best export windows best_metric 748.86p, best_cost 771.33p, best_carbon 0kg, best_import 50.02kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:45:41.669648: Optimise price set 26.8p, pass normal, price 24.94p, start_at_low False, best_price_charge 22.25p, best_metric 748.86p, best_cost 771.33p, best_cycle 24.24kWh, best_carbon 0kg, best_import 50.02kWh 2026-08-14 09:45:41.722087: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 748.86p, best_cost 771.33p, best_cycle 24.24kWh, best_carbon 0kg, best_import 50.02kWh 2026-08-14 09:45:41.824296: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 748.86p, best_cost 771.33p, best_cycle 24.24kWh, best_carbon 0kg, best_import 50.02kWh 2026-08-14 09:45:42.918086: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 748.86p, best_cost 771.33p, best_cycle 24.24kWh, best_carbon 0kg, best_import 50.02kWh 2026-08-14 09:45:43.054503: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 748.86p, best_cost 771.33p, best_cycle 24.24kWh, best_carbon 0kg, best_import 50.02kWh 2026-08-14 09:45:43.319544: Best charge windows best_metric 748.86p, best_cost 771.33p, best_carbon 0kg, best_import 50.02kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:45:43.319713: Best export windows best_metric 748.86p, best_cost 771.33p, best_carbon 0kg, best_import 50.02kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:45:43.319944: Tweak plan optimisation started 2026-08-14 09:45:44.478464: Tweak optimisation finished metric 748.87 cost 771.33 metric_keep 0 cycle 24.24 carbon 0 import 50.02 2026-08-14 09:45:44.500543: Swap charge optimisation started metric 748.87p, cost 771.33p, min_improvement_swap 0.1p 2026-08-14 09:45:51.661352: Swap charge optimisation finished metric 748.87p, cost 771.33p 2026-08-14 09:45:51.676766: Raw charge windows [ 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] reserve 1.12 2026-08-14 09:45:51.678014: Unclipped charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:30:00 @ 21.73p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:30:00 @ 24.87p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 10:00:00 @ 24.73p 100% ] reserve 1.12 2026-08-14 09:45:51.678566: Unfiltered charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:30:00 @ 21.73p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:30:00 @ 24.87p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 10:00:00 @ 24.73p 100% ] reserve 1.12 2026-08-14 09:45:51.679314: Filtered charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 15:00:00 @ 21.9p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:30:00 @ 24.87p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 10:00:00 @ 24.73p 100% ] reserve 1.12 2026-08-14 09:45:51.738273: Previous plan best metric is 750.56 (cost 827.36) and new plan best metric is 748.87 (cost 771.33) 2026-08-14 09:45:51.738752: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 09:45:51.739105: Plan valid is now true after recompute was False 2026-08-14 09:45:51.797095: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 911.56p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 29.86kWh, PV 0.0kWh 2026-08-14 09:45:52.062715: Battery has 0.5 hours left - now at 1.6kWh 2026-08-14 09:45:52.125075: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 939.48p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 30.84kWh, PV 0.0kWh 2026-08-14 09:45:52.255167: predict best10 end_record 08-15 13:00:00, final soc 3.06kWh, metric 892.08p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 30.84kWh, PV 0.0kWh 2026-08-14 09:45:52.377106: predict best end_record 08-15 13:00:00, final soc 3.45kWh, metric 877.34p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 29.86kWh, PV 0.0kWh 2026-08-14 09:45:52.377264: Saving plan best values to HA entities 2026-08-14 09:45:52.693903: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 09:45:52.704635: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 09:45:52.723118: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.0kWh, house 5.0kWh, export 0.0kWh, metric 877.34p, metric10 892.08p 2026-08-14 09:45:52.882822: Marginal costs baseline metric (no standing charge): 827.3559 2026-08-14 09:45:53.291297: Marginal energy costs matrix computed: min=21.8 max=38.9 2026-08-14 09:45:53.401802: Rate array import [{'start': 585, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2220, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 585, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 09:45:53.403033: - Your estimated bill for today is £6.97 and tomorrow is £6.99 2026-08-14 09:45:53.403322: - Import rates are cheap (21.7p - 24.7p) for the next 6 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 09:45:53.403501: - The battery is currently at 10% and is in eco mode for the next 2 and three quarters hours. 2026-08-14 09:45:53.403660: - For the next 48 hours there will be no solar generation. 2026-08-14 09:45:53.403818: - You will run out of battery in 30 minutes. 2026-08-14 09:45:53.403973: - Your next charge slot will be in 2 and three quarters hours where import rates will be cheap (22.2p). 2026-08-14 09:45:53.404129: 2026-08-14 09:45:53.486685: Plan calculation took 47.68 seconds 2026-08-14 09:45:53.487167: Inverter 0: Type SK Sunsynk 2026-08-14 09:45:53.487250: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 09:45:53.487645: Reserve min: 7%, battery_min: 7% 2026-08-14 09:45:53.487884: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 09:45:53.488405: Inverter 0 SoC: 1.6kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1116W, current battery voltage 51.2V, grid power -54W, load power 1174W, PV Power 0W 2026-08-14 09:45:53.488802: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:45:53.495221: Inverter 0 scheduled charge enable is False 2026-08-14 09:45:53.495321: Inverter 0 charge windows currently [] 2026-08-14 09:45:53.495423: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 09:45:53.495790: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:45:53.495857: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:45:53.496018: Inverter 0 scheduled discharge enable is False 2026-08-14 09:45:53.496346: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:45:53.496411: Inverter 0 discharge windows currently [] 2026-08-14 09:45:53.496502: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:45:53.496687: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:45:53.496841: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:45:53.626617: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 09:45:53.627014: Inverter 0 disabled charge window while waiting for schedule (now 08-14 09:45:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 09:45:53.627275: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:45:53.627674: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:45:53.627924: No export window planned 2026-08-14 09:45:53.628244: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 09:45:53.628406: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:45:53.628802: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:45:53.629185: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 09:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 09:45:53.629427: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 09:45:53.629633: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 09:45:53.629859: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:45:53.630003: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:45:53.630165: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:45:53.630391: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:45:53.630560: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:45:53.630734: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:45:53.630888: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:45:53.631154: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:45:53.631313: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:45:53.631469: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:45:53.631623: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:45:53.631775: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:45:53.631927: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:45:53.632084: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:45:53.632244: Inverter 0 count register writes 0 2026-08-14 09:45:53.665000: Total inverter register writes now 806 2026-08-14 09:45:53.717081: Info: Completed run status Demand 2026-08-14 09:45:53.727474: Info: record_status Demand 2026-08-14 09:45:53.738408: Saved current settings to /config/predbat_config.json 2026-08-14 09:45:53.738776: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 09:45:58.801470: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0089 val_mae=0.0059 kWh val_bias=+0.0020 kWh (+2.4%) combined=0.0041 kWh ema_combined=0.0040 kWh 2026-08-14 09:46:13.450611: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0082 val_mae=0.0049 kWh val_bias=-0.0005 kWh (-0.6%) combined=0.0026 kWh ema_combined=0.0036 kWh 2026-08-14 09:46:23.867191: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:46:23.867452: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:46:23.867496: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:46:23.867633: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:46:23.867674: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:46:23.867697: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:46:23.867716: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:46:27.487701: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0079 val_mae=0.0051 kWh val_bias=-0.0017 kWh (-2.0%) combined=0.0037 kWh ema_combined=0.0036 kWh 2026-08-14 09:46:41.961782: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0076 val_mae=0.0051 kWh val_bias=-0.0019 kWh (-2.2%) combined=0.0036 kWh ema_combined=0.0036 kWh 2026-08-14 09:46:56.363894: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0073 val_mae=0.0052 kWh val_bias=-0.0023 kWh (-2.7%) combined=0.0034 kWh ema_combined=0.0036 kWh 2026-08-14 09:47:09.618262: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0069 val_mae=0.0047 kWh val_bias=-0.0007 kWh (-0.8%) combined=0.0024 kWh ema_combined=0.0032 kWh 2026-08-14 09:47:23.624585: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0071 val_mae=0.0047 kWh val_bias=-0.0008 kWh (-1.0%) combined=0.0024 kWh ema_combined=0.0030 kWh 2026-08-14 09:47:37.952180: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0070 val_mae=0.0047 kWh val_bias=-0.0021 kWh (-2.5%) combined=0.0033 kWh ema_combined=0.0031 kWh 2026-08-14 09:47:51.719082: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0064 val_mae=0.0047 kWh val_bias=-0.0016 kWh (-1.9%) combined=0.0031 kWh ema_combined=0.0031 kWh 2026-08-14 09:48:05.957791: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0066 val_mae=0.0042 kWh val_bias=-0.0007 kWh (-0.8%) combined=0.0024 kWh ema_combined=0.0029 kWh 2026-08-14 09:48:20.126139: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0066 val_mae=0.0040 kWh val_bias=-0.0010 kWh (-1.2%) combined=0.0023 kWh ema_combined=0.0027 kWh 2026-08-14 09:48:24.242959: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:48:24.243447: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:48:24.243573: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:48:24.243831: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:48:24.243933: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:48:24.244015: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:48:24.244089: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:48:35.259383: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0061 val_mae=0.0039 kWh val_bias=-0.0007 kWh (-0.9%) combined=0.0022 kWh ema_combined=0.0026 kWh 2026-08-14 09:48:49.114840: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0067 val_mae=0.0048 kWh val_bias=-0.0026 kWh (-3.1%) combined=0.0037 kWh ema_combined=0.0029 kWh 2026-08-14 09:49:02.430212: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0062 val_mae=0.0043 kWh val_bias=-0.0011 kWh (-1.3%) combined=0.0024 kWh ema_combined=0.0028 kWh 2026-08-14 09:49:16.965812: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0063 val_mae=0.0040 kWh val_bias=-0.0013 kWh (-1.5%) combined=0.0027 kWh ema_combined=0.0028 kWh 2026-08-14 09:49:16.967415: ML Predictor: Restored best weights from epoch with val_mae=0.0039 kWh val_bias=-0.0007 kWh (-0.9%) 2026-08-14 09:49:16.967803: ML Predictor: Training complete, final val_mae=0.0039 kWh val_bias=-0.0007 kWh (-0.9%) 2026-08-14 09:49:17.996082: ML Predictor: AR rollout over holdout: ar_mae=0.0040 kWh ar_bias=-0.0008 kWh (-1.0%) [drift vs teacher-forced: +0.0001 kWh] 2026-08-14 09:49:18.009696: ML Predictor: Curriculum training complete, final val_mae=0.0039 kWh 2026-08-14 09:49:18.020160: ML Component: Training successful, val_mae=0.0039 kWh 2026-08-14 09:49:18.157970: ML Predictor: Model saved to /config/predbat_ml_model.npz 2026-08-14 09:49:18.162941: ML Component: Generating predictions load data age 55.0 days, 16094 data points 2026-08-14 09:49:18.305254: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0874 max_dow {0: 0.11093437492717058, 1: 0.1051656252630055, 2: 0.11588125031329691, 3: 0.12127187521476299, 4: 0.15931562533210963, 5: 0.08670312517620624, 6: 0.11232187522724271} 2026-08-14 09:49:18.729141: ML Component: Generated 576 predictions (total 38.59 kWh over 48h) 2026-08-14 09:49:18.767350: ML Component: Prediction cycle completed 2026-08-14 09:49:18.892465: ML Component: Saved 16094 steps (55 days) of history to /config/predbat_ml_history.npz 2026-08-14 09:50:00.622941: --------------- PredBat - update at 2026-08-14 09:50:00+01:00 with clock skew 0 minutes, minutes now 590 2026-08-14 09:50:00.623699: Saved current settings to /config/predbat_config.json 2026-08-14 09:50:00.623813: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 15.0 minutes 2026-08-14 09:50:00.623874: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 09:50:00.623967: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 09:50:00.644033: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 09:50:00.644167: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 09:50:00.644842: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 09:50:00.645003: Predbat mode is set to Control charge & discharge 2026-08-14 09:50:00.850165: Found 21602 load_today datapoints going back 28 days 2026-08-14 09:50:00.850336: Using load_power data to fill gaps in load_today data 2026-08-14 09:50:01.728868: Processing 721 30-minute periods for power integration 2026-08-14 09:50:01.921385: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 09:50:01.921523: Car charging hold False, threshold 6.0kWh 2026-08-14 09:50:01.921570: Current data so far today: load 9.15kWh, import 9.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 09:50:01.936334: Cars: SoC: [15.822000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 09:50:01.937242: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 09:50:01.937330: Standing charge is set to 49.98p 2026-08-14 09:50:01.964798: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 09:50:01.964914: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 09:50:01.965232: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 20.0 minutes 2026-08-14 09:50:01.965741: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 20.0 minutes 2026-08-14 09:50:01.969201: Loaded 47 datapoints of futurerate analysis 2026-08-14 09:50:02.056579: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 09:50:02.113145: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 09:50:02.118660: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 09:50:02.118957: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 09:50:02.159816: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 09:50:02.159941: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 09:50:02.161325: High export rate found rates in range 99p to -99p 2026-08-14 09:50:02.250633: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 09:50:02.250778: Car 0 charging is not planned as it is not plugged in 2026-08-14 09:50:02.263440: Battery level now 1.6kWh, -1hr ago 1.68kWh, at midnight 2.43kWh, battery value change in the last hour -1.86p, change today -19.39p, rate_forward 23.31p 2026-08-14 09:50:02.263840: Last hour: net energy 0.72kWh, import 0.72kWh, export 0.0kWh, car 0kWh, load 0.9kWh, net cost 17.28p, import 17.28p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 09:50:02.318509: Today's energy total net 9.4kWh, import 9.4kWh, export 0.0kWh, cost 286.94p, import 236.95p, export 0.0p, carbon 0.0kg 2026-08-14 09:50:02.318689: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 09:50:02.403341: Using weighted-bucket historical load forecast over 14 days 2026-08-14 09:50:02.430302: Today's load divergence 116.4%, in-day adjustment 134.01%, damping 0.95x, yesterday 146.81% today 115.58% blend 59.03% 2026-08-14 09:50:02.430419: Today's predicted so far 3.61kWh with 0.0kWh car/iBoost excluded, 1.67kWh import ignored, and 5.28kWh forecast extra. 2026-08-14 09:50:02.430452: Today's actual load so far 6.05kWh with 0.0kWh car/iBoost excluded, and 3.07kWh import ignored. 2026-08-14 09:50:02.465263: Inverter 0: Type SK Sunsynk 2026-08-14 09:50:02.465354: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 09:50:02.465599: Reserve min: 7%, battery_min: 7% 2026-08-14 09:50:02.465699: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 09:50:02.466087: Inverter 0 SoC: 1.45kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power 1173W, current battery voltage 51.2V, grid power -55W, load power 1230W, PV Power 0W 2026-08-14 09:50:02.466305: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:50:02.466403: Inverter 0 scheduled charge enable is False 2026-08-14 09:50:02.466432: Inverter 0 charge windows currently [] 2026-08-14 09:50:02.466458: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 09:50:02.466570: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:50:02.466606: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:50:02.466641: Inverter 0 scheduled discharge enable is False 2026-08-14 09:50:02.466768: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:50:02.466806: Inverter 0 discharge windows currently [] 2026-08-14 09:50:02.466828: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:50:02.466851: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:50:02.466869: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:50:02.539098: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 09:50:02.539228: Plan was last updated on 2026-08-14 09:45:00+01:00 and is now 5.0 minutes old 2026-08-14 09:50:02.539497: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 09:50:02.539540: Best export window [ ] 2026-08-14 09:50:02.540429: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 09:50:02.543550: Load divergence over 8.0 hours mean 430.18W, min 235.2W, max 1260.6W, std dev 174.74W, divergence 20.31% 2026-08-14 09:50:02.557661: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 09:50:02.557753: LoadML is_calculating False 2026-08-14 09:50:02.557821: Creating pool of 12 processes to match your CPU count 2026-08-14 09:50:02.670128: predict base end_record 08-15 13:05:00, final soc 1.12kWh, metric 914.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:10:00, load 29.72kWh, PV 0.0kWh 2026-08-14 09:50:02.785846: Battery has 0.33 hours left - now at 1.45kWh 2026-08-14 09:50:02.829077: predict base10 end_record 08-15 13:05:00, final soc 1.12kWh, metric 942.84p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:10:00, load 30.7kWh, PV 0.0kWh 2026-08-14 09:50:02.903654: predict best10 end_record 08-15 13:05:00, final soc 3.38kWh, metric 903.11p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:10:00, load 30.7kWh, PV 0.0kWh 2026-08-14 09:50:02.981472: predict best end_record 08-15 13:05:00, final soc 3.84kWh, metric 889.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:10:00, load 29.72kWh, PV 0.0kWh 2026-08-14 09:50:02.981585: Saving plan best values to HA entities 2026-08-14 09:50:03.160792: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 09:50:03.166570: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 09:50:03.172088: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.02kWh, house 5.08kWh, export 0.0kWh, metric 889.9p, metric10 903.11p 2026-08-14 09:50:03.251989: Marginal costs baseline metric (no standing charge): 839.9213 2026-08-14 09:50:03.471153: Marginal energy costs matrix computed: min=21.82 max=39.18 2026-08-14 09:50:03.539596: Rate array import [{'start': 590, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2225, 'rate': 'cheap', 'range': '(21.9p - 32.0p)'}] export [{'start': 590, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 09:50:03.540115: - Your estimated bill for today is £6.99 and tomorrow is £7.00 2026-08-14 09:50:03.540153: - Import rates are cheap (21.7p - 24.7p) for the next 6 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 09:50:03.540171: - The battery is currently at 9% and is in eco mode for the next 2 and three quarters hours. 2026-08-14 09:50:03.540201: - For the next 48 hours there will be no solar generation. 2026-08-14 09:50:03.540216: - You will run out of battery in 20 minutes. 2026-08-14 09:50:03.540230: - Your next charge slot will be in 2 and three quarters hours where import rates will be cheap (22.2p). 2026-08-14 09:50:03.540248: 2026-08-14 09:50:03.586110: Plan calculation took 1.05 seconds 2026-08-14 09:50:03.592270: No high rate period found 2026-08-14 09:50:03.640494: Import threshold used for optimisation was 24.94p 2026-08-14 09:50:03.686769: Low import rate windows [0: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 1: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 2: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 3: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 4: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 5: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 6: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 7: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 8: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 9: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 10: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 11: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 12: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 13: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 14: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 15: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 16: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 17: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 18: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 19: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 20: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 21: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 22: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 23: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 24: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 25: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 26: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 27: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 28: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 29: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 30: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 31: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 32: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 33: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 34: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 35: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 36: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 37: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 38: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 39: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 40: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 41: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 42: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 43: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 44: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 45: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 46: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 47: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 48: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 49: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 50: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 51: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 52: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 53: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 54: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 55: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 56: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 57: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 58: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 59: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 60: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 61: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 62: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 63: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 64: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 65: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 66: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 67: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 68: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 69: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 70: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 71: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 72: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 73: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 74: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 75: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 76: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 77: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 78: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 79: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 80: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 81: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 82: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 83: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 84: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 85: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 86: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 87: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 88: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 89: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 90: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 91: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84, 92: 08-16 08:30:00 - 08-16 09:00:00 @ 24.56, 93: 08-16 09:00:00 - 08-16 09:30:00 @ 23.79, 94: 08-16 09:30:00 - 08-16 10:00:00 @ 24.72] 2026-08-14 09:50:03.694074: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-14 09:50:03.694208: Inverter 0 disabled charge window while waiting for schedule (now 08-14 09:50:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 09:50:03.694315: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:50:03.694572: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:50:03.694665: No export window planned 2026-08-14 09:50:03.694777: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 09:50:03.694841: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:50:03.694950: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:50:03.695115: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 09:50:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 09:50:03.695166: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 09:50:03.695233: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 09:50:03.695324: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:50:03.695357: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:50:03.695380: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:50:03.695419: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:50:03.695441: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:50:03.695466: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:50:03.695487: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:50:03.695541: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:50:03.695564: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:50:03.695585: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:50:03.695604: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:50:03.695629: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:50:03.695651: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:50:03.695670: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:50:03.695686: Inverter 0 count register writes 0 2026-08-14 09:50:03.710972: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 09:50:03.716039: Total inverter register writes now 806 2026-08-14 09:50:03.744477: Info: Completed run status Demand 2026-08-14 09:50:03.749612: Info: record_status Demand 2026-08-14 09:50:03.755357: Saved current settings to /config/predbat_config.json 2026-08-14 09:50:03.755623: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 09:50:38.858688: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:50:38.858955: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:50:38.858999: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:50:38.859229: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:50:38.859278: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:50:38.859301: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:50:38.859318: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:52:39.076315: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:52:39.076606: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:52:39.076661: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:52:39.076851: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:52:39.076899: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:52:39.076935: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:52:39.077009: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:54:39.299981: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:54:39.300268: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:54:39.300314: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:54:39.300446: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:54:39.300485: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:54:39.300529: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:54:39.300550: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:55:00.397878: --------------- PredBat - update at 2026-08-14 09:55:00+01:00 with clock skew 0 minutes, minutes now 595 2026-08-14 09:55:00.398923: Saved current settings to /config/predbat_config.json 2026-08-14 09:55:00.399136: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 20.0 minutes 2026-08-14 09:55:00.399266: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 09:55:00.399420: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 09:55:00.418464: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 09:55:00.418613: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 09:55:00.419300: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 09:55:00.419418: Predbat mode is set to Control charge & discharge 2026-08-14 09:55:00.594302: Found 21602 load_today datapoints going back 28 days 2026-08-14 09:55:00.594450: Using load_power data to fill gaps in load_today data 2026-08-14 09:55:01.374652: Processing 721 30-minute periods for power integration 2026-08-14 09:55:01.522774: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 09:55:01.522915: Car charging hold False, threshold 6.0kWh 2026-08-14 09:55:01.522955: Current data so far today: load 9.2kWh, import 9.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 09:55:01.536091: Cars: SoC: [15.822000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 09:55:01.536803: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 09:55:01.536875: Standing charge is set to 49.98p 2026-08-14 09:55:01.558686: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 09:55:01.558825: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 09:55:01.559084: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 25.0 minutes 2026-08-14 09:55:01.559668: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 25.0 minutes 2026-08-14 09:55:01.563124: Loaded 47 datapoints of futurerate analysis 2026-08-14 09:55:01.651635: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 09:55:01.706004: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 09:55:01.710708: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 09:55:01.711238: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 09:55:01.749464: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 09:55:01.749579: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 09:55:01.750629: High export rate found rates in range 99p to -99p 2026-08-14 09:55:01.822768: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 09:55:01.823207: Car 0 charging is not planned as it is not plugged in 2026-08-14 09:55:01.836802: Battery level now 1.45kWh, -1hr ago 1.6kWh, at midnight 2.43kWh, battery value change in the last hour -3.54p, change today -22.93p, rate_forward 23.31p 2026-08-14 09:55:01.837409: Last hour: net energy 0.7kWh, import 0.7kWh, export 0.0kWh, car 0kWh, load 0.9kWh, net cost 16.67p, import 16.67p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 09:55:01.897421: Today's energy total net 9.4kWh, import 9.4kWh, export 0.0kWh, cost 286.94p, import 236.95p, export 0.0p, carbon 0.0kg 2026-08-14 09:55:01.897565: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 09:55:01.972696: Using weighted-bucket historical load forecast over 14 days 2026-08-14 09:55:01.994614: Today's load divergence 116.77%, in-day adjustment 134.05%, damping 0.95x, yesterday 146.81% today 115.93% blend 58.68% 2026-08-14 09:55:01.994688: Today's predicted so far 3.63kWh with 0.0kWh car/iBoost excluded, 1.69kWh import ignored, and 5.32kWh forecast extra. 2026-08-14 09:55:01.994715: Today's actual load so far 6.13kWh with 0.0kWh car/iBoost excluded, and 2.99kWh import ignored. 2026-08-14 09:55:02.046867: Inverter 0: Type SK Sunsynk 2026-08-14 09:55:02.046962: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 09:55:02.047216: Reserve min: 7%, battery_min: 7% 2026-08-14 09:55:02.047320: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 09:55:02.047638: Inverter 0 SoC: 1.45kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4513W, current battery voltage 51.2V, grid power -6150W, load power 1154W, PV Power 0W 2026-08-14 09:55:02.047832: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:55:02.047940: Inverter 0 scheduled charge enable is False 2026-08-14 09:55:02.047983: Inverter 0 charge windows currently [] 2026-08-14 09:55:02.048025: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 09:55:02.048277: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:55:02.048343: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:55:02.048407: Inverter 0 scheduled discharge enable is False 2026-08-14 09:55:02.048609: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:55:02.048656: Inverter 0 discharge windows currently [] 2026-08-14 09:55:02.048696: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:55:02.048733: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:55:02.048773: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:55:02.113650: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 09:55:02.113814: Plan was last updated on 2026-08-14 09:45:00+01:00 and is now 10.0 minutes old 2026-08-14 09:55:02.114112: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 09:55:02.114175: Best export window [ ] 2026-08-14 09:55:02.115133: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 09:55:02.118597: Load divergence over 8.0 hours mean 428.18W, min 247.2W, max 1439.4W, std dev 192.81W, divergence 22.52% 2026-08-14 09:55:02.132542: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 09:55:02.132655: LoadML is_calculating False 2026-08-14 09:55:02.132723: Creating pool of 12 processes to match your CPU count 2026-08-14 09:55:02.252436: predict base end_record 08-15 13:10:00, final soc 1.12kWh, metric 914.77p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 29.77kWh, PV 0.0kWh 2026-08-14 09:55:02.375992: Battery has 0.33 hours left - now at 1.45kWh 2026-08-14 09:55:02.420489: predict base10 end_record 08-15 13:10:00, final soc 1.12kWh, metric 942.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 30.75kWh, PV 0.0kWh 2026-08-14 09:55:02.502794: predict best10 end_record 08-15 13:10:00, final soc 3.71kWh, metric 910.48p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 30.75kWh, PV 0.0kWh 2026-08-14 09:55:02.579409: predict best end_record 08-15 13:10:00, final soc 4.22kWh, metric 898.81p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 29.77kWh, PV 0.0kWh 2026-08-14 09:55:02.579503: Saving plan best values to HA entities 2026-08-14 09:55:02.737258: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 09:55:02.742896: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 09:55:02.748767: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.03kWh, house 5.0kWh, export 0.0kWh, metric 898.81p, metric10 910.48p 2026-08-14 09:55:02.828649: Marginal costs baseline metric (no standing charge): 848.8286 2026-08-14 09:55:03.106364: Marginal energy costs matrix computed: min=21.84 max=39.44 2026-08-14 09:55:03.189055: Rate array import [{'start': 595, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2230, 'rate': 'cheap', 'range': '(21.9p - 32.0p)'}] export [{'start': 595, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 09:55:03.189631: - Your estimated bill for today is £6.97 and tomorrow is £7.00 2026-08-14 09:55:03.189671: - Import rates are cheap (21.7p - 24.7p) for the next 6 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 09:55:03.189690: - The battery is currently at 9% and is in eco mode for the next 2 and a half hours. 2026-08-14 09:55:03.189704: - For the next 48 hours there will be no solar generation. 2026-08-14 09:55:03.189718: - You will run out of battery in 20 minutes. 2026-08-14 09:55:03.189732: - Your next charge slot will be in 2 and a half hours where import rates will be cheap (22.2p). 2026-08-14 09:55:03.189746: 2026-08-14 09:55:03.244302: Plan calculation took 1.13 seconds 2026-08-14 09:55:03.247233: No high rate period found 2026-08-14 09:55:03.304125: Import threshold used for optimisation was 24.94p 2026-08-14 09:55:03.364311: Low import rate windows [0: 08-14 09:30:00 - 08-14 10:00:00 @ 24.72, 1: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 2: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 3: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 4: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 5: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 6: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 7: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 8: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 9: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 10: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 11: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 12: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 13: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 14: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 15: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 16: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 17: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 18: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 19: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 20: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 21: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 22: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 23: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 24: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 25: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 26: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 27: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 28: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 29: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 30: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 31: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 32: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 33: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 34: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 35: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 36: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 37: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 38: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 39: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 40: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 41: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 42: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 43: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 44: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 45: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 46: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 47: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 48: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 49: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 50: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 51: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 52: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 53: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 54: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 55: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 56: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 57: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 58: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 59: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 60: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 61: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 62: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 63: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 64: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 65: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 66: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 67: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 68: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 69: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 70: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 71: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 72: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 73: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 74: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 75: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 76: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 77: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 78: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 79: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 80: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 81: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 82: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 83: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 84: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 85: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 86: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 87: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 88: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 89: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 90: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 91: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84, 92: 08-16 08:30:00 - 08-16 09:00:00 @ 24.56, 93: 08-16 09:00:00 - 08-16 09:30:00 @ 23.79, 94: 08-16 09:30:00 - 08-16 10:00:00 @ 24.72] 2026-08-14 09:55:03.371881: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-14 09:55:03.372015: Inverter 0 disabled charge window while waiting for schedule (now 08-14 09:55:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 09:55:03.372184: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:55:03.372442: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:55:03.372548: No export window planned 2026-08-14 09:55:03.372682: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 09:55:03.372725: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:55:03.372859: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:55:03.373138: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 09:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 09:55:03.373228: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 09:55:03.373304: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 09:55:03.373405: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:55:03.373445: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:55:03.373473: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:55:03.373498: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:55:03.373523: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:55:03.373553: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:55:03.373579: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:55:03.373643: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:55:03.373679: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:55:03.373706: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:55:03.373739: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:55:03.373764: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:55:03.373793: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:55:03.373818: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:55:03.373841: Inverter 0 count register writes 0 2026-08-14 09:55:03.391452: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 09:55:03.391635: Recompute is saving previous plan... 2026-08-14 09:55:03.394798: Best charge window [ 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 0% ] 2026-08-14 09:55:03.394880: Best export window [ ] 2026-08-14 09:55:03.395759: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 09:55:03.398965: Load divergence over 8.0 hours mean 428.18W, min 247.2W, max 1439.4W, std dev 192.81W, divergence 22.52% 2026-08-14 09:55:03.411027: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 09:55:03.411135: LoadML is_calculating False 2026-08-14 09:55:03.411218: Creating pool of 12 processes to match your CPU count 2026-08-14 09:55:03.498877: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 09:55:03.500860: Optimise levels pass started at 2026-08-14 09:55:03 2026-08-14 09:55:03.500916: Optimise all windows, total charge 94 export 1 2026-08-14 09:55:03.809301: >> Region optimisation pass width 960 2026-08-14 09:55:04.206975: >> Region optimisation pass width 480 2026-08-14 09:55:04.580337: >> Region optimisation pass width 240 2026-08-14 09:55:05.129550: >> Region optimisation pass width 120 2026-08-14 09:55:06.163435: Calculated end_record as 08-15 13:00:00 based on best_price 22.25p, next_charge_start 08-14 13:00:00, max_windows 54 2026-08-14 09:55:06.163558: Optimise levels pass ended at 2026-08-14 09:55:06, duration 2.7 seconds tried 325 combinations 2026-08-14 09:55:06.163618: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.25p, best_cost_export 0p, best_metric 1058.34p, best_keep 0kWh, best_cycle 48.88kWh, best_carbon 0kg, best_import 36.92kWh 2026-08-14 09:55:06.185656: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.25p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 09:55:06.187664: Best charge windows best_metric 750.55p, best_cost 772.39p, best_carbon 0kg, best_import 50.23kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 84%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:55:06.187970: Best export windows best_metric 750.55p, best_cost 772.39p, best_carbon 0kg, best_import 50.23kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:55:06.188106: Optimise price set 23.8p, pass trim_import, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 750.55p, best_cost 772.39p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:06.237100: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 750.29p, best_cost 772.08p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:06.331389: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 750.29p, best_cost 772.08p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:06.468437: Best charge windows best_metric 750.29p, best_cost 772.08p, best_carbon 0kg, best_import 50.23kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:55:06.468581: Best export windows best_metric 750.29p, best_cost 772.08p, best_carbon 0kg, best_import 50.23kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:55:06.470632: Best charge windows best_metric 750.29p, best_cost 772.08p, best_carbon 0kg, best_import 50.23kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 84%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:55:06.470759: Best export windows best_metric 750.29p, best_cost 772.08p, best_carbon 0kg, best_import 50.23kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:55:06.470886: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 750.29p, best_cost 772.08p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:06.722554: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 749.82p, best_cost 772.02p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:06.808872: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 749.82p, best_cost 772.02p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:06.949680: Best charge windows best_metric 749.82p, best_cost 772.02p, best_carbon 0kg, best_import 50.23kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:55:06.949822: Best export windows best_metric 749.82p, best_cost 772.02p, best_carbon 0kg, best_import 50.23kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:55:06.951185: Best charge windows best_metric 749.82p, best_cost 772.02p, best_carbon 0kg, best_import 50.23kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:55:06.951284: Best export windows best_metric 749.82p, best_cost 772.02p, best_carbon 0kg, best_import 50.23kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:55:06.951415: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 749.82p, best_cost 772.02p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:07.033902: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 749.82p, best_cost 772.02p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:07.121072: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 749.82p, best_cost 772.02p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:07.248993: Best charge windows best_metric 749.82p, best_cost 772.02p, best_carbon 0kg, best_import 50.23kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:55:07.249313: Best export windows best_metric 749.82p, best_cost 772.02p, best_carbon 0kg, best_import 50.23kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:55:07.249441: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.25p, best_metric 749.82p, best_cost 772.02p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:07.367561: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.25p, best_metric 749.82p, best_cost 772.02p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:07.443676: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.25p, best_metric 749.82p, best_cost 772.02p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:07.688718: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.25p, best_metric 749.82p, best_cost 772.02p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:07.748204: Optimise price set 24.4p, pass low, price 22.68p, start_at_low True, best_price_charge 22.25p, best_metric 749.82p, best_cost 772.02p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:07.817903: Optimise price set 25.6p, pass low, price 23.79p, start_at_low True, best_price_charge 22.25p, best_metric 749.82p, best_cost 772.02p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:07.846968: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.25p, best_metric 749.82p, best_cost 772.02p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:07.909772: Optimise price set 26.4p, pass low, price 24.64p, start_at_low True, best_price_charge 22.25p, best_metric 749.82p, best_cost 772.02p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:07.991902: Optimise price set 26.6p, pass low, price 24.84p, start_at_low True, best_price_charge 22.25p, best_metric 749.59p, best_cost 772.02p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:08.175328: Optimise price set 26.8p, pass low, price 24.94p, start_at_low True, best_price_charge 22.25p, best_metric 749.52p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:08.221865: Optimise price set 27.0p, pass low, price 25.06p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:08.265681: Optimise price set 27.4p, pass low, price 25.57p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:08.303867: Optimise price set 28.2p, pass low, price 26.27p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:08.352103: Optimise price set 29.0p, pass low, price 26.97p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:08.395212: Optimise price set 29.2p, pass low, price 27.23p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:08.494958: Optimise price set 30.0p, pass low, price 28.02p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:08.537624: Optimise price set 30.6p, pass low, price 28.58p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:08.575727: Optimise price set 31.2p, pass low, price 29.04p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:08.619833: Optimise price set 31.4p, pass low, price 29.31p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:08.659849: Optimise price set 31.6p, pass low, price 29.41p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:08.703962: Optimise price set 31.8p, pass low, price 29.55p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:08.745519: Optimise price set 32.2p, pass low, price 30.01p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:08.788162: Optimise price set 32.8p, pass low, price 30.48p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:08.829128: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:08.875994: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:08.927130: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:08.977565: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:09.020867: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:09.061347: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:09.096372: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:09.138392: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:09.182635: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:09.220804: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:09.261395: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:09.304344: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:09.342660: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:09.385425: Best charge windows best_metric 749.48p, best_cost 772.01p, best_carbon 0kg, best_import 50.23kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:55:09.385635: Best export windows best_metric 749.48p, best_cost 772.01p, best_carbon 0kg, best_import 50.23kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:55:09.387320: Best charge windows best_metric 749.48p, best_cost 772.01p, best_carbon 0kg, best_import 50.23kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 22%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:55:09.388015: Best export windows best_metric 749.48p, best_cost 772.01p, best_carbon 0kg, best_import 50.23kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:55:09.388219: Optimise price set 26.8p, pass trim_import, price 24.94p, start_at_low False, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:09.435085: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:09.515614: Optimise price set 26.4p, pass trim_import, price 24.64p, start_at_low False, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:09.551330: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:09.638971: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 749.48p, best_cost 772.01p, best_cycle 25.09kWh, best_carbon 0kg, best_import 50.23kWh 2026-08-14 09:55:09.753223: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 749.27p, best_cost 771.74p, best_cycle 24.09kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 09:55:09.889479: Best charge windows best_metric 749.27p, best_cost 771.74p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 84%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 81%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 22%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:55:09.889708: Best export windows best_metric 749.27p, best_cost 771.74p, best_carbon 0kg, best_import 50.16kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:55:09.889868: Optimise price set 26.8p, pass normal, price 24.94p, start_at_low False, best_price_charge 22.25p, best_metric 749.27p, best_cost 771.74p, best_cycle 24.09kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 09:55:09.933746: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 749.27p, best_cost 771.74p, best_cycle 24.09kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 09:55:10.034060: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 749.26p, best_cost 771.76p, best_cycle 24.09kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 09:55:10.281351: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 749.26p, best_cost 771.76p, best_cycle 24.09kWh, best_carbon 0kg, best_import 50.16kWh 2026-08-14 09:55:10.367138: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 749.23p, best_cost 771.5p, best_cycle 23.09kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:55:10.514245: Best charge windows best_metric 749.23p, best_cost 771.5p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:55:10.514383: Best export windows best_metric 749.23p, best_cost 771.5p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:55:10.515908: Best charge windows best_metric 749.23p, best_cost 771.5p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:55:10.516002: Best export windows best_metric 749.23p, best_cost 771.5p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:55:10.516134: Optimise price set 26.8p, pass trim_import, price 24.94p, start_at_low False, best_price_charge 22.25p, best_metric 749.23p, best_cost 771.5p, best_cycle 23.09kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:55:10.566535: Optimise price set 26.6p, pass trim_import, price 24.69p, start_at_low False, best_price_charge 22.25p, best_metric 749.23p, best_cost 771.5p, best_cycle 23.09kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:55:10.656002: Optimise price set 23.8p, pass trim_import, price 22.19p, start_at_low False, best_price_charge 22.25p, best_metric 749.23p, best_cost 771.5p, best_cycle 23.09kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:55:10.744494: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.25p, best_metric 749.23p, best_cost 771.5p, best_cycle 23.09kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:55:10.830477: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.25p, best_metric 749.23p, best_cost 771.5p, best_cycle 23.09kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:55:10.968228: Best charge windows best_metric 749.23p, best_cost 771.5p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:55:10.968462: Best export windows best_metric 749.23p, best_cost 771.5p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:55:10.968677: Optimise price set 26.8p, pass normal, price 24.94p, start_at_low False, best_price_charge 22.25p, best_metric 749.23p, best_cost 771.5p, best_cycle 23.09kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:55:11.015871: Optimise price set 26.6p, pass normal, price 24.8p, start_at_low False, best_price_charge 22.25p, best_metric 749.23p, best_cost 771.5p, best_cycle 23.09kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:55:11.096679: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.25p, best_metric 749.23p, best_cost 771.5p, best_cycle 23.09kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:55:11.325365: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.25p, best_metric 749.23p, best_cost 771.5p, best_cycle 23.09kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:55:11.398941: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.25p, best_metric 749.23p, best_cost 771.5p, best_cycle 23.09kWh, best_carbon 0kg, best_import 50.09kWh 2026-08-14 09:55:11.524647: Best charge windows best_metric 749.23p, best_cost 771.5p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] 2026-08-14 09:55:11.524793: Best export windows best_metric 749.23p, best_cost 771.5p, best_carbon 0kg, best_import 50.09kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 09:55:11.525091: Tweak plan optimisation started 2026-08-14 09:55:11.804928: Tweak optimisation finished metric 749.23 cost 771.5 metric_keep 0 cycle 23.09 carbon 0 import 50.09 2026-08-14 09:55:11.825036: Swap charge optimisation started metric 749.23p, cost 771.5p, min_improvement_swap 0.1p 2026-08-14 09:55:15.608357: Swap charge optimisation finished metric 749.23p, cost 771.5p 2026-08-14 09:55:15.618585: Raw charge windows [ 14-08 09:30:00 - 14-08 10:00:00 @ 24.72p 0%, 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 84%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 29.41p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.04p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 27.14p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 26.27p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 25.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 24.94p 25%, 15-08 02:00:00 - 15-08 02:30:00 @ 24.8p 25%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.64p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.06p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 04:00:00 - 15-08 04:30:00 @ 26.97p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 27.23p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 29.31p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 30.01p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 29.55p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 30.48p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 28.02p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 28.58p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 24.84p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 24.56p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.79p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 24.72p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 24.17p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 22.68p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 22.55p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 22.19p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 22.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 22.19p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 21.85p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 21.77p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 21.7p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 22.01p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 22.25p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 37.06p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 36.88p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 43.94p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 45.69p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 50.94p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 40.1p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 42.31p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 39.75p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 40.38p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 35.1p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 34.68p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.99p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 30.81p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 29.41p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.04p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 27.14p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 26.27p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 25.57p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 24.94p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 24.8p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.64p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.06p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.69p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 26.97p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 27.23p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 29.31p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 30.01p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 29.55p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 30.48p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 28.02p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 28.58p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 24.84p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 24.56p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.79p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 24.72p 100% ] reserve 1.12 2026-08-14 09:55:15.619210: Unclipped charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:30:00 @ 21.73p 84%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 01:30:00 - 15-08 02:30:00 @ 24.87p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 13:00:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 10:00:00 @ 24.73p 100% ] reserve 1.12 2026-08-14 09:55:15.619557: Unfiltered charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:30:00 @ 21.73p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 01:30:00 - 15-08 02:30:00 @ 24.87p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 13:00:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 10:00:00 @ 24.73p 100% ] reserve 1.12 2026-08-14 09:55:15.619801: Filtered charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 15:00:00 @ 21.9p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 01:30:00 - 15-08 02:30:00 @ 24.87p 25%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.69p 19%, 15-08 13:00:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 10:00:00 @ 24.73p 100% ] reserve 1.12 2026-08-14 09:55:15.649124: Previous plan best metric is 750.96 (cost 827.78) and new plan best metric is 749.23 (cost 771.5) 2026-08-14 09:55:15.649320: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 09:55:15.649483: Plan valid is now true after recompute was False 2026-08-14 09:55:15.672298: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 911.92p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 29.64kWh, PV 0.0kWh 2026-08-14 09:55:15.777469: Battery has 0.33 hours left - now at 1.45kWh 2026-08-14 09:55:15.814830: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 939.64p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 30.61kWh, PV 0.0kWh 2026-08-14 09:55:15.885086: predict best10 end_record 08-15 13:00:00, final soc 3.06kWh, metric 892.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 30.61kWh, PV 0.0kWh 2026-08-14 09:55:15.953990: predict best end_record 08-15 13:00:00, final soc 3.45kWh, metric 877.76p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 29.64kWh, PV 0.0kWh 2026-08-14 09:55:15.954075: Saving plan best values to HA entities 2026-08-14 09:55:16.102943: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 09:55:16.108200: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 09:55:16.113635: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.03kWh, house 5.0kWh, export 0.0kWh, metric 877.76p, metric10 892.32p 2026-08-14 09:55:16.183669: Marginal costs baseline metric (no standing charge): 827.7771 2026-08-14 09:55:16.404661: Marginal energy costs matrix computed: min=21.84 max=39.44 2026-08-14 09:55:16.475883: Rate array import [{'start': 595, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2220, 'rate': 'cheap', 'range': '(22.2p - 32.0p)'}] export [{'start': 595, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 09:55:16.476519: - Your estimated bill for today is £6.97 and tomorrow is £7.00 2026-08-14 09:55:16.476563: - Import rates are cheap (21.7p - 24.7p) for the next 6 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 09:55:16.476584: - The battery is currently at 9% and is in eco mode for the next 2 and a half hours. 2026-08-14 09:55:16.476599: - For the next 48 hours there will be no solar generation. 2026-08-14 09:55:16.476613: - You will run out of battery in 20 minutes. 2026-08-14 09:55:16.476627: - Your next charge slot will be in 2 and a half hours where import rates will be cheap (22.2p). 2026-08-14 09:55:16.476641: 2026-08-14 09:55:16.526414: Plan calculation took 13.13 seconds 2026-08-14 09:55:16.526737: Inverter 0: Type SK Sunsynk 2026-08-14 09:55:16.526778: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 09:55:16.526999: Reserve min: 7%, battery_min: 7% 2026-08-14 09:55:16.527064: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 09:55:16.527395: Inverter 0 SoC: 1.41kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4503W, current battery voltage 51.2V, grid power -6020W, load power 1026W, PV Power 0W 2026-08-14 09:55:16.527591: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:55:16.527680: Inverter 0 scheduled charge enable is False 2026-08-14 09:55:16.527708: Inverter 0 charge windows currently [] 2026-08-14 09:55:16.527734: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 09:55:16.527824: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:55:16.527854: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:55:16.527884: Inverter 0 scheduled discharge enable is False 2026-08-14 09:55:16.527991: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:55:16.528022: Inverter 0 discharge windows currently [] 2026-08-14 09:55:16.528044: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:55:16.528064: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:55:16.528078: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:55:16.587727: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-14 09:55:16.587904: Inverter 0 disabled charge window while waiting for schedule (now 08-14 09:55:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 09:55:16.587976: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:55:16.588127: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:55:16.588212: No export window planned 2026-08-14 09:55:16.588312: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 09:55:16.588340: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 09:55:16.588454: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 09:55:16.588598: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 09:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 09:55:16.588645: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 09:55:16.588693: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 09:55:16.588773: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:55:16.588807: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:55:16.588829: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:55:16.588849: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:55:16.588874: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:55:16.588895: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:55:16.588935: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 09:55:16.589052: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:55:16.589101: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:55:16.589173: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:55:16.589220: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:55:16.589243: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:55:16.589265: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:55:16.589285: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 09:55:16.589302: Inverter 0 count register writes 0 2026-08-14 09:55:16.612980: Total inverter register writes now 806 2026-08-14 09:55:16.648263: Info: Completed run status Demand 2026-08-14 09:55:16.655517: Info: record_status Demand 2026-08-14 09:55:16.662925: Saved current settings to /config/predbat_config.json 2026-08-14 09:55:16.663336: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 09:55:53.774791: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:55:53.775041: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:55:53.775096: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:55:53.775264: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:55:53.775308: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:55:53.775330: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:55:53.775349: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:56:58.111957: Info: HAHistory: Pruning history data started. 2026-08-14 09:56:58.116058: Info: HAHistory: Pruning history data completed. 2026-08-14 09:57:54.001546: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:57:54.001821: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:57:54.001858: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:57:54.002028: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:57:54.002068: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:57:54.002090: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:57:54.002107: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 09:59:54.220548: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 09:59:54.220811: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 09:59:54.220854: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 09:59:54.221047: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 09:59:54.221090: Note: Inverter does not support discharge freeze - disabled 2026-08-14 09:59:54.221112: Note: Inverter does not support charge freeze - disabled 2026-08-14 09:59:54.221150: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:00:00.309301: --------------- PredBat - update at 2026-08-14 10:00:00+01:00 with clock skew 0 minutes, minutes now 600 2026-08-14 10:00:00.310073: Saved current settings to /config/predbat_config.json 2026-08-14 10:00:00.310271: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 25.0 minutes 2026-08-14 10:00:00.310355: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 10:00:00.310456: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 10:00:00.329141: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 10:00:00.329274: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 10:00:00.329887: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 10:00:00.330004: Predbat mode is set to Control charge & discharge 2026-08-14 10:00:00.519930: Found 21602 load_today datapoints going back 27 days 2026-08-14 10:00:00.520210: Using load_power data to fill gaps in load_today data 2026-08-14 10:00:01.412844: Processing 721 30-minute periods for power integration 2026-08-14 10:00:01.571892: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 10:00:01.572026: Car charging hold False, threshold 6.0kWh 2026-08-14 10:00:01.572063: Current data so far today: load 9.4kWh, import 9.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 10:00:01.583472: Cars: SoC: [15.822000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 10:00:01.584128: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 10:00:01.584198: Standing charge is set to 49.98p 2026-08-14 10:00:01.617799: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 10:00:01.617911: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 10:00:01.618114: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 30.0 minutes 2026-08-14 10:00:01.618520: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 30.0 minutes 2026-08-14 10:00:01.621745: Loaded 47 datapoints of futurerate analysis 2026-08-14 10:00:01.717559: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08'] 2026-08-14 10:00:01.787201: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 10:00:01.792359: Rate min forward looking: now 21.7p at end of forecast 21.7p 2026-08-14 10:00:01.792687: Import rates: min 21.7p, max 53.39p, average 29.59p 2026-08-14 10:00:01.834080: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 10:00:01.834225: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 10:00:01.835405: High export rate found rates in range 99p to -99p 2026-08-14 10:00:01.938424: Low Import rate found rates in range 21.7p to 50.94p 2026-08-14 10:00:01.938615: Car 0 charging is not planned as it is not plugged in 2026-08-14 10:00:01.954537: Battery level now 1.45kWh, -1hr ago 1.6kWh, at midnight 2.43kWh, battery value change in the last hour -3.54p, change today -22.93p, rate_forward 23.31p 2026-08-14 10:00:01.954979: Last hour: net energy 0.68kWh, import 0.68kWh, export 0.0kWh, car 0kWh, load 1.05kWh, net cost 16.06p, import 16.06p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 10:00:02.021114: Today's energy total net 9.4kWh, import 9.4kWh, export 0.0kWh, cost 286.94p, import 236.95p, export 0.0p, carbon 0.0kg 2026-08-14 10:00:02.021293: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 10:00:02.120278: Using weighted-bucket historical load forecast over 14 days 2026-08-14 10:00:02.147334: Today's load divergence 116.91%, in-day adjustment 134.0%, damping 0.95x, yesterday 146.81% today 116.07% blend 58.33% 2026-08-14 10:00:02.147444: Today's predicted so far 3.92kWh with 0.0kWh car/iBoost excluded, 1.5kWh import ignored, and 5.42kWh forecast extra. 2026-08-14 10:00:02.147478: Today's actual load so far 6.48kWh with 0.0kWh car/iBoost excluded, and 2.94kWh import ignored. 2026-08-14 10:00:02.185229: Inverter 0: Type SK Sunsynk 2026-08-14 10:00:02.185333: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:00:02.185609: Reserve min: 7%, battery_min: 7% 2026-08-14 10:00:02.185725: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:00:02.186068: Inverter 0 SoC: 1.41kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4501W, current battery voltage 51.2V, grid power -6126W, load power 1130W, PV Power 0W 2026-08-14 10:00:02.186329: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:00:02.186466: Inverter 0 scheduled charge enable is False 2026-08-14 10:00:02.186520: Inverter 0 charge windows currently [] 2026-08-14 10:00:02.186571: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:00:02.186767: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:00:02.186820: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:00:02.186891: Inverter 0 scheduled discharge enable is False 2026-08-14 10:00:02.187093: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:00:02.187164: Inverter 0 discharge windows currently [] 2026-08-14 10:00:02.187209: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:00:02.187247: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:00:02.187290: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:00:02.316806: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 10:00:02.317036: Plan was last updated on 2026-08-14 09:55:00+01:00 and is now 5.0 minutes old 2026-08-14 10:00:02.317580: Best charge window [ 14-08 12:30:00 - 14-08 15:00:00 @ 21.91p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 81%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 84%, 15-08 02:00:00 - 15-08 03:00:00 @ 24.72p 25%, 15-08 12:30:00 - 15-08 18:30:00 @ 46.53p 100%, 15-08 19:00:00 - 16-08 05:00:00 @ 26.57p 100% ] 2026-08-14 10:00:02.317650: Best export window [ ] 2026-08-14 10:00:02.318530: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:00:02.322813: Load divergence over 8.0 hours mean 426.71W, min 239.4W, max 1403.4W, std dev 186.32W, divergence 21.83% 2026-08-14 10:00:02.340287: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:00:02.340454: LoadML is_calculating False 2026-08-14 10:00:02.340527: Creating pool of 12 processes to match your CPU count 2026-08-14 10:00:02.474270: predict base end_record 08-15 13:05:00, final soc 1.12kWh, metric 912.05p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 29.82kWh, PV 0.0kWh 2026-08-14 10:00:02.615047: Battery has 0.25 hours left - now at 1.41kWh 2026-08-14 10:00:02.670518: predict base10 end_record 08-15 13:05:00, final soc 1.12kWh, metric 939.71p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 30.79kWh, PV 0.0kWh 2026-08-14 10:00:02.760205: predict best10 end_record 08-15 13:05:00, final soc 3.38kWh, metric 900.17p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 30.79kWh, PV 0.0kWh 2026-08-14 10:00:02.875873: predict best end_record 08-15 13:05:00, final soc 3.84kWh, metric 887.2p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:15:00, load 29.82kWh, PV 0.0kWh 2026-08-14 10:00:02.875989: Saving plan best values to HA entities 2026-08-14 10:00:03.077829: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 10:00:03.085157: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 10:00:03.091944: Best charging limit SoC's [16.0, 13.0, 13.5, 4.0, 16.0, 16.0]kWh, export []kWh gives import battery 43.02kWh, house 4.96kWh, export 0.0kWh, metric 887.2p, metric10 900.17p 2026-08-14 10:00:03.187072: Marginal costs baseline metric (no standing charge): 837.219 2026-08-14 10:00:03.482812: Marginal energy costs matrix computed: min=21.86 max=39.71 2026-08-14 10:00:03.571191: Rate array import [{'start': 600, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1320, 'rate': 'expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 2225, 'rate': 'cheap', 'range': '(21.9p - 32.0p)'}] export [{'start': 600, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:00:03.571889: - Your estimated bill for today is £6.97 and tomorrow is £6.97 2026-08-14 10:00:03.571935: - Import rates are cheap (21.7p - 24.2p) for the next 6 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:00:03.571957: - The battery is currently at 9% and is in eco mode for the next 2 and a half hours. 2026-08-14 10:00:03.571976: - For the next 48 hours there will be no solar generation. 2026-08-14 10:00:03.571993: - You will run out of battery in 15 minutes. 2026-08-14 10:00:03.572014: - Your next charge slot will be in 2 and a half hours where import rates will be cheap (22.2p). 2026-08-14 10:00:03.572032: 2026-08-14 10:00:03.630005: Plan calculation took 1.31 seconds 2026-08-14 10:00:03.635506: No high rate period found 2026-08-14 10:00:03.698523: Import threshold used for optimisation was 24.94p 2026-08-14 10:00:03.777207: Low import rate windows [0: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 1: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 2: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 3: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 4: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 5: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 6: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 7: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 8: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 9: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 10: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 11: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 12: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 13: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 14: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 15: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 16: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 17: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 18: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 19: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 20: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 21: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 22: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 23: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 24: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 25: 08-14 23:00:00 - 08-14 23:30:00 @ 29.41, 26: 08-14 23:30:00 - 08-15 00:00:00 @ 29.04, 27: 08-15 00:00:00 - 08-15 00:30:00 @ 27.14, 28: 08-15 00:30:00 - 08-15 01:00:00 @ 26.27, 29: 08-15 01:00:00 - 08-15 01:30:00 @ 25.57, 30: 08-15 01:30:00 - 08-15 02:00:00 @ 24.94, 31: 08-15 02:00:00 - 08-15 02:30:00 @ 24.8, 32: 08-15 02:30:00 - 08-15 03:00:00 @ 24.64, 33: 08-15 03:00:00 - 08-15 03:30:00 @ 25.06, 34: 08-15 03:30:00 - 08-15 04:00:00 @ 24.69, 35: 08-15 04:00:00 - 08-15 04:30:00 @ 26.97, 36: 08-15 04:30:00 - 08-15 05:00:00 @ 27.23, 37: 08-15 05:00:00 - 08-15 05:30:00 @ 29.31, 38: 08-15 05:30:00 - 08-15 06:00:00 @ 30.01, 39: 08-15 06:00:00 - 08-15 06:30:00 @ 29.55, 40: 08-15 06:30:00 - 08-15 07:00:00 @ 30.48, 41: 08-15 07:00:00 - 08-15 07:30:00 @ 28.02, 42: 08-15 07:30:00 - 08-15 08:00:00 @ 28.58, 43: 08-15 08:00:00 - 08-15 08:30:00 @ 24.84, 44: 08-15 08:30:00 - 08-15 09:00:00 @ 24.56, 45: 08-15 09:00:00 - 08-15 09:30:00 @ 23.79, 46: 08-15 09:30:00 - 08-15 10:00:00 @ 24.72, 47: 08-15 10:00:00 - 08-15 10:30:00 @ 24.17, 48: 08-15 10:30:00 - 08-15 11:00:00 @ 22.68, 49: 08-15 11:00:00 - 08-15 11:30:00 @ 22.55, 50: 08-15 11:30:00 - 08-15 12:00:00 @ 22.19, 51: 08-15 12:00:00 - 08-15 12:30:00 @ 22.19, 52: 08-15 12:30:00 - 08-15 13:00:00 @ 22.19, 53: 08-15 13:00:00 - 08-15 13:30:00 @ 21.85, 54: 08-15 13:30:00 - 08-15 14:00:00 @ 21.77, 55: 08-15 14:00:00 - 08-15 14:30:00 @ 21.7, 56: 08-15 14:30:00 - 08-15 15:00:00 @ 22.01, 57: 08-15 15:00:00 - 08-15 15:30:00 @ 22.25, 58: 08-15 15:30:00 - 08-15 16:00:00 @ 22.02, 59: 08-15 16:00:00 - 08-15 16:30:00 @ 37.06, 60: 08-15 16:30:00 - 08-15 17:00:00 @ 36.88, 61: 08-15 17:00:00 - 08-15 17:30:00 @ 43.94, 62: 08-15 17:30:00 - 08-15 18:00:00 @ 45.69, 63: 08-15 18:00:00 - 08-15 18:30:00 @ 50.94, 64: 08-15 19:00:00 - 08-15 19:30:00 @ 40.1, 65: 08-15 19:30:00 - 08-15 20:00:00 @ 42.31, 66: 08-15 20:00:00 - 08-15 20:30:00 @ 39.75, 67: 08-15 20:30:00 - 08-15 21:00:00 @ 40.38, 68: 08-15 21:00:00 - 08-15 21:30:00 @ 35.1, 69: 08-15 21:30:00 - 08-15 22:00:00 @ 34.68, 70: 08-15 22:00:00 - 08-15 22:30:00 @ 31.99, 71: 08-15 22:30:00 - 08-15 23:00:00 @ 30.81, 72: 08-15 23:00:00 - 08-15 23:30:00 @ 29.41, 73: 08-15 23:30:00 - 08-16 00:00:00 @ 29.04, 74: 08-16 00:00:00 - 08-16 00:30:00 @ 27.14, 75: 08-16 00:30:00 - 08-16 01:00:00 @ 26.27, 76: 08-16 01:00:00 - 08-16 01:30:00 @ 25.57, 77: 08-16 01:30:00 - 08-16 02:00:00 @ 24.94, 78: 08-16 02:00:00 - 08-16 02:30:00 @ 24.8, 79: 08-16 02:30:00 - 08-16 03:00:00 @ 24.64, 80: 08-16 03:00:00 - 08-16 03:30:00 @ 25.06, 81: 08-16 03:30:00 - 08-16 04:00:00 @ 24.69, 82: 08-16 04:00:00 - 08-16 04:30:00 @ 26.97, 83: 08-16 04:30:00 - 08-16 05:00:00 @ 27.23, 84: 08-16 05:00:00 - 08-16 05:30:00 @ 29.31, 85: 08-16 05:30:00 - 08-16 06:00:00 @ 30.01, 86: 08-16 06:00:00 - 08-16 06:30:00 @ 29.55, 87: 08-16 06:30:00 - 08-16 07:00:00 @ 30.48, 88: 08-16 07:00:00 - 08-16 07:30:00 @ 28.02, 89: 08-16 07:30:00 - 08-16 08:00:00 @ 28.58, 90: 08-16 08:00:00 - 08-16 08:30:00 @ 24.84, 91: 08-16 08:30:00 - 08-16 09:00:00 @ 24.56, 92: 08-16 09:00:00 - 08-16 09:30:00 @ 23.79, 93: 08-16 09:30:00 - 08-16 10:00:00 @ 24.72] 2026-08-14 10:00:03.787845: Inverter 0 Charge window will be: 2026-08-14 12:30:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-14 10:00:03.787993: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:00:00 target set_window_minutes 30 charge start time 08-14 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 10:00:03.788094: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:00:03.788368: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:00:03.788476: No export window planned 2026-08-14 10:00:03.788615: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:00:03.788659: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:00:03.788820: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:00:03.789096: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:00:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:00:03.789199: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:00:03.789273: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:00:03.789387: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:00:03.789430: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:00:03.789458: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:00:03.789483: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:00:03.789510: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:00:03.789541: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:00:03.789566: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:00:03.789631: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:00:03.789668: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:00:03.789699: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:00:03.789730: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:00:03.789755: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:00:03.789783: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:00:03.789808: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:00:03.789836: Inverter 0 count register writes 0 2026-08-14 10:00:03.807844: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 10:00:03.814219: Total inverter register writes now 806 2026-08-14 10:00:03.849397: Info: Completed run status Demand 2026-08-14 10:00:03.856350: Info: record_status Demand 2026-08-14 10:00:03.863432: Saved current settings to /config/predbat_config.json 2026-08-14 10:00:03.863716: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 10:00:38.971972: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:00:38.972251: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:00:38.972293: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:00:38.972458: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:00:38.972504: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:00:38.972526: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:00:38.972549: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:01:18.988927: Component config save requested: mcp, changes=['mcp_enable'], deletions=[] 2026-08-14 10:01:19.066414: Setting mcp_enable = True 2026-08-14 10:01:19.102102: Component mcp config updated successfully 2026-08-14 10:01:19.108077: Stopping Predbat 2026-08-14 10:01:19.108193: Predbat terminating 2026-08-14 10:01:19.108251: Stopping load_ml interface 2026-08-14 10:01:19.208639: Stopped load_ml interface 2026-08-14 10:01:19.208800: Stopping temperature interface 2026-08-14 10:01:19.309318: Stopped temperature interface 2026-08-14 10:01:19.309464: Stopping mcp interface 2026-08-14 10:01:19.409880: Stopped mcp interface 2026-08-14 10:01:19.410010: Stopping web interface 2026-08-14 10:01:19.510421: Stopped web interface 2026-08-14 10:01:19.510535: Stopping ha_history interface 2026-08-14 10:01:19.565074: LoadMLComponent: Finalizing... 2026-08-14 10:01:19.565194: LoadMLComponent: Stopped 2026-08-14 10:01:19.610874: Stopped ha_history interface 2026-08-14 10:01:19.610973: Stopping ha interface 2026-08-14 10:01:19.663926: Info: Web socket stopping 2026-08-14 10:01:19.664033: Info: Web Socket stopped 2026-08-14 10:01:19.664397: Info: HA interface stopped 2026-08-14 10:01:19.711332: Stopped ha interface 2026-08-14 10:01:19.711459: Stopping storage interface 2026-08-14 10:01:19.811892: Stopped storage interface 2026-08-14 10:01:19.841006: Info: Components stopped 2026-08-14 10:01:19.841216: Predbat terminated 2026-08-14 10:01:20.094592: HTTP MCP Server stopped 2026-08-14 10:01:20.719446: TemperatureAPI: Finalizing... 2026-08-14 10:01:20.719573: TemperatureAPI: Stopped 2026-08-14 10:01:23.807124: StorageComponent: Finalizing... 2026-08-14 10:01:23.807251: StorageComponent: Stopped 2026-08-14 10:01:24.468893: HAHistory: Finalizing... 2026-08-14 10:01:24.469042: HAHistory: Stopped 2026-08-14 10:01:55.279061: Info: No secrets.yaml file found 2026-08-14 10:01:55.279238: Loading apps.yaml 2026-08-14 10:01:55.308939: Predbat: Startup predbat 2026-08-14 10:01:55.347157: --------------- PredBat - update at 2026-08-14 10:00:00+01:00 with clock skew 0 minutes, minutes now 600 2026-08-14 10:01:55.348753: Config root is /config 2026-08-14 10:01:55.348859: --------------- PredBat - update at 2026-08-14 10:00:00+01:00 with clock skew 0 minutes, minutes now 600 2026-08-14 10:01:55.348898: Initialising Storage interface 2026-08-14 10:01:55.349101: Initialising Home Assistant Interface interface 2026-08-14 10:01:55.367793: Initialising Home Assistant History interface 2026-08-14 10:01:55.367934: Initialising Web Interface interface 2026-08-14 10:01:55.368029: Initialising plugin system 2026-08-14 10:01:55.368188: Scanning for plugins in: /addon 2026-08-14 10:01:55.368615: Plugin discovery complete. Loaded 0 plugins. 2026-08-14 10:01:55.368687: Starting Storage interface 2026-08-14 10:01:55.368732: Creating task: 2026-08-14 10:01:55.369683: StorageComponent: Waiting for API to start 2026-08-14 10:01:55.379301: StorageComponent: Started 2026-08-14 10:01:56.369928: Starting Home Assistant Interface interface 2026-08-14 10:01:56.370061: Creating task: 2026-08-14 10:01:56.370629: HAInterface: Waiting for API to start 2026-08-14 10:01:56.370970: Info: Starting HA interface 2026-08-14 10:01:56.371368: Info: Start socket for url http://10.0.20.15:8123/api/websocket 2026-08-14 10:01:56.375509: Info: Web Socket active 2026-08-14 10:01:57.370790: Starting Home Assistant History interface 2026-08-14 10:01:57.370897: Creating task: 2026-08-14 10:01:57.371384: HAHistory: Waiting for API to start 2026-08-14 10:01:57.371695: Info: Starting HAHistory 2026-08-14 10:01:57.371938: Info: HAHistory: Pruning history data started. 2026-08-14 10:01:57.372051: Info: HAHistory: Pruning history data completed. 2026-08-14 10:01:57.372186: HAHistory: Started 2026-08-14 10:01:58.371967: Starting Web Interface interface 2026-08-14 10:01:58.372155: Creating task: 2026-08-14 10:01:58.375043: WebInterface: Waiting for API to start 2026-08-14 10:01:59.375315: Config root is /config and printable config_root_p is now /config 2026-08-14 10:01:59.479812: Regular expression argument octopus_saving_session matched ^(binary_sensor.octopus_energy([0-9a-z_]+|)_saving_session(s|))$ with binary_sensor.octopus_energy_a_db198414_octoplus_saving_sessions 2026-08-14 10:01:59.481697: Regular expression argument octopus_free_session matched ^(event.octopus_energy_([0-9a-z_]+|)_octoplus_free_electricity_session_events)$ with event.octopus_energy_a_db198414_octoplus_free_electricity_session_events 2026-08-14 10:01:59.481798: Refreshing Predbat configuration 2026-08-14 10:01:59.481922: Loading current config 2026-08-14 10:02:00.159770: Saved current settings to /config/predbat_config.json 2026-08-14 10:02:00.675677: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 10:02:00.688292: Initialising MCP Server interface 2026-08-14 10:02:00.688692: Initialising External Temperature API interface 2026-08-14 10:02:00.689086: Starting MCP Server interface 2026-08-14 10:02:00.689168: Creating task: 2026-08-14 10:02:00.689577: PredbatMCPServer: Waiting for API to start 2026-08-14 10:02:00.689862: Creating HTTP MCP Server with Predbat integration 2026-08-14 10:02:00.689948: HTTP MCP Server started (web interface integration) 2026-08-14 10:02:01.690079: Starting External Temperature API interface 2026-08-14 10:02:01.690220: Creating task: 2026-08-14 10:02:01.690785: TemperatureAPI: Waiting for API to start 2026-08-14 10:02:01.791893: TemperatureAPI: Started 2026-08-14 10:02:02.691186: Initialising ML Load Forecaster interface 2026-08-14 10:02:02.773689: ML Predictor: Upgraded 288 feature std values to prevent extreme normalization 2026-08-14 10:02:02.773855: ML Predictor: Model loaded from /config/predbat_ml_model.npz (trained 2026-08-14 08:49, val_mae=0.0039, val_bias=-0.0007) 2026-08-14 10:02:02.774002: ML Component: Loaded existing model 2026-08-14 10:02:02.774090: Starting ML Load Forecaster interface 2026-08-14 10:02:02.774148: Creating task: 2026-08-14 10:02:02.774584: LoadMLComponent: Waiting for API to start 2026-08-14 10:02:02.813501: ML Component: Loaded database history: 16094 load points, 0.2h elapsed since save, age 55.0 days (shift will be applied on next fetch) 2026-08-14 10:02:02.824532: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 10:02:12.102721: Processing 1297 30-minute periods for power integration 2026-08-14 10:02:12.184308: ML Component: Car charging hold False, car energy reported load False 2026-08-14 10:02:12.265839: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 10:02:12.337504: ML Temperature data points: 48361 2026-08-14 10:02:13.453223: ML Component: Fetched 7776 load data points, 27.0 days of history 2026-08-14 10:02:13.471823: ML Component: Data fetch completed, load data age 55.0 days, 16097 data points 2026-08-14 10:02:13.471982: ML Component: No training needed, model age is 0.18 hours 2026-08-14 10:02:13.472063: ML Component: Generating predictions load data age 55.0 days, 16097 data points 2026-08-14 10:02:13.611277: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.09 max_dow {0: 0.10148124996256083, 1: 0.10722812486607582, 2: 0.11988124983031304, 3: 0.11477812442630529, 4: 0.1668593753574416, 5: 0.10298750002831221, 6: 0.11143124993629754} 2026-08-14 10:02:14.161628: ML Component: Generated 576 predictions (total 38.55 kWh over 48h) 2026-08-14 10:02:14.200987: ML Component: Prediction cycle completed 2026-08-14 10:02:14.306065: ML Component: Saved 16097 steps (55 days) of history to /config/predbat_ml_history.npz 2026-08-14 10:02:14.307771: LoadMLComponent: Started 2026-08-14 10:02:14.781674: Refreshing Predbat configuration 2026-08-14 10:02:15.364572: Watch list [] 2026-08-14 10:02:16.248815: Saved current settings to /config/predbat_config.json 2026-08-14 10:02:16.249998: Validation of apps.yaml was successful 2026-08-14 10:02:16.254549: Restored saved plan from 275 minutes ago: 6 charge windows, 0 export windows 2026-08-14 10:02:16.262706: Predbat: Next run time will be 2026-08-14 10:05:00 and then every 300 seconds 2026-08-14 10:02:17.268682: Refreshing Predbat configuration 2026-08-14 10:02:17.873195: Saved current settings to /config/predbat_config.json 2026-08-14 10:02:17.874096: Validation of apps.yaml was successful 2026-08-14 10:02:17.874258: --------------- PredBat - update at 2026-08-14 10:00:00+01:00 with clock skew 0 minutes, minutes now 600 2026-08-14 10:02:17.874785: Saved current settings to /config/predbat_config.json 2026-08-14 10:02:18.066361: Loaded GitHub URL cache from storage (1 entries) 2026-08-14 10:02:18.066501: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 27.3 minutes 2026-08-14 10:02:18.066587: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 10:02:18.066651: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 10:02:18.084907: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 10:02:18.085100: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 10:02:18.085834: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 10:02:18.085988: Predbat mode is set to Control charge & discharge 2026-08-14 10:02:18.263740: Found 21602 load_today datapoints going back 27 days 2026-08-14 10:02:18.263905: Using load_power data to fill gaps in load_today data 2026-08-14 10:02:19.077230: Processing 721 30-minute periods for power integration 2026-08-14 10:02:19.386313: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 10:02:19.386444: Car charging hold False, threshold 6.0kWh 2026-08-14 10:02:19.386492: Current data so far today: load 9.4kWh, import 9.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 10:02:19.456459: Cars: SoC: [15.822000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 10:02:19.457605: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 10:02:19.457708: Standing charge is set to 49.98p 2026-08-14 10:02:19.484235: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 10:02:19.484350: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 10:02:19.984421: Loaded 95 datapoints of futurerate analysis 2026-08-14 10:02:20.083874: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51'] 2026-08-14 10:02:20.139147: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 10:02:20.144351: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 10:02:20.144470: Import rates: min 14.97p, max 53.39p, average 27.4p 2026-08-14 10:02:20.183182: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 10:02:20.183328: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 10:02:20.184336: High export rate found rates in range 99p to -99p 2026-08-14 10:02:20.271267: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 10:02:20.271392: Car 0 charging is not planned as it is not plugged in 2026-08-14 10:02:20.283882: Battery level now 1.41kWh, -1hr ago 1.6kWh, at midnight 2.43kWh, battery value change in the last hour -3.09p, change today -16.46p, rate_forward 16.08p 2026-08-14 10:02:20.284272: Last hour: net energy 0.68kWh, import 0.68kWh, export 0.0kWh, car 0kWh, load 1.05kWh, net cost 16.06p, import 16.06p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 10:02:20.332519: Today's energy total net 9.4kWh, import 9.4kWh, export 0.0kWh, cost 286.94p, import 236.95p, export 0.0p, carbon 0.0kg 2026-08-14 10:02:20.332662: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 10:02:20.416135: Using weighted-bucket historical load forecast over 14 days 2026-08-14 10:02:20.533959: Today's load divergence 116.91%, in-day adjustment 134.0%, damping 0.95x, yesterday 146.81% today 116.07% blend 58.33% 2026-08-14 10:02:20.534095: Today's predicted so far 3.92kWh with 0.0kWh car/iBoost excluded, 1.5kWh import ignored, and 5.42kWh forecast extra. 2026-08-14 10:02:20.534187: Today's actual load so far 6.48kWh with 0.0kWh car/iBoost excluded, and 2.94kWh import ignored. 2026-08-14 10:02:20.574203: Octopus slots changed from [[], [], [], [], [], [], [], []] to [[]] 2026-08-14 10:02:20.574306: Octopus saving slots changed from [] to [{'start': '2026-08-12T18:00:00+01:00', 'end': '2026-08-12T20:00:00+01:00', 'rate': 2.0, 'state': False}] 2026-08-14 10:02:20.574424: Octopus free slots changed from [] to [{'start': '2024-08-15T13:00:00+01:00', 'end': '2024-08-15T14:00:00+01:00', 'rate': 0}, {'start': '2024-08-18T13:00:00+01:00', 'end': '2024-08-18T14:00:00+01:00', 'rate': 0}, {'start': '2024-08-21T13:00:00+01:00', 'end': '2024-08-21T14:00:00+01:00', 'rate': 0}, {'start': '2024-08-31T13:00:00+01:00', 'end': '2024-08-31T14:00:00+01:00', 'rate': 0}, {'start': '2024-09-10T13:00:00+01:00', 'end': '2024-09-10T14:00:00+01:00', 'rate': 0}, {'start': '2024-09-14T13:00:00+01:00', 'end': '2024-09-14T14:00:00+01:00', 'rate': 0}, {'start': '2024-10-20T13:00:00+01:00', 'end': '2024-10-20T14:00:00+01:00', 'rate': 0}, {'start': '2024-11-24T07:00:00+00:00', 'end': '2024-11-24T09:00:00+00:00', 'rate': 0}, {'start': '2025-06-22T14:00:00+01:00', 'end': '2025-06-22T15:00:00+01:00', 'rate': 0}, {'start': '2025-07-05T14:00:00+01:00', 'end': '2025-07-05T15:00:00+01:00', 'rate': 0}, {'start': '2025-08-05T14:00:00+01:00', 'end': '2025-08-05T15:00:00+01:00', 'rate': 0}, {'start': '2025-08-09T14:00:00+01:00', 'end': '2025-08-09T15:00:00+01:00', 'rate': 0}, {'start': '2025-08-31T14:00:00+01:00', 'end': '2025-08-31T15:00:00+01:00', 'rate': 0}, {'start': '2025-09-01T14:00:00+01:00', 'end': '2025-09-01T15:00:00+01:00', 'rate': 0}, {'start': '2025-09-06T14:00:00+01:00', 'end': '2025-09-06T15:00:00+01:00', 'rate': 0}, {'start': '2025-09-07T12:00:00+01:00', 'end': '2025-09-07T14:00:00+01:00', 'rate': 0}, {'start': '2025-09-11T12:00:00+01:00', 'end': '2025-09-11T13:00:00+01:00', 'rate': 0}, {'start': '2025-09-15T14:00:00+01:00', 'end': '2025-09-15T15:00:00+01:00', 'rate': 0}, {'start': '2025-09-18T14:00:00+01:00', 'end': '2025-09-18T15:00:00+01:00', 'rate': 0}, {'start': '2025-10-04T12:00:00+01:00', 'end': '2025-10-04T14:00:00+01:00', 'rate': 0}, {'start': '2025-10-05T11:00:00+01:00', 'end': '2025-10-05T12:00:00+01:00', 'rate': 0}, {'start': '2025-10-24T21:00:00+01:00', 'end': '2025-10-24T22:00:00+01:00', 'rate': 0}, {'start': '2025-10-25T12:00:00+01:00', 'end': '2025-10-25T15:00:00+01:00', 'rate': 0}] 2026-08-14 10:02:20.575216: Sensor changes require a replan, will recompute the plan 2026-08-14 10:02:20.575404: Inverter 0: Type SK Sunsynk 2026-08-14 10:02:20.575443: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:02:20.575665: Reserve min: 7%, battery_min: 7% 2026-08-14 10:02:20.575792: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:02:20.576159: Inverter 0 SoC: 1.61kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power -4506W, current battery voltage 51.2V, grid power -6094W, load power 1098W, PV Power 0W 2026-08-14 10:02:20.576334: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:02:20.576431: Inverter 0 scheduled charge enable is False 2026-08-14 10:02:20.576473: Inverter 0 charge windows currently [] 2026-08-14 10:02:20.576535: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:02:20.576705: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:02:20.576767: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:02:20.576840: Inverter 0 scheduled discharge enable is False 2026-08-14 10:02:20.577131: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:02:20.577182: Inverter 0 discharge windows currently [] 2026-08-14 10:02:20.577275: Looking for discharge curve with sensors sensor.sunsynk_battery_soc, sensor.predbat_SK_0_discharge_rate, predbat.status and sensor.sunsynk_battery_power 2026-08-14 10:02:23.562741: Looking for discharge curve, have found 15.0 days of history data, max days 15 2026-08-14 10:02:23.622719: Info: Cannot find battery discharge curve (no full rate discharge cycle to empty found in history), battery may not have been fully charged/discharged at max rate recently - this is normal in cost-optimised operation 2026-08-14 10:02:23.635756: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:02:23.635872: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:02:23.635892: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:02:23.696732: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 10:02:23.696825: Will recompute the plan as it is invalid 2026-08-14 10:02:23.696983: Recompute is saving previous plan... 2026-08-14 10:02:23.700258: Best charge window [ 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0% ] 2026-08-14 10:02:23.700341: Best export window [ ] 2026-08-14 10:02:23.701166: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:02:23.704257: Load divergence over 8.0 hours mean 426.71W, min 239.4W, max 1403.4W, std dev 186.32W, divergence 21.83% 2026-08-14 10:02:23.715982: Calculating data from yesterday for savings calculation 2026-08-14 10:02:23.727363: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 10:02:23.920092: Warn: Prediction kernel failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so)) - using Python engine 2026-08-14 10:02:23.935841: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 857.23p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 10:02:23.949033: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 870.6p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 10:02:23.964881: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 857.23p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 10:02:23.988988: Yesterday: Predbat disabled was £8.57 (adjusted £8.39) vs £6.21 (adjusted £5.8), saving £2.36 (adjusted £2.59) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 18.01kWh 2026-08-14 10:02:24.057226: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 901.08p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 10:02:24.057361: Yesterday: No Battery/PV system cost predicted was £9.01 (adjusted £9.01) vs £6.21 (adjusted £5.8), saving £2.8 (adjusted £3.21) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 10:02:24.066804: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:02:24.066912: LoadML is_calculating False 2026-08-14 10:02:24.066967: Creating pool of 12 processes to match your CPU count 2026-08-14 10:02:24.210137: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 10:02:24.212192: Optimise levels pass started at 2026-08-14 10:02:24 2026-08-14 10:02:24.212270: Optimise all windows, total charge 95 export 1 2026-08-14 10:02:24.543261: >> Region optimisation pass width 960 2026-08-14 10:02:25.146253: >> Region optimisation pass width 480 2026-08-14 10:02:25.536490: >> Region optimisation pass width 240 2026-08-14 10:02:26.333030: >> Region optimisation pass width 120 2026-08-14 10:02:27.571254: Calculated end_record as 08-15 13:00:00 based on best_price 22.02p, next_charge_start 08-14 13:00:00, max_windows 53 2026-08-14 10:02:27.571551: Optimise levels pass ended at 2026-08-14 10:02:27, duration 3.4 seconds tried 343 combinations 2026-08-14 10:02:27.571622: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 955.18p, best_keep 0kWh, best_cycle 47.36kWh, best_carbon 0kg, best_import 35.77kWh 2026-08-14 10:02:27.587588: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 15.78p with charge limits [0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 10:02:27.589314: Best charge windows best_metric 739.54p, best_cost 791.43p, best_carbon 0kg, best_import 49.89kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100% ] 2026-08-14 10:02:27.589432: Best export windows best_metric 739.54p, best_cost 791.43p, best_carbon 0kg, best_import 49.89kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:02:27.589588: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.02p, best_metric 739.54p, best_cost 791.43p, best_cycle 26.16kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:27.684351: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.02p, best_metric 739.54p, best_cost 791.43p, best_cycle 26.16kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:27.799889: Optimise price set 17.0p, pass trim_import, price 15.78p, start_at_low False, best_price_charge 22.02p, best_metric 739.54p, best_cost 791.43p, best_cycle 26.16kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:27.835690: Best charge windows best_metric 737.56p, best_cost 751.98p, best_carbon 0kg, best_import 49.89kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100% ] 2026-08-14 10:02:27.835920: Best export windows best_metric 737.56p, best_cost 751.98p, best_carbon 0kg, best_import 49.89kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:02:27.838498: Best charge windows best_metric 737.56p, best_cost 751.98p, best_carbon 0kg, best_import 49.89kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100% ] 2026-08-14 10:02:27.838961: Best export windows best_metric 737.56p, best_cost 751.98p, best_carbon 0kg, best_import 49.89kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:02:27.839184: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:27.932042: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:28.094117: Optimise price set 23.0p, pass normal, price 21.43p, start_at_low False, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:28.133115: Optimise price set 21.6p, pass normal, price 20.21p, start_at_low False, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:28.170352: Optimise price set 20.4p, pass normal, price 18.99p, start_at_low False, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:28.204800: Optimise price set 19.2p, pass normal, price 17.81p, start_at_low False, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:28.241699: Optimise price set 17.8p, pass normal, price 16.62p, start_at_low False, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:28.276761: Optimise price set 17.4p, pass normal, price 16.19p, start_at_low False, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:28.311611: Optimise price set 17.0p, pass normal, price 15.78p, start_at_low False, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:28.352050: Best charge windows best_metric 737.56p, best_cost 751.98p, best_carbon 0kg, best_import 49.89kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100% ] 2026-08-14 10:02:28.352237: Best export windows best_metric 737.56p, best_cost 751.98p, best_carbon 0kg, best_import 49.89kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:02:28.353874: Best charge windows best_metric 737.56p, best_cost 751.98p, best_carbon 0kg, best_import 49.89kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100% ] 2026-08-14 10:02:28.353974: Best export windows best_metric 737.56p, best_cost 751.98p, best_carbon 0kg, best_import 49.89kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:02:28.354091: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:28.447290: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:28.579929: Best charge windows best_metric 737.56p, best_cost 751.98p, best_carbon 0kg, best_import 49.89kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100% ] 2026-08-14 10:02:28.580098: Best export windows best_metric 737.56p, best_cost 751.98p, best_carbon 0kg, best_import 49.89kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:02:28.580185: Optimise price set 17.0p, pass low, price 15.78p, start_at_low True, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:28.611826: Optimise price set 17.4p, pass low, price 16.19p, start_at_low True, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:28.642291: Optimise price set 17.8p, pass low, price 16.62p, start_at_low True, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:28.685782: Optimise price set 19.2p, pass low, price 17.81p, start_at_low True, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:28.716563: Optimise price set 20.4p, pass low, price 18.99p, start_at_low True, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:28.749898: Optimise price set 21.6p, pass low, price 20.21p, start_at_low True, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:28.781836: Optimise price set 23.0p, pass low, price 21.43p, start_at_low True, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:28.814976: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:28.951343: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:29.045243: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.02p, best_metric 737.56p, best_cost 751.98p, best_cycle 23.76kWh, best_carbon 0kg, best_import 49.89kWh 2026-08-14 10:02:29.244662: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.02p, best_metric 736.34p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:29.282548: Optimise price set 24.4p, pass low, price 22.78p, start_at_low True, best_price_charge 22.02p, best_metric 736.34p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:29.350917: Optimise price set 25.0p, pass low, price 23.34p, start_at_low True, best_price_charge 22.02p, best_metric 736.34p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:29.385982: Optimise price set 25.8p, pass low, price 24.07p, start_at_low True, best_price_charge 22.02p, best_metric 736.34p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:29.419088: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.02p, best_metric 736.34p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:29.462230: Optimise price set 26.6p, pass low, price 24.83p, start_at_low True, best_price_charge 22.02p, best_metric 736.34p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:29.496181: Optimise price set 27.2p, pass low, price 25.27p, start_at_low True, best_price_charge 22.02p, best_metric 736.34p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:29.534188: Optimise price set 27.4p, pass low, price 25.52p, start_at_low True, best_price_charge 22.02p, best_metric 736.34p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:29.630159: Optimise price set 27.6p, pass low, price 25.71p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:29.810009: Optimise price set 28.0p, pass low, price 26.0p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:29.857268: Optimise price set 28.2p, pass low, price 26.24p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:29.903780: Optimise price set 28.4p, pass low, price 26.49p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:29.949362: Optimise price set 29.2p, pass low, price 27.24p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:29.995906: Optimise price set 30.0p, pass low, price 27.99p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:30.045528: Optimise price set 30.6p, pass low, price 28.59p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:30.098990: Optimise price set 31.4p, pass low, price 29.17p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:30.154026: Optimise price set 32.2p, pass low, price 30.04p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:30.201436: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:30.256313: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:30.304460: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:30.359039: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:30.406505: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:30.456847: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:30.502209: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:30.543690: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:30.588982: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:30.639428: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:30.682654: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:30.737275: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:30.786514: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:30.846517: Best charge windows best_metric 736.33p, best_cost 750.84p, best_carbon 0kg, best_import 49.9kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 9%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100% ] 2026-08-14 10:02:30.846864: Best export windows best_metric 736.33p, best_cost 750.84p, best_carbon 0kg, best_import 49.9kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:02:30.849918: Best charge windows best_metric 736.33p, best_cost 750.84p, best_carbon 0kg, best_import 49.9kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 9%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100% ] 2026-08-14 10:02:30.850073: Best export windows best_metric 736.33p, best_cost 750.84p, best_carbon 0kg, best_import 49.9kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:02:30.850235: Optimise price set 27.4p, pass trim_import, price 25.43p, start_at_low False, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:30.959266: Optimise price set 23.8p, pass trim_import, price 22.25p, start_at_low False, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:31.019034: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.02p, best_metric 736.33p, best_cost 750.84p, best_cycle 23.9kWh, best_carbon 0kg, best_import 49.9kWh 2026-08-14 10:02:31.115713: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:31.266146: Best charge windows best_metric 736.25p, best_cost 750.75p, best_carbon 0kg, best_import 49.85kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 9%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100% ] 2026-08-14 10:02:31.266543: Best export windows best_metric 736.25p, best_cost 750.75p, best_carbon 0kg, best_import 49.85kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:02:31.266701: Optimise price set 27.4p, pass normal, price 25.52p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:31.366878: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:31.426783: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:31.503508: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:31.660356: Optimise price set 23.0p, pass normal, price 21.43p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:31.689600: Optimise price set 21.6p, pass normal, price 20.21p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:31.720627: Optimise price set 20.4p, pass normal, price 18.99p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:31.754481: Optimise price set 19.2p, pass normal, price 17.81p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:31.788204: Optimise price set 17.8p, pass normal, price 16.62p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:31.823389: Optimise price set 17.4p, pass normal, price 16.19p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:31.860362: Optimise price set 17.0p, pass normal, price 15.78p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:31.912803: Best charge windows best_metric 736.25p, best_cost 750.75p, best_carbon 0kg, best_import 49.85kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100% ] 2026-08-14 10:02:31.913313: Best export windows best_metric 736.25p, best_cost 750.75p, best_carbon 0kg, best_import 49.85kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:02:31.915057: Best charge windows best_metric 736.25p, best_cost 750.75p, best_carbon 0kg, best_import 49.85kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100% ] 2026-08-14 10:02:31.915182: Best export windows best_metric 736.25p, best_cost 750.75p, best_carbon 0kg, best_import 49.85kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:02:31.915293: Optimise price set 27.4p, pass trim_import, price 25.43p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:31.960446: Optimise price set 23.8p, pass trim_import, price 22.25p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:32.011360: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:32.092592: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:32.215288: Best charge windows best_metric 736.25p, best_cost 750.75p, best_carbon 0kg, best_import 49.85kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100% ] 2026-08-14 10:02:32.215474: Best export windows best_metric 736.25p, best_cost 750.75p, best_carbon 0kg, best_import 49.85kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:02:32.215597: Optimise price set 27.4p, pass normal, price 25.43p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:32.253967: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:32.300997: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:32.380843: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:32.527297: Optimise price set 23.0p, pass normal, price 21.43p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:32.559228: Optimise price set 21.6p, pass normal, price 20.21p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:32.590455: Optimise price set 20.4p, pass normal, price 18.99p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:32.625887: Optimise price set 19.2p, pass normal, price 17.81p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:32.654313: Optimise price set 17.8p, pass normal, price 16.62p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:32.683213: Optimise price set 17.4p, pass normal, price 16.19p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:32.722167: Optimise price set 17.0p, pass normal, price 15.78p, start_at_low False, best_price_charge 22.02p, best_metric 736.25p, best_cost 750.75p, best_cycle 23.24kWh, best_carbon 0kg, best_import 49.85kWh 2026-08-14 10:02:32.758948: Best charge windows best_metric 736.25p, best_cost 750.75p, best_carbon 0kg, best_import 49.85kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100% ] 2026-08-14 10:02:32.759424: Best export windows best_metric 736.25p, best_cost 750.75p, best_carbon 0kg, best_import 49.85kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:02:32.759760: Tweak plan optimisation started 2026-08-14 10:02:33.059533: Tweak optimisation finished metric 736.25 cost 750.75 metric_keep 0 cycle 23.24 carbon 0 import 49.85 2026-08-14 10:02:33.075011: Swap charge optimisation started metric 736.25p, cost 750.75p, min_improvement_swap 0.1p 2026-08-14 10:02:35.591555: Swap charge optimisation finished metric 736.25p, cost 750.75p 2026-08-14 10:02:35.601642: Raw charge windows [ 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100% ] reserve 1.12 2026-08-14 10:02:35.602187: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] reserve 1.12 2026-08-14 10:02:35.602411: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] reserve 1.12 2026-08-14 10:02:35.602583: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] reserve 1.12 2026-08-14 10:02:35.631537: Previous plan best metric is 740.97 (cost 792.99) and new plan best metric is 736.25 (cost 750.75) 2026-08-14 10:02:35.631740: New plan metric is significantly better from previous plan, using new plan 2026-08-14 10:02:35.631802: Plan valid is now true after recompute was False 2026-08-14 10:02:35.654947: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 888.93p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:30:00, load 29.76kWh, PV 0.0kWh 2026-08-14 10:02:35.755646: Battery has 0.5 hours left - now at 1.61kWh 2026-08-14 10:02:35.797012: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 915.68p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:25:00, load 30.73kWh, PV 0.0kWh 2026-08-14 10:02:35.863194: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 824.16p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:25:00, load 30.73kWh, PV 0.0kWh 2026-08-14 10:02:35.932935: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 800.73p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:30:00, load 29.76kWh, PV 0.0kWh 2026-08-14 10:02:35.933074: Saving plan best values to HA entities 2026-08-14 10:02:36.078226: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 10:02:36.087697: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 10:02:36.093367: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 42.83kWh, house 7.02kWh, export 0.0kWh, metric 800.73p, metric10 824.16p 2026-08-14 10:02:36.169442: Marginal costs baseline metric (no standing charge): 750.7452 2026-08-14 10:02:36.386642: Marginal energy costs matrix computed: min=21.86 max=39.68 2026-08-14 10:02:36.457538: Rate array import [{'start': 600, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 600, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:02:36.458172: - Your estimated bill for today is £6.68 and tomorrow is £5.88 2026-08-14 10:02:36.458221: - Import rates are cheap (21.7p - 24.2p) for the next 6 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:02:36.458241: - The battery is currently at 10% and is in eco mode for the next 3 hours. 2026-08-14 10:02:36.458257: - For the next 48 hours there will be no solar generation. 2026-08-14 10:02:36.458271: - You will run out of battery in 30 minutes. 2026-08-14 10:02:36.458288: - Your next charge slot will be in 3 hours where import rates will be cheap (21.9p). 2026-08-14 10:02:36.458302: 2026-08-14 10:02:36.502633: Plan calculation took 12.81 seconds 2026-08-14 10:02:36.507668: Saved plan to storage 2026-08-14 10:02:36.510814: No high rate period found 2026-08-14 10:02:36.557211: Import threshold used for optimisation was 25.43p 2026-08-14 10:02:36.601373: Low import rate windows [0: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 1: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 2: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 3: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 4: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 5: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 6: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 7: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 8: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 9: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 10: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 11: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 12: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 13: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 14: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 15: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 16: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 17: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 18: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 19: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 20: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 21: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 22: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 23: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 24: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 25: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 26: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 27: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 28: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 29: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 30: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 31: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 32: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 33: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 34: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 35: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 36: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 37: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 38: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 39: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 40: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 41: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 42: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 43: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 44: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 45: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 46: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 47: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 48: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 49: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 50: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 51: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 52: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 53: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 54: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 55: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 56: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 57: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 58: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 59: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 60: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 61: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 62: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 63: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 64: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 65: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 66: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 67: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 68: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 69: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 70: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 71: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 72: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 73: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 74: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 75: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 76: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 77: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 78: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 79: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 80: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 81: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 82: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 83: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 84: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 85: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 86: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 87: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 88: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 89: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 90: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 91: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 92: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 93: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 94: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43] 2026-08-14 10:02:36.608689: Inverter 0: Type SK Sunsynk 2026-08-14 10:02:36.608777: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:02:36.609137: Reserve min: 7%, battery_min: 7% 2026-08-14 10:02:36.609255: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:02:36.609629: Inverter 0 SoC: 1.61kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power -4506W, current battery voltage 51.2V, grid power -6094W, load power 1098W, PV Power 0W 2026-08-14 10:02:36.609880: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:02:36.610016: Inverter 0 scheduled charge enable is False 2026-08-14 10:02:36.610079: Inverter 0 charge windows currently [] 2026-08-14 10:02:36.610152: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:02:36.610311: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:02:36.610357: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:02:36.610432: Inverter 0 scheduled discharge enable is False 2026-08-14 10:02:36.610607: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:02:36.610654: Inverter 0 discharge windows currently [] 2026-08-14 10:02:36.610707: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:02:36.610746: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:02:36.610804: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:02:36.657304: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 10:02:36.657474: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:00:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 10:02:36.657578: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:02:36.657759: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:02:36.657832: No export window planned 2026-08-14 10:02:36.657932: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:02:36.657965: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:02:36.658081: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:02:36.658258: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:00:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:02:36.658307: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:02:36.658355: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:02:36.658443: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog1_charge', 'option': 'Allow Gen'} 2026-08-14 10:02:36.749055: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog2_charge', 'option': 'Allow Gen'} 2026-08-14 10:02:36.852433: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog3_charge', 'option': 'Allow Gen'} 2026-08-14 10:02:36.951814: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog4_charge', 'option': 'Allow Gen'} 2026-08-14 10:02:37.056901: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog5_charge', 'option': 'Allow Gen'} 2026-08-14 10:02:37.160576: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog6_charge', 'option': 'Allow Gen'} 2026-08-14 10:02:37.215392: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_load_limit', 'option': 'Zero Export'} 2026-08-14 10:02:37.364158: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog1_charge', 'option': 'Allow Gen'} 2026-08-14 10:02:37.479532: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog2_charge', 'option': 'Allow Gen'} 2026-08-14 10:02:37.582961: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog3_charge', 'option': 'Allow Gen'} 2026-08-14 10:02:37.686332: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog4_charge', 'option': 'Allow Gen'} 2026-08-14 10:02:37.790002: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog5_charge', 'option': 'Allow Gen'} 2026-08-14 10:02:37.893843: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog6_charge', 'option': 'Allow Gen'} 2026-08-14 10:02:37.997506: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_load_limit', 'option': 'Zero Export'} 2026-08-14 10:02:38.044128: Inverter 0 count register writes 0 2026-08-14 10:02:38.067389: Total inverter register writes now 806 2026-08-14 10:02:38.096897: Info: Completed run status Demand 2026-08-14 10:02:38.102779: Info: record_status Demand 2026-08-14 10:02:38.108440: Saved current settings to /config/predbat_config.json 2026-08-14 10:02:38.108771: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 10:02:38.168642: Creating predbat dashboard at /config/predbat_dashboard.yaml 2026-08-14 10:03:17.218208: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:03:17.218456: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:03:17.218491: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:03:17.218636: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:03:17.218679: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:03:17.218700: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:03:17.218718: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:05:00.429863: --------------- PredBat - update at 2026-08-14 10:05:00+01:00 with clock skew 0 minutes, minutes now 605 2026-08-14 10:05:00.430652: Saved current settings to /config/predbat_config.json 2026-08-14 10:05:00.430828: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 30.0 minutes 2026-08-14 10:05:00.430929: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 10:05:00.431026: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 10:05:00.451887: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 10:05:00.452049: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 10:05:00.452777: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 10:05:00.452927: Predbat mode is set to Control charge & discharge 2026-08-14 10:05:00.620027: Found 21602 load_today datapoints going back 28 days 2026-08-14 10:05:00.620188: Using load_power data to fill gaps in load_today data 2026-08-14 10:05:01.272857: Processing 721 30-minute periods for power integration 2026-08-14 10:05:01.422658: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 10:05:01.422792: Car charging hold False, threshold 6.0kWh 2026-08-14 10:05:01.422836: Current data so far today: load 9.5kWh, import 9.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 10:05:01.433977: Cars: SoC: [15.236]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 10:05:01.434643: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 10:05:01.434716: Standing charge is set to 49.98p 2026-08-14 10:05:01.487756: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 10:05:01.487850: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 10:05:01.488064: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 2.7 minutes 2026-08-14 10:05:01.488458: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 2.7 minutes 2026-08-14 10:05:01.493260: Loaded 95 datapoints of futurerate analysis 2026-08-14 10:05:01.565194: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51'] 2026-08-14 10:05:01.613153: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 10:05:01.617568: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 10:05:01.617821: Import rates: min 14.97p, max 53.39p, average 27.39p 2026-08-14 10:05:01.651237: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 10:05:01.651439: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 10:05:01.652541: High export rate found rates in range 99p to -99p 2026-08-14 10:05:01.722786: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 10:05:01.722913: Car 0 charging is not planned as it is not plugged in 2026-08-14 10:05:01.734623: Battery level now 1.61kWh, -1hr ago 1.48kWh, at midnight 2.43kWh, battery value change in the last hour 2.06p, change today -13.25p, rate_forward 16.08p 2026-08-14 10:05:01.734956: Last hour: net energy 0.65kWh, import 0.65kWh, export 0.0kWh, car 0kWh, load 1.1kWh, net cost 15.47p, import 15.47p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 10:05:01.787074: Today's energy total net 9.4kWh, import 9.4kWh, export 0.0kWh, cost 286.94p, import 236.95p, export 0.0p, carbon 0.0kg 2026-08-14 10:05:01.787271: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 10:05:01.854215: Using weighted-bucket historical load forecast over 14 days 2026-08-14 10:05:01.877243: Today's load divergence 116.75%, in-day adjustment 133.83%, damping 0.95x, yesterday 146.81% today 115.91% blend 57.99% 2026-08-14 10:05:01.877343: Today's predicted so far 3.99kWh with 0.0kWh car/iBoost excluded, 1.51kWh import ignored, and 5.5kWh forecast extra. 2026-08-14 10:05:01.877371: Today's actual load so far 6.52kWh with 0.0kWh car/iBoost excluded, and 3.09kWh import ignored. 2026-08-14 10:05:01.939649: Inverter 0: Type SK Sunsynk 2026-08-14 10:05:01.939783: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:05:01.940066: Reserve min: 7%, battery_min: 7% 2026-08-14 10:05:01.940208: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:05:01.940634: Inverter 0 SoC: 1.61kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1186W, current battery voltage 51.2V, grid power -53W, load power 1226W, PV Power 0W 2026-08-14 10:05:01.940893: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:05:01.941065: Inverter 0 scheduled charge enable is False 2026-08-14 10:05:01.941148: Inverter 0 charge windows currently [] 2026-08-14 10:05:01.941223: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:05:01.941417: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:05:01.941477: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:05:01.941557: Inverter 0 scheduled discharge enable is False 2026-08-14 10:05:01.941803: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:05:01.941869: Inverter 0 discharge windows currently [] 2026-08-14 10:05:01.941922: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:05:01.941961: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:05:01.941991: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:05:02.043513: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 10:05:02.043636: Plan was last updated on 2026-08-14 10:00:00+01:00 and is now 5.0 minutes old 2026-08-14 10:05:02.043890: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 10:05:02.043938: Best export window [ ] 2026-08-14 10:05:02.044813: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:05:02.048215: Load divergence over 8.0 hours mean 425.22W, min 230.4W, max 1260.0W, std dev 184.68W, divergence 21.72% 2026-08-14 10:05:02.061775: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:05:02.061988: LoadML is_calculating False 2026-08-14 10:05:02.062107: Creating pool of 12 processes to match your CPU count 2026-08-14 10:05:02.168992: predict base end_record 08-15 13:05:00, final soc 1.12kWh, metric 887.56p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:30:00, load 29.83kWh, PV 0.0kWh 2026-08-14 10:05:02.291258: Battery has 0.42 hours left - now at 1.61kWh 2026-08-14 10:05:02.345734: predict base10 end_record 08-15 13:05:00, final soc 1.12kWh, metric 914.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:30:00, load 30.8kWh, PV 0.0kWh 2026-08-14 10:05:02.425553: predict best10 end_record 08-15 13:05:00, final soc 1.44kWh, metric 828.23p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:30:00, load 30.8kWh, PV 0.0kWh 2026-08-14 10:05:02.507587: predict best end_record 08-15 13:05:00, final soc 1.51kWh, metric 805.92p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:30:00, load 29.83kWh, PV 0.0kWh 2026-08-14 10:05:02.507678: Saving plan best values to HA entities 2026-08-14 10:05:02.696877: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 10:05:02.705537: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 10:05:02.713759: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 42.83kWh, house 6.92kWh, export 0.0kWh, metric 805.92p, metric10 828.23p 2026-08-14 10:05:02.804542: Marginal costs baseline metric (no standing charge): 755.9364 2026-08-14 10:05:03.081228: Marginal energy costs matrix computed: min=21.9 max=39.22 2026-08-14 10:05:03.164842: Rate array import [{'start': 605, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2225, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 605, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:05:03.166021: - Your estimated bill for today is £6.66 and tomorrow is £5.86 2026-08-14 10:05:03.166156: - Import rates are cheap (21.7p - 24.2p) for the next 5 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:05:03.166189: - The battery is currently at 10% and is in eco mode for the next 2 hours. 2026-08-14 10:05:03.166220: - For the next 48 hours there will be no solar generation. 2026-08-14 10:05:03.166269: - You will run out of battery in 25 minutes. 2026-08-14 10:05:03.166291: - Your next charge slot will be in 2 hours where import rates will be cheap (21.9p). 2026-08-14 10:05:03.166339: 2026-08-14 10:05:03.220848: Plan calculation took 1.18 seconds 2026-08-14 10:05:03.224495: No high rate period found 2026-08-14 10:05:03.283703: Import threshold used for optimisation was 25.43p 2026-08-14 10:05:03.340538: Low import rate windows [0: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 1: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 2: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 3: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 4: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 5: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 6: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 7: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 8: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 9: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 10: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 11: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 12: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 13: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 14: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 15: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 16: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 17: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 18: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 19: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 20: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 21: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 22: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 23: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 24: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 25: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 26: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 27: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 28: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 29: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 30: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 31: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 32: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 33: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 34: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 35: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 36: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 37: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 38: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 39: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 40: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 41: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 42: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 43: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 44: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 45: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 46: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 47: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 48: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 49: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 50: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 51: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 52: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 53: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 54: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 55: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 56: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 57: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 58: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 59: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 60: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 61: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 62: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 63: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 64: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 65: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 66: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 67: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 68: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 69: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 70: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 71: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 72: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 73: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 74: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 75: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 76: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 77: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 78: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 79: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 80: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 81: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 82: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 83: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 84: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 85: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 86: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 87: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 88: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 89: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 90: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 91: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 92: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 93: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 94: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 95: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21] 2026-08-14 10:05:03.348869: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 10:05:03.349102: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:05:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 10:05:03.349238: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:05:03.349493: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:05:03.349582: No export window planned 2026-08-14 10:05:03.349702: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:05:03.349744: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:05:03.349906: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:05:03.350129: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:05:03.350224: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:05:03.350344: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:05:03.350466: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:05:03.350511: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:05:03.350545: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:05:03.350577: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:05:03.350605: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:05:03.350629: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:05:03.350653: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:05:03.350719: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:05:03.350756: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:05:03.350781: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:05:03.350810: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:05:03.350833: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:05:03.350863: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:05:03.350904: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:05:03.350970: Inverter 0 count register writes 0 2026-08-14 10:05:03.369025: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 10:05:03.374980: Total inverter register writes now 806 2026-08-14 10:05:03.414310: Info: Completed run status Demand 2026-08-14 10:05:03.421907: Info: record_status Demand 2026-08-14 10:05:03.428575: Saved current settings to /config/predbat_config.json 2026-08-14 10:05:03.428928: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 10:05:46.538604: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:05:46.538963: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:05:46.539046: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:05:46.539295: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:05:46.539362: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:05:46.539406: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:05:46.539449: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:07:46.754380: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:07:46.754671: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:07:46.754737: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:07:46.754920: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:07:46.754977: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:07:46.754999: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:07:46.755017: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:09:46.965494: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:09:46.965746: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:09:46.965781: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:09:46.965910: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:09:46.965949: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:09:46.965970: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:09:46.965988: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:10:00.058380: --------------- PredBat - update at 2026-08-14 10:10:00+01:00 with clock skew 0 minutes, minutes now 610 2026-08-14 10:10:00.059113: Saved current settings to /config/predbat_config.json 2026-08-14 10:10:00.059242: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 35.0 minutes 2026-08-14 10:10:00.059355: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 10:10:00.059450: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 10:10:00.080184: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 10:10:00.080315: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 10:10:00.080969: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 10:10:00.081118: Predbat mode is set to Control charge & discharge 2026-08-14 10:10:00.285605: Found 21602 load_today datapoints going back 28 days 2026-08-14 10:10:00.285760: Using load_power data to fill gaps in load_today data 2026-08-14 10:10:01.078528: Processing 721 30-minute periods for power integration 2026-08-14 10:10:01.265820: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 10:10:01.265966: Car charging hold False, threshold 6.0kWh 2026-08-14 10:10:01.266012: Current data so far today: load 9.6kWh, import 10.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 10:10:01.280175: Cars: SoC: [15.236]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 10:10:01.280976: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 10:10:01.281096: Standing charge is set to 49.98p 2026-08-14 10:10:01.335038: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 10:10:01.335203: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 10:10:01.335901: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 7.7 minutes 2026-08-14 10:10:01.336328: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 7.7 minutes 2026-08-14 10:10:01.346949: Loaded 95 datapoints of futurerate analysis 2026-08-14 10:10:01.443235: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51'] 2026-08-14 10:10:01.501183: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 10:10:01.506483: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 10:10:01.506746: Import rates: min 14.97p, max 53.39p, average 27.39p 2026-08-14 10:10:01.547280: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 10:10:01.547844: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 10:10:01.548934: High export rate found rates in range 99p to -99p 2026-08-14 10:10:01.635441: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 10:10:01.635576: Car 0 charging is not planned as it is not plugged in 2026-08-14 10:10:01.649003: Battery level now 1.61kWh, -1hr ago 1.48kWh, at midnight 2.43kWh, battery value change in the last hour 2.06p, change today -13.25p, rate_forward 16.08p 2026-08-14 10:10:01.649386: Last hour: net energy 1.62kWh, import 1.62kWh, export 0.0kWh, car 0kWh, load 1.1kWh, net cost 39.41p, import 39.41p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 10:10:01.707706: Today's energy total net 10.4kWh, import 10.4kWh, export 0.0kWh, cost 311.47p, import 261.49p, export 0.0p, carbon 0.0kg 2026-08-14 10:10:01.707868: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 10:10:01.775257: Using weighted-bucket historical load forecast over 14 days 2026-08-14 10:10:01.795761: Today's load divergence 114.58%, in-day adjustment 132.85%, damping 0.95x, yesterday 146.81% today 113.85% blend 57.64% 2026-08-14 10:10:01.795848: Today's predicted so far 3.62kWh with 0.0kWh car/iBoost excluded, 1.9kWh import ignored, and 5.52kWh forecast extra. 2026-08-14 10:10:01.795882: Today's actual load so far 5.7kWh with 0.0kWh car/iBoost excluded, and 3.95kWh import ignored. 2026-08-14 10:10:01.828024: Inverter 0: Type SK Sunsynk 2026-08-14 10:10:01.828135: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:10:01.828345: Reserve min: 7%, battery_min: 7% 2026-08-14 10:10:01.828424: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:10:01.828680: Inverter 0 SoC: 1.94kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 1182W, current battery voltage 51.2V, grid power -54W, load power 1240W, PV Power 0W 2026-08-14 10:10:01.828839: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:10:01.828927: Inverter 0 scheduled charge enable is False 2026-08-14 10:10:01.829001: Inverter 0 charge windows currently [] 2026-08-14 10:10:01.829041: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:10:01.829250: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:10:01.829311: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:10:01.829354: Inverter 0 scheduled discharge enable is False 2026-08-14 10:10:01.829497: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:10:01.829535: Inverter 0 discharge windows currently [] 2026-08-14 10:10:01.829558: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:10:01.829581: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:10:01.829598: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:10:01.895666: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 10:10:01.895822: Plan was last updated on 2026-08-14 10:00:00+01:00 and is now 10.0 minutes old 2026-08-14 10:10:01.896204: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 10:10:01.896268: Best export window [ ] 2026-08-14 10:10:01.897258: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:10:01.900487: Load divergence over 8.0 hours mean 420.84W, min 240.6W, max 1225.8W, std dev 173.59W, divergence 20.62% 2026-08-14 10:10:01.913541: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:10:01.913673: LoadML is_calculating False 2026-08-14 10:10:01.913741: Creating pool of 12 processes to match your CPU count 2026-08-14 10:10:02.045724: predict base end_record 08-15 13:10:00, final soc 1.12kWh, metric 901.89p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 29.83kWh, PV 0.0kWh 2026-08-14 10:10:02.178323: Battery has 0.75 hours left - now at 1.94kWh 2026-08-14 10:10:02.224156: predict base10 end_record 08-15 13:10:00, final soc 1.12kWh, metric 928.44p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.79kWh, PV 0.0kWh 2026-08-14 10:10:02.297967: predict best10 end_record 08-15 13:10:00, final soc 1.77kWh, metric 848.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.79kWh, PV 0.0kWh 2026-08-14 10:10:02.387272: predict best end_record 08-15 13:10:00, final soc 1.9kWh, metric 827.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 29.83kWh, PV 0.0kWh 2026-08-14 10:10:02.387349: Saving plan best values to HA entities 2026-08-14 10:10:02.538471: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 10:10:02.544170: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 10:10:02.550177: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 42.83kWh, house 6.46kWh, export 0.0kWh, metric 827.27p, metric10 848.32p 2026-08-14 10:10:02.626477: Marginal costs baseline metric (no standing charge): 777.2909 2026-08-14 10:10:02.895655: Marginal energy costs matrix computed: min=21.95 max=38.69 2026-08-14 10:10:02.970471: Rate array import [{'start': 610, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2230, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 610, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:10:02.971176: - Your estimated bill for today is £6.81 and tomorrow is £5.86 2026-08-14 10:10:02.971225: - Import rates are cheap (21.7p - 24.2p) for the next 5 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:10:02.971248: - The battery is currently at 12% and is in eco mode for the next 2 and three quarters hours. 2026-08-14 10:10:02.971266: - For the next 48 hours there will be no solar generation. 2026-08-14 10:10:02.971283: - You will run out of battery in 45 minutes. 2026-08-14 10:10:02.971305: - Your next charge slot will be in 2 and three quarters hours where import rates will be cheap (21.9p). 2026-08-14 10:10:02.971322: 2026-08-14 10:10:03.017333: Plan calculation took 1.12 seconds 2026-08-14 10:10:03.020720: No high rate period found 2026-08-14 10:10:03.074541: Import threshold used for optimisation was 25.43p 2026-08-14 10:10:03.132717: Low import rate windows [0: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 1: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 2: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 3: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 4: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 5: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 6: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 7: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 8: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 9: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 10: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 11: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 12: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 13: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 14: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 15: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 16: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 17: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 18: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 19: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 20: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 21: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 22: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 23: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 24: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 25: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 26: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 27: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 28: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 29: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 30: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 31: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 32: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 33: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 34: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 35: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 36: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 37: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 38: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 39: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 40: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 41: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 42: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 43: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 44: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 45: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 46: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 47: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 48: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 49: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 50: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 51: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 52: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 53: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 54: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 55: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 56: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 57: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 58: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 59: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 60: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 61: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 62: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 63: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 64: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 65: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 66: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 67: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 68: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 69: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 70: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 71: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 72: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 73: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 74: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 75: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 76: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 77: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 78: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 79: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 80: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 81: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 82: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 83: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 84: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 85: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 86: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 87: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 88: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 89: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 90: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 91: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 92: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 93: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 94: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 95: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21] 2026-08-14 10:10:03.140187: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 10:10:03.140317: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:10:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 10:10:03.140410: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:10:03.140612: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:10:03.140683: No export window planned 2026-08-14 10:10:03.140782: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:10:03.140829: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:10:03.141085: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:10:03.141269: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:10:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:10:03.141324: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:10:03.141374: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:10:03.141462: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:10:03.141496: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:10:03.141519: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:10:03.141544: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:10:03.141563: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:10:03.141587: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:10:03.141607: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:10:03.141658: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:10:03.141686: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:10:03.141707: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:10:03.141727: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:10:03.141771: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:10:03.141793: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:10:03.141819: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:10:03.141836: Inverter 0 count register writes 0 2026-08-14 10:10:03.158209: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 10:10:03.158434: Recompute is saving previous plan... 2026-08-14 10:10:03.161762: Best charge window [ 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0% ] 2026-08-14 10:10:03.161844: Best export window [ ] 2026-08-14 10:10:03.162708: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:10:03.165846: Load divergence over 8.0 hours mean 420.84W, min 240.6W, max 1225.8W, std dev 173.59W, divergence 20.62% 2026-08-14 10:10:03.178240: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:10:03.178335: LoadML is_calculating False 2026-08-14 10:10:03.178419: Creating pool of 12 processes to match your CPU count 2026-08-14 10:10:03.251100: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 10:10:03.253440: Optimise levels pass started at 2026-08-14 10:10:03 2026-08-14 10:10:03.253507: Optimise all windows, total charge 95 export 1 2026-08-14 10:10:03.567672: >> Region optimisation pass width 960 2026-08-14 10:10:04.206363: >> Region optimisation pass width 480 2026-08-14 10:10:04.604427: >> Region optimisation pass width 240 2026-08-14 10:10:05.125813: >> Region optimisation pass width 120 2026-08-14 10:10:06.257134: Calculated end_record as 08-15 13:00:00 based on best_price 22.02p, next_charge_start 08-14 13:00:00, max_windows 53 2026-08-14 10:10:06.257252: Optimise levels pass ended at 2026-08-14 10:10:06, duration 3.0 seconds tried 308 combinations 2026-08-14 10:10:06.257306: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 968.84p, best_keep 0kWh, best_cycle 47.79kWh, best_carbon 0kg, best_import 35.22kWh 2026-08-14 10:10:06.273170: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 15.78p with charge limits [0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 10:10:06.274677: Best charge windows best_metric 751.04p, best_cost 802.98p, best_carbon 0kg, best_import 49.44kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 81%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:10:06.274771: Best export windows best_metric 751.04p, best_cost 802.98p, best_carbon 0kg, best_import 49.44kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:10:06.274871: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.02p, best_metric 751.04p, best_cost 802.98p, best_cycle 26.48kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:06.366820: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.02p, best_metric 751.04p, best_cost 802.98p, best_cycle 26.48kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:06.495017: Optimise price set 17.0p, pass trim_import, price 15.78p, start_at_low False, best_price_charge 22.02p, best_metric 751.04p, best_cost 802.98p, best_cycle 26.48kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:06.531392: Best charge windows best_metric 749.06p, best_cost 763.53p, best_carbon 0kg, best_import 49.44kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:10:06.531589: Best export windows best_metric 749.06p, best_cost 763.53p, best_carbon 0kg, best_import 49.44kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:10:06.533993: Best charge windows best_metric 749.06p, best_cost 763.53p, best_carbon 0kg, best_import 49.44kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:10:06.534275: Best export windows best_metric 749.06p, best_cost 763.53p, best_carbon 0kg, best_import 49.44kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:10:06.534421: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:06.631295: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:06.774677: Optimise price set 23.0p, pass normal, price 21.43p, start_at_low False, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:06.807613: Optimise price set 21.6p, pass normal, price 20.21p, start_at_low False, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:06.837383: Optimise price set 20.4p, pass normal, price 18.99p, start_at_low False, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:06.870977: Optimise price set 19.2p, pass normal, price 17.81p, start_at_low False, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:06.902292: Optimise price set 17.8p, pass normal, price 16.62p, start_at_low False, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:06.932029: Optimise price set 17.4p, pass normal, price 16.19p, start_at_low False, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:06.963917: Optimise price set 17.0p, pass normal, price 15.78p, start_at_low False, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:06.997093: Best charge windows best_metric 749.06p, best_cost 763.53p, best_carbon 0kg, best_import 49.44kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:10:06.997268: Best export windows best_metric 749.06p, best_cost 763.53p, best_carbon 0kg, best_import 49.44kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:10:06.999541: Best charge windows best_metric 749.06p, best_cost 763.53p, best_carbon 0kg, best_import 49.44kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:10:06.999691: Best export windows best_metric 749.06p, best_cost 763.53p, best_carbon 0kg, best_import 49.44kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:10:06.999859: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:07.084891: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:07.201637: Best charge windows best_metric 749.06p, best_cost 763.53p, best_carbon 0kg, best_import 49.44kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:10:07.201937: Best export windows best_metric 749.06p, best_cost 763.53p, best_carbon 0kg, best_import 49.44kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:10:07.202035: Optimise price set 17.0p, pass low, price 15.78p, start_at_low True, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:07.230970: Optimise price set 17.4p, pass low, price 16.19p, start_at_low True, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:07.258459: Optimise price set 17.8p, pass low, price 16.62p, start_at_low True, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:07.286580: Optimise price set 19.2p, pass low, price 17.81p, start_at_low True, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:07.317289: Optimise price set 20.4p, pass low, price 18.99p, start_at_low True, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:07.349153: Optimise price set 21.6p, pass low, price 20.21p, start_at_low True, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:07.382006: Optimise price set 23.0p, pass low, price 21.43p, start_at_low True, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:07.414760: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:07.563084: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:07.645879: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.02p, best_metric 749.06p, best_cost 763.53p, best_cycle 24.08kWh, best_carbon 0kg, best_import 49.44kWh 2026-08-14 10:10:07.826753: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.02p, best_metric 747.94p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:07.861769: Optimise price set 24.4p, pass low, price 22.78p, start_at_low True, best_price_charge 22.02p, best_metric 747.94p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:07.926144: Optimise price set 25.0p, pass low, price 23.34p, start_at_low True, best_price_charge 22.02p, best_metric 747.94p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:07.962286: Optimise price set 25.8p, pass low, price 24.07p, start_at_low True, best_price_charge 22.02p, best_metric 747.94p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:07.994029: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.02p, best_metric 747.94p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.025253: Optimise price set 26.6p, pass low, price 24.83p, start_at_low True, best_price_charge 22.02p, best_metric 747.94p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.057148: Optimise price set 27.2p, pass low, price 25.27p, start_at_low True, best_price_charge 22.02p, best_metric 747.94p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.089074: Optimise price set 27.4p, pass low, price 25.52p, start_at_low True, best_price_charge 22.02p, best_metric 747.94p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.175829: Optimise price set 27.6p, pass low, price 25.71p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.341190: Optimise price set 28.0p, pass low, price 26.0p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.383131: Optimise price set 28.2p, pass low, price 26.24p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.425998: Optimise price set 28.4p, pass low, price 26.49p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.468329: Optimise price set 29.2p, pass low, price 27.24p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.514935: Optimise price set 30.0p, pass low, price 27.99p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.557520: Optimise price set 30.6p, pass low, price 28.59p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.600630: Optimise price set 31.4p, pass low, price 29.17p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.644817: Optimise price set 32.2p, pass low, price 30.04p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.687046: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.733574: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.772676: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.814489: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.858303: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.897394: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.944132: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:08.985884: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:09.023472: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:09.069773: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:09.118366: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:09.167276: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:09.210467: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:09.250841: Best charge windows best_metric 747.93p, best_cost 762.48p, best_carbon 0kg, best_import 49.45kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:10:09.251078: Best export windows best_metric 747.93p, best_cost 762.48p, best_carbon 0kg, best_import 49.45kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:10:09.252802: Best charge windows best_metric 747.93p, best_cost 762.48p, best_carbon 0kg, best_import 49.45kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:10:09.252999: Best export windows best_metric 747.93p, best_cost 762.48p, best_carbon 0kg, best_import 49.45kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:10:09.253195: Optimise price set 27.4p, pass trim_import, price 25.43p, start_at_low False, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:09.298248: Optimise price set 23.8p, pass trim_import, price 22.25p, start_at_low False, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:09.345194: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.02p, best_metric 747.93p, best_cost 762.48p, best_cycle 24.22kWh, best_carbon 0kg, best_import 49.45kWh 2026-08-14 10:10:09.426843: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:09.547730: Best charge windows best_metric 747.82p, best_cost 762.36p, best_carbon 0kg, best_import 49.41kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:10:09.548049: Best export windows best_metric 747.82p, best_cost 762.36p, best_carbon 0kg, best_import 49.41kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:10:09.549700: Optimise price set 27.4p, pass normal, price 25.43p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:09.597961: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:09.644368: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:09.724070: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:09.873349: Optimise price set 23.0p, pass normal, price 21.43p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:09.904163: Optimise price set 21.6p, pass normal, price 20.21p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:09.937324: Optimise price set 20.4p, pass normal, price 18.99p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:09.974331: Optimise price set 19.2p, pass normal, price 17.81p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.009594: Optimise price set 17.8p, pass normal, price 16.62p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.047518: Optimise price set 17.4p, pass normal, price 16.19p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.079113: Optimise price set 17.0p, pass normal, price 15.78p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.111325: Best charge windows best_metric 747.82p, best_cost 762.36p, best_carbon 0kg, best_import 49.41kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:10:10.111529: Best export windows best_metric 747.82p, best_cost 762.36p, best_carbon 0kg, best_import 49.41kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:10:10.112932: Best charge windows best_metric 747.82p, best_cost 762.36p, best_carbon 0kg, best_import 49.41kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:10:10.113095: Best export windows best_metric 747.82p, best_cost 762.36p, best_carbon 0kg, best_import 49.41kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:10:10.113246: Optimise price set 27.4p, pass trim_import, price 25.43p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.155613: Optimise price set 23.8p, pass trim_import, price 22.25p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.209789: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.290406: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.425778: Best charge windows best_metric 747.82p, best_cost 762.36p, best_carbon 0kg, best_import 49.41kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:10:10.425927: Best export windows best_metric 747.82p, best_cost 762.36p, best_carbon 0kg, best_import 49.41kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:10:10.426047: Optimise price set 27.4p, pass normal, price 25.43p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.463372: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.513437: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.592634: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.733100: Optimise price set 23.0p, pass normal, price 21.43p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.767927: Optimise price set 21.6p, pass normal, price 20.21p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.801314: Optimise price set 20.4p, pass normal, price 18.99p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.831683: Optimise price set 19.2p, pass normal, price 17.81p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.864582: Optimise price set 17.8p, pass normal, price 16.62p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.902147: Optimise price set 17.4p, pass normal, price 16.19p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.930941: Optimise price set 17.0p, pass normal, price 15.78p, start_at_low False, best_price_charge 22.02p, best_metric 747.82p, best_cost 762.36p, best_cycle 23.56kWh, best_carbon 0kg, best_import 49.41kWh 2026-08-14 10:10:10.969945: Best charge windows best_metric 747.82p, best_cost 762.36p, best_carbon 0kg, best_import 49.41kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:10:10.970301: Best export windows best_metric 747.82p, best_cost 762.36p, best_carbon 0kg, best_import 49.41kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:10:10.970569: Tweak plan optimisation started 2026-08-14 10:10:11.261272: Tweak optimisation finished metric 747.82 cost 762.36 metric_keep 0 cycle 23.56 carbon 0 import 49.41 2026-08-14 10:10:11.282857: Swap charge optimisation started metric 747.82p, cost 762.36p, min_improvement_swap 0.1p 2026-08-14 10:10:14.015299: Swap charge optimisation finished metric 747.82p, cost 762.36p 2026-08-14 10:10:14.025369: Raw charge windows [ 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] reserve 1.12 2026-08-14 10:10:14.025980: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:30:00 @ 21.04p 100% ] reserve 1.12 2026-08-14 10:10:14.026225: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 13:00:00 - 16-08 10:30:00 @ 21.04p 100% ] reserve 1.12 2026-08-14 10:10:14.026408: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 10:30:00 @ 21.04p 100% ] reserve 1.12 2026-08-14 10:10:14.060353: Previous plan best metric is 747.82 (cost 762.36) and new plan best metric is 747.82 (cost 762.36) 2026-08-14 10:10:14.060545: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 10:10:14.060724: Plan valid is now true after recompute was False 2026-08-14 10:10:14.083596: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 899.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 29.7kWh, PV 0.0kWh 2026-08-14 10:10:14.187488: Battery has 0.75 hours left - now at 1.94kWh 2026-08-14 10:10:14.228810: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 926.4p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.66kWh, PV 0.0kWh 2026-08-14 10:10:14.305480: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 835.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.66kWh, PV 0.0kWh 2026-08-14 10:10:14.388284: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 812.34p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 29.7kWh, PV 0.0kWh 2026-08-14 10:10:14.388375: Saving plan best values to HA entities 2026-08-14 10:10:14.528481: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 10:10:14.534069: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 10:10:14.539762: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 42.83kWh, house 6.46kWh, export 0.0kWh, metric 812.34p, metric10 835.47p 2026-08-14 10:10:14.615973: Marginal costs baseline metric (no standing charge): 762.3598 2026-08-14 10:10:14.836969: Marginal energy costs matrix computed: min=21.95 max=38.69 2026-08-14 10:10:14.903470: Rate array import [{'start': 610, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 610, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:10:14.904234: - Your estimated bill for today is £6.81 and tomorrow is £5.86 2026-08-14 10:10:14.904287: - Import rates are cheap (21.7p - 24.2p) for the next 5 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:10:14.904312: - The battery is currently at 12% and is in eco mode for the next 2 and three quarters hours. 2026-08-14 10:10:14.904330: - For the next 48 hours there will be no solar generation. 2026-08-14 10:10:14.904351: - You will run out of battery in 45 minutes. 2026-08-14 10:10:14.904368: - Your next charge slot will be in 2 and three quarters hours where import rates will be cheap (21.9p). 2026-08-14 10:10:14.904385: 2026-08-14 10:10:14.949196: Plan calculation took 11.79 seconds 2026-08-14 10:10:14.949602: Inverter 0: Type SK Sunsynk 2026-08-14 10:10:14.949668: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:10:14.949912: Reserve min: 7%, battery_min: 7% 2026-08-14 10:10:14.950019: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:10:14.950420: Inverter 0 SoC: 1.94kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 1182W, current battery voltage 51.2V, grid power -54W, load power 1240W, PV Power 0W 2026-08-14 10:10:14.950715: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:10:14.950825: Inverter 0 scheduled charge enable is False 2026-08-14 10:10:14.950881: Inverter 0 charge windows currently [] 2026-08-14 10:10:14.950931: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:10:14.951098: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:10:14.951142: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:10:14.951195: Inverter 0 scheduled discharge enable is False 2026-08-14 10:10:14.951373: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:10:14.951425: Inverter 0 discharge windows currently [] 2026-08-14 10:10:14.951466: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:10:14.951509: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:10:14.951544: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:10:15.009045: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 10:10:15.009250: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:10:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 10:10:15.009360: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:10:15.009605: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:10:15.009700: No export window planned 2026-08-14 10:10:15.009871: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:10:15.009920: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:10:15.010115: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:10:15.010322: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:10:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:10:15.010384: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:10:15.010475: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:10:15.010654: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:10:15.010706: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:10:15.010746: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:10:15.010799: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:10:15.010863: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:10:15.010928: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:10:15.010994: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:10:15.011188: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:10:15.011265: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:10:15.011298: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:10:15.011325: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:10:15.011350: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:10:15.011375: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:10:15.011398: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:10:15.011419: Inverter 0 count register writes 0 2026-08-14 10:10:15.033863: Total inverter register writes now 806 2026-08-14 10:10:15.079365: Info: Completed run status Demand 2026-08-14 10:10:15.086308: Info: record_status Demand 2026-08-14 10:10:15.095901: Saved current settings to /config/predbat_config.json 2026-08-14 10:10:15.096218: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 10:10:47.195658: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:10:47.195946: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:10:47.196001: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:10:47.196175: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:10:47.196219: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:10:47.196242: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:10:47.196260: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:13:01.429835: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:13:01.430101: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:13:01.430146: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:13:01.430306: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:13:01.430371: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:13:01.430417: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:13:01.430435: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:14:20.795996: Component config save requested: mcp, changes=['mcp_enable'], deletions=[] 2026-08-14 10:14:20.848309: Setting mcp_enable = True 2026-08-14 10:14:20.878578: Component mcp config updated successfully 2026-08-14 10:14:22.615905: Stopping Predbat 2026-08-14 10:14:22.616013: Predbat terminating 2026-08-14 10:14:22.616118: Stopping load_ml interface 2026-08-14 10:14:22.716554: Stopped load_ml interface 2026-08-14 10:14:22.716666: Stopping temperature interface 2026-08-14 10:14:22.817096: Stopped temperature interface 2026-08-14 10:14:22.817235: Stopping mcp interface 2026-08-14 10:14:22.917641: Stopped mcp interface 2026-08-14 10:14:22.917751: Stopping web interface 2026-08-14 10:14:23.018204: Stopped web interface 2026-08-14 10:14:23.018322: Stopping ha_history interface 2026-08-14 10:14:23.118723: Stopped ha_history interface 2026-08-14 10:14:23.118864: Stopping ha interface 2026-08-14 10:14:23.157939: Info: Web socket stopping 2026-08-14 10:14:23.158036: Info: Web Socket stopped 2026-08-14 10:14:23.158178: Info: HA interface stopped 2026-08-14 10:14:23.219273: Stopped ha interface 2026-08-14 10:14:23.219383: Stopping storage interface 2026-08-14 10:14:23.319774: Stopped storage interface 2026-08-14 10:14:23.319890: Info: Components stopped 2026-08-14 10:14:23.319988: Predbat terminated 2026-08-14 10:14:24.386512: HAHistory: Finalizing... 2026-08-14 10:14:24.386618: HAHistory: Stopped 2026-08-14 10:14:24.986372: LoadMLComponent: Finalizing... 2026-08-14 10:14:24.986487: LoadMLComponent: Stopped 2026-08-14 10:14:26.045376: StorageComponent: Finalizing... 2026-08-14 10:14:26.045492: StorageComponent: Stopped 2026-08-14 10:14:26.390352: HTTP MCP Server stopped 2026-08-14 10:14:27.616482: TemperatureAPI: Finalizing... 2026-08-14 10:14:27.616601: TemperatureAPI: Stopped 2026-08-14 10:14:56.784861: Info: No secrets.yaml file found 2026-08-14 10:14:56.785043: Loading apps.yaml 2026-08-14 10:14:56.810472: Predbat: Startup predbat 2026-08-14 10:14:56.852141: --------------- PredBat - update at 2026-08-14 10:10:00+01:00 with clock skew 0 minutes, minutes now 610 2026-08-14 10:14:56.854261: Config root is /config 2026-08-14 10:14:56.854408: --------------- PredBat - update at 2026-08-14 10:10:00+01:00 with clock skew 0 minutes, minutes now 610 2026-08-14 10:14:56.854462: Initialising Storage interface 2026-08-14 10:14:56.854671: Initialising Home Assistant Interface interface 2026-08-14 10:14:56.876648: Initialising Home Assistant History interface 2026-08-14 10:14:56.876793: Initialising Web Interface interface 2026-08-14 10:14:56.876870: Initialising plugin system 2026-08-14 10:14:56.877001: Scanning for plugins in: /addon 2026-08-14 10:14:56.877356: Plugin discovery complete. Loaded 0 plugins. 2026-08-14 10:14:56.877413: Starting Storage interface 2026-08-14 10:14:56.877449: Creating task: 2026-08-14 10:14:56.878337: StorageComponent: Waiting for API to start 2026-08-14 10:14:56.886585: StorageComponent: Started 2026-08-14 10:14:57.878643: Starting Home Assistant Interface interface 2026-08-14 10:14:57.878789: Creating task: 2026-08-14 10:14:57.879352: HAInterface: Waiting for API to start 2026-08-14 10:14:57.879631: Info: Starting HA interface 2026-08-14 10:14:57.880087: Info: Start socket for url http://10.0.20.15:8123/api/websocket 2026-08-14 10:14:57.883592: Info: Web Socket active 2026-08-14 10:14:58.879831: Starting Home Assistant History interface 2026-08-14 10:14:58.879988: Creating task: 2026-08-14 10:14:58.880841: Info: Starting HAHistory 2026-08-14 10:14:58.881271: Info: HAHistory: Pruning history data started. 2026-08-14 10:14:58.881351: HAHistory: Waiting for API to start 2026-08-14 10:14:58.881452: Info: HAHistory: Pruning history data completed. 2026-08-14 10:14:58.881647: HAHistory: Started 2026-08-14 10:14:59.881694: Starting Web Interface interface 2026-08-14 10:14:59.881865: Creating task: 2026-08-14 10:14:59.882418: WebInterface: Waiting for API to start 2026-08-14 10:15:00.884790: Config root is /config and printable config_root_p is now /config 2026-08-14 10:15:00.980050: Regular expression argument octopus_saving_session matched ^(binary_sensor.octopus_energy([0-9a-z_]+|)_saving_session(s|))$ with binary_sensor.octopus_energy_a_db198414_octoplus_saving_sessions 2026-08-14 10:15:00.981964: Regular expression argument octopus_free_session matched ^(event.octopus_energy_([0-9a-z_]+|)_octoplus_free_electricity_session_events)$ with event.octopus_energy_a_db198414_octoplus_free_electricity_session_events 2026-08-14 10:15:00.982068: Refreshing Predbat configuration 2026-08-14 10:15:00.982206: Loading current config 2026-08-14 10:15:01.636812: Saved current settings to /config/predbat_config.json 2026-08-14 10:15:02.274932: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 10:15:02.289446: Initialising MCP Server interface 2026-08-14 10:15:02.289812: Initialising External Temperature API interface 2026-08-14 10:15:02.290039: Starting MCP Server interface 2026-08-14 10:15:02.290079: Creating task: 2026-08-14 10:15:02.290545: PredbatMCPServer: Waiting for API to start 2026-08-14 10:15:02.290741: Creating HTTP MCP Server with Predbat integration 2026-08-14 10:15:02.290810: HTTP MCP Server started (web interface integration) 2026-08-14 10:15:03.290782: Starting External Temperature API interface 2026-08-14 10:15:03.290932: Creating task: 2026-08-14 10:15:03.291431: TemperatureAPI: Waiting for API to start 2026-08-14 10:15:03.411813: TemperatureAPI: Started 2026-08-14 10:15:04.291816: Initialising ML Load Forecaster interface 2026-08-14 10:15:04.367435: ML Predictor: Upgraded 288 feature std values to prevent extreme normalization 2026-08-14 10:15:04.367563: ML Predictor: Model loaded from /config/predbat_ml_model.npz (trained 2026-08-14 08:49, val_mae=0.0039, val_bias=-0.0007) 2026-08-14 10:15:04.367681: ML Component: Loaded existing model 2026-08-14 10:15:04.367774: Starting ML Load Forecaster interface 2026-08-14 10:15:04.367805: Creating task: 2026-08-14 10:15:04.368210: LoadMLComponent: Waiting for API to start 2026-08-14 10:15:04.410274: ML Component: Loaded database history: 16092 load points, 0.2h elapsed since save, age 55.0 days (shift will be applied on next fetch) 2026-08-14 10:15:04.423312: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 10:15:07.949837: Processing 1297 30-minute periods for power integration 2026-08-14 10:15:08.027506: ML Component: Car charging hold False, car energy reported load False 2026-08-14 10:15:08.113556: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 10:15:08.206523: ML Temperature data points: 48351 2026-08-14 10:15:08.959311: ML Component: Fetched 7776 load data points, 27.0 days of history 2026-08-14 10:15:08.974766: ML Component: Data fetch completed, load data age 55.0 days, 16099 data points 2026-08-14 10:15:08.974877: ML Component: No training needed, model age is 0.35 hours 2026-08-14 10:15:08.974953: ML Component: Generating predictions load data age 55.0 days, 16099 data points 2026-08-14 10:15:09.105014: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0961 max_dow {0: 0.10014999996256083, 1: 0.10541562554407864, 2: 0.11911562483031304, 3: 0.12494687463529408, 4: 0.17094062535744162, 5: 0.09827500002831221, 6: 0.10970937514957041} 2026-08-14 10:15:09.514133: ML Component: Generated 576 predictions (total 38.00 kWh over 48h) 2026-08-14 10:15:09.547094: ML Component: Prediction cycle completed 2026-08-14 10:15:09.638314: ML Component: Saved 16099 steps (55 days) of history to /config/predbat_ml_history.npz 2026-08-14 10:15:09.640587: LoadMLComponent: Started 2026-08-14 10:15:10.374557: Refreshing Predbat configuration 2026-08-14 10:15:11.097041: Watch list [] 2026-08-14 10:15:12.116882: Saved current settings to /config/predbat_config.json 2026-08-14 10:15:12.117946: Validation of apps.yaml was successful 2026-08-14 10:15:12.121655: Restored saved plan from 10 minutes ago: 5 charge windows, 0 export windows 2026-08-14 10:15:12.128271: Predbat: Next run time will be 2026-08-14 10:15:00 and then every 300 seconds 2026-08-14 10:15:13.219703: Refreshing Predbat configuration 2026-08-14 10:15:13.777613: Saved current settings to /config/predbat_config.json 2026-08-14 10:15:13.778284: Validation of apps.yaml was successful 2026-08-14 10:15:13.778424: --------------- PredBat - update at 2026-08-14 10:15:00+01:00 with clock skew 0 minutes, minutes now 615 2026-08-14 10:15:13.778819: Saved current settings to /config/predbat_config.json 2026-08-14 10:15:13.971145: Loaded GitHub URL cache from storage (1 entries) 2026-08-14 10:15:13.971279: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 40.2 minutes 2026-08-14 10:15:13.971331: Predbat /addon/github.py repository springfall2008/batpred version v8.47.5 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 10:15:13.971384: Autoupdate: There is an update pending v8.48.1 v8.48.1 - auto update is off 2026-08-14 10:15:13.987382: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 10:15:13.987499: days_previous_auto enabled - using weighted-bucket historical load forecast over up to 14 days 2026-08-14 10:15:13.988083: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 10:15:13.988226: Predbat mode is set to Control charge & discharge 2026-08-14 10:15:14.134702: Found 21602 load_today datapoints going back 27 days 2026-08-14 10:15:14.134845: Using load_power data to fill gaps in load_today data 2026-08-14 10:15:14.811670: Processing 721 30-minute periods for power integration 2026-08-14 10:15:15.079243: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 10:15:15.079366: Car charging hold False, threshold 6.0kWh 2026-08-14 10:15:15.079408: Current data so far today: load 9.7kWh, import 10.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 10:15:15.123937: Cars: SoC: [15.236]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 10:15:15.124723: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 10:15:15.124817: Standing charge is set to 49.98p 2026-08-14 10:15:15.164808: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 10:15:15.164909: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 10:15:15.165115: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 12.9 minutes 2026-08-14 10:15:15.165496: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 12.9 minutes 2026-08-14 10:15:15.170300: Loaded 95 datapoints of futurerate analysis 2026-08-14 10:15:15.246230: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51'] 2026-08-14 10:15:15.290710: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 10:15:15.295272: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 10:15:15.295362: Import rates: min 14.97p, max 53.39p, average 27.38p 2026-08-14 10:15:15.326364: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 10:15:15.326475: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 10:15:15.327411: High export rate found rates in range 99p to -99p 2026-08-14 10:15:15.397689: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 10:15:15.397831: Car 0 charging is not planned as it is not plugged in 2026-08-14 10:15:15.409015: Battery level now 1.94kWh, -1hr ago 1.42kWh, at midnight 2.43kWh, battery value change in the last hour 8.23p, change today -7.97p, rate_forward 16.08p 2026-08-14 10:15:15.409426: Last hour: net energy 1.6kWh, import 1.6kWh, export 0.0kWh, car 0kWh, load 1.1kWh, net cost 38.82p, import 38.82p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 10:15:15.457658: Today's energy total net 10.4kWh, import 10.4kWh, export 0.0kWh, cost 311.47p, import 261.49p, export 0.0p, carbon 0.0kg 2026-08-14 10:15:15.457779: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 10:15:15.525298: Using weighted-bucket historical load forecast over 14 days 2026-08-14 10:15:15.581638: Today's load divergence 115.47%, in-day adjustment 133.09%, damping 0.95x, yesterday 146.81% today 114.69% blend 57.29% 2026-08-14 10:15:15.581727: Today's predicted so far 3.4kWh with 0.0kWh car/iBoost excluded, 2.14kWh import ignored, and 5.54kWh forecast extra. 2026-08-14 10:15:15.581754: Today's actual load so far 5.58kWh with 0.0kWh car/iBoost excluded, and 4.12kWh import ignored. 2026-08-14 10:15:15.611383: Octopus slots changed from [[], [], [], [], [], [], [], []] to [[]] 2026-08-14 10:15:15.611474: Octopus saving slots changed from [] to [{'start': '2026-08-12T18:00:00+01:00', 'end': '2026-08-12T20:00:00+01:00', 'rate': 2.0, 'state': False}] 2026-08-14 10:15:15.611575: Octopus free slots changed from [] to [{'start': '2024-08-15T13:00:00+01:00', 'end': '2024-08-15T14:00:00+01:00', 'rate': 0}, {'start': '2024-08-18T13:00:00+01:00', 'end': '2024-08-18T14:00:00+01:00', 'rate': 0}, {'start': '2024-08-21T13:00:00+01:00', 'end': '2024-08-21T14:00:00+01:00', 'rate': 0}, {'start': '2024-08-31T13:00:00+01:00', 'end': '2024-08-31T14:00:00+01:00', 'rate': 0}, {'start': '2024-09-10T13:00:00+01:00', 'end': '2024-09-10T14:00:00+01:00', 'rate': 0}, {'start': '2024-09-14T13:00:00+01:00', 'end': '2024-09-14T14:00:00+01:00', 'rate': 0}, {'start': '2024-10-20T13:00:00+01:00', 'end': '2024-10-20T14:00:00+01:00', 'rate': 0}, {'start': '2024-11-24T07:00:00+00:00', 'end': '2024-11-24T09:00:00+00:00', 'rate': 0}, {'start': '2025-06-22T14:00:00+01:00', 'end': '2025-06-22T15:00:00+01:00', 'rate': 0}, {'start': '2025-07-05T14:00:00+01:00', 'end': '2025-07-05T15:00:00+01:00', 'rate': 0}, {'start': '2025-08-05T14:00:00+01:00', 'end': '2025-08-05T15:00:00+01:00', 'rate': 0}, {'start': '2025-08-09T14:00:00+01:00', 'end': '2025-08-09T15:00:00+01:00', 'rate': 0}, {'start': '2025-08-31T14:00:00+01:00', 'end': '2025-08-31T15:00:00+01:00', 'rate': 0}, {'start': '2025-09-01T14:00:00+01:00', 'end': '2025-09-01T15:00:00+01:00', 'rate': 0}, {'start': '2025-09-06T14:00:00+01:00', 'end': '2025-09-06T15:00:00+01:00', 'rate': 0}, {'start': '2025-09-07T12:00:00+01:00', 'end': '2025-09-07T14:00:00+01:00', 'rate': 0}, {'start': '2025-09-11T12:00:00+01:00', 'end': '2025-09-11T13:00:00+01:00', 'rate': 0}, {'start': '2025-09-15T14:00:00+01:00', 'end': '2025-09-15T15:00:00+01:00', 'rate': 0}, {'start': '2025-09-18T14:00:00+01:00', 'end': '2025-09-18T15:00:00+01:00', 'rate': 0}, {'start': '2025-10-04T12:00:00+01:00', 'end': '2025-10-04T14:00:00+01:00', 'rate': 0}, {'start': '2025-10-05T11:00:00+01:00', 'end': '2025-10-05T12:00:00+01:00', 'rate': 0}, {'start': '2025-10-24T21:00:00+01:00', 'end': '2025-10-24T22:00:00+01:00', 'rate': 0}, {'start': '2025-10-25T12:00:00+01:00', 'end': '2025-10-25T15:00:00+01:00', 'rate': 0}] 2026-08-14 10:15:15.611954: Sensor changes require a replan, will recompute the plan 2026-08-14 10:15:15.612103: Inverter 0: Type SK Sunsynk 2026-08-14 10:15:15.612134: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:15:15.612305: Reserve min: 7%, battery_min: 7% 2026-08-14 10:15:15.612368: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:15:15.612599: Inverter 0 SoC: 1.88kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 1176W, current battery voltage 51.2V, grid power -55W, load power 1240W, PV Power 0W 2026-08-14 10:15:15.612732: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:15:15.612810: Inverter 0 scheduled charge enable is False 2026-08-14 10:15:15.612837: Inverter 0 charge windows currently [] 2026-08-14 10:15:15.612859: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:15:15.612981: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:15:15.613016: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:15:15.613050: Inverter 0 scheduled discharge enable is False 2026-08-14 10:15:15.613159: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:15:15.613207: Inverter 0 discharge windows currently [] 2026-08-14 10:15:15.613290: Looking for discharge curve with sensors sensor.sunsynk_battery_soc, sensor.predbat_SK_0_discharge_rate, predbat.status and sensor.sunsynk_battery_power 2026-08-14 10:15:19.106688: Looking for discharge curve, have found 15.0 days of history data, max days 15 2026-08-14 10:15:19.167377: Info: Cannot find battery discharge curve (no full rate discharge cycle to empty found in history), battery may not have been fully charged/discharged at max rate recently - this is normal in cost-optimised operation 2026-08-14 10:15:19.179461: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:15:19.179572: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:15:19.179593: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:15:19.236202: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 10:15:19.236284: Will recompute the plan as it is invalid 2026-08-14 10:15:19.236378: Recompute is saving previous plan... 2026-08-14 10:15:19.239108: Best charge window [ 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0% ] 2026-08-14 10:15:19.239202: Best export window [ ] 2026-08-14 10:15:19.239811: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:15:19.242400: Load divergence over 8.0 hours mean 416.48W, min 220.2W, max 1101.0W, std dev 160.09W, divergence 19.22% 2026-08-14 10:15:19.251298: Calculating data from yesterday for savings calculation 2026-08-14 10:15:19.260481: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 10:15:19.371630: Warn: Prediction kernel failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so)) - using Python engine 2026-08-14 10:15:19.390895: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 10:15:19.402374: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 869.96p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 10:15:19.417704: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 10:15:19.442115: Yesterday: Predbat disabled was £8.56 (adjusted £8.38) vs £6.21 (adjusted £5.8), saving £2.35 (adjusted £2.58) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 18.01kWh 2026-08-14 10:15:19.518881: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 901.25p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 10:15:19.519041: Yesterday: No Battery/PV system cost predicted was £9.01 (adjusted £9.01) vs £6.21 (adjusted £5.8), saving £2.8 (adjusted £3.21) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 10:15:19.531265: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:15:19.531434: LoadML is_calculating False 2026-08-14 10:15:19.531521: Creating pool of 12 processes to match your CPU count 2026-08-14 10:15:19.699318: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 10:15:19.702922: Optimise levels pass started at 2026-08-14 10:15:19 2026-08-14 10:15:19.702995: Optimise all windows, total charge 95 export 1 2026-08-14 10:15:20.200819: >> Region optimisation pass width 960 2026-08-14 10:15:20.764975: >> Region optimisation pass width 480 2026-08-14 10:15:21.154235: >> Region optimisation pass width 240 2026-08-14 10:15:21.621563: >> Region optimisation pass width 120 2026-08-14 10:15:22.916486: Calculated end_record as 08-15 13:00:00 based on best_price 22.02p, next_charge_start 08-14 13:00:00, max_windows 53 2026-08-14 10:15:22.916619: Optimise levels pass ended at 2026-08-14 10:15:22, duration 3.2 seconds tried 308 combinations 2026-08-14 10:15:22.916711: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 969.98p, best_keep 0kWh, best_cycle 47.78kWh, best_carbon 0kg, best_import 35.23kWh 2026-08-14 10:15:22.935601: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 15.78p with charge limits [0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 10:15:22.937583: Best charge windows best_metric 751.45p, best_cost 803.4p, best_carbon 0kg, best_import 49.5kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 81%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:15:22.937689: Best export windows best_metric 751.45p, best_cost 803.4p, best_carbon 0kg, best_import 49.5kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:15:22.937857: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.02p, best_metric 751.45p, best_cost 803.4p, best_cycle 26.43kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:23.017271: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.02p, best_metric 751.45p, best_cost 803.4p, best_cycle 26.43kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:23.134309: Optimise price set 17.0p, pass trim_import, price 15.78p, start_at_low False, best_price_charge 22.02p, best_metric 751.45p, best_cost 803.4p, best_cycle 26.43kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:23.165112: Best charge windows best_metric 749.48p, best_cost 763.95p, best_carbon 0kg, best_import 49.5kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:15:23.165368: Best export windows best_metric 749.48p, best_cost 763.95p, best_carbon 0kg, best_import 49.5kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:15:23.167111: Best charge windows best_metric 749.48p, best_cost 763.95p, best_carbon 0kg, best_import 49.5kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:15:23.167619: Best export windows best_metric 749.48p, best_cost 763.95p, best_carbon 0kg, best_import 49.5kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:15:23.167759: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:23.250908: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:23.405789: Optimise price set 23.0p, pass normal, price 21.43p, start_at_low False, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:23.439657: Optimise price set 21.6p, pass normal, price 20.21p, start_at_low False, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:23.473786: Optimise price set 20.4p, pass normal, price 18.99p, start_at_low False, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:23.504501: Optimise price set 19.2p, pass normal, price 17.81p, start_at_low False, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:23.535950: Optimise price set 17.8p, pass normal, price 16.62p, start_at_low False, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:23.565330: Optimise price set 17.4p, pass normal, price 16.19p, start_at_low False, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:23.593432: Optimise price set 17.0p, pass normal, price 15.78p, start_at_low False, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:23.622616: Best charge windows best_metric 749.48p, best_cost 763.95p, best_carbon 0kg, best_import 49.5kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:15:23.622949: Best export windows best_metric 749.48p, best_cost 763.95p, best_carbon 0kg, best_import 49.5kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:15:23.624718: Best charge windows best_metric 749.48p, best_cost 763.95p, best_carbon 0kg, best_import 49.5kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:15:23.624819: Best export windows best_metric 749.48p, best_cost 763.95p, best_carbon 0kg, best_import 49.5kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:15:23.625085: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:23.708374: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:23.998099: Best charge windows best_metric 749.48p, best_cost 763.95p, best_carbon 0kg, best_import 49.5kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:15:23.998573: Best export windows best_metric 749.48p, best_cost 763.95p, best_carbon 0kg, best_import 49.5kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:15:23.998659: Optimise price set 17.0p, pass low, price 15.78p, start_at_low True, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:24.035139: Optimise price set 17.4p, pass low, price 16.19p, start_at_low True, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:24.068524: Optimise price set 17.8p, pass low, price 16.62p, start_at_low True, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:24.102105: Optimise price set 19.2p, pass low, price 17.81p, start_at_low True, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:24.133212: Optimise price set 20.4p, pass low, price 18.99p, start_at_low True, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:24.168893: Optimise price set 21.6p, pass low, price 20.21p, start_at_low True, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:24.202941: Optimise price set 23.0p, pass low, price 21.43p, start_at_low True, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:24.233333: Optimise price set 23.4p, pass low, price 21.85p, start_at_low True, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:24.364801: Optimise price set 23.6p, pass low, price 22.02p, start_at_low True, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:24.449658: Optimise price set 23.8p, pass low, price 22.25p, start_at_low True, best_price_charge 22.02p, best_metric 749.48p, best_cost 763.95p, best_cycle 24.03kWh, best_carbon 0kg, best_import 49.5kWh 2026-08-14 10:15:24.618047: Optimise price set 24.2p, pass low, price 22.55p, start_at_low True, best_price_charge 22.02p, best_metric 748.33p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:24.646755: Optimise price set 24.4p, pass low, price 22.78p, start_at_low True, best_price_charge 22.02p, best_metric 748.33p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:24.716024: Optimise price set 25.0p, pass low, price 23.34p, start_at_low True, best_price_charge 22.02p, best_metric 748.33p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:24.747029: Optimise price set 25.8p, pass low, price 24.07p, start_at_low True, best_price_charge 22.02p, best_metric 748.33p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:24.782156: Optimise price set 26.0p, pass low, price 24.17p, start_at_low True, best_price_charge 22.02p, best_metric 748.33p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:24.811326: Optimise price set 26.6p, pass low, price 24.83p, start_at_low True, best_price_charge 22.02p, best_metric 748.33p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:24.844774: Optimise price set 27.2p, pass low, price 25.27p, start_at_low True, best_price_charge 22.02p, best_metric 748.33p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:24.878381: Optimise price set 27.4p, pass low, price 25.52p, start_at_low True, best_price_charge 22.02p, best_metric 748.33p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:24.963126: Optimise price set 27.6p, pass low, price 25.71p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:25.140247: Optimise price set 28.0p, pass low, price 26.0p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:25.186582: Optimise price set 28.2p, pass low, price 26.24p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:25.226040: Optimise price set 28.4p, pass low, price 26.49p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:25.267145: Optimise price set 29.2p, pass low, price 27.24p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:25.323381: Optimise price set 30.0p, pass low, price 27.99p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:25.371360: Optimise price set 30.6p, pass low, price 28.59p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:25.410374: Optimise price set 31.4p, pass low, price 29.17p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:25.454148: Optimise price set 32.2p, pass low, price 30.04p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:25.501749: Optimise price set 33.0p, pass low, price 30.81p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:25.554072: Optimise price set 34.4p, pass low, price 31.99p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:25.595213: Optimise price set 37.2p, pass low, price 34.68p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:25.647040: Optimise price set 37.6p, pass low, price 35.1p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:25.691096: Optimise price set 39.6p, pass low, price 36.88p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:25.734541: Optimise price set 39.8p, pass low, price 37.06p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:25.945288: Optimise price set 42.6p, pass low, price 39.75p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:25.991632: Optimise price set 43.0p, pass low, price 40.1p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:26.033215: Optimise price set 43.4p, pass low, price 40.38p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:26.074038: Optimise price set 45.4p, pass low, price 42.31p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:26.116436: Optimise price set 47.2p, pass low, price 43.94p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:26.160688: Optimise price set 49.0p, pass low, price 45.69p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:26.207797: Optimise price set 54.8p, pass low, price 50.94p, start_at_low True, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:26.250114: Best charge windows best_metric 748.32p, best_cost 762.87p, best_carbon 0kg, best_import 49.51kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 9%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:15:26.250295: Best export windows best_metric 748.32p, best_cost 762.87p, best_carbon 0kg, best_import 49.51kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:15:26.251846: Best charge windows best_metric 748.32p, best_cost 762.87p, best_carbon 0kg, best_import 49.51kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 9%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:15:26.252068: Best export windows best_metric 748.32p, best_cost 762.87p, best_carbon 0kg, best_import 49.51kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:15:26.252168: Optimise price set 27.4p, pass trim_import, price 25.43p, start_at_low False, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:26.332830: Optimise price set 23.8p, pass trim_import, price 22.25p, start_at_low False, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:26.379446: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.02p, best_metric 748.32p, best_cost 762.87p, best_cycle 24.16kWh, best_carbon 0kg, best_import 49.51kWh 2026-08-14 10:15:26.462021: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:26.599442: Best charge windows best_metric 748.23p, best_cost 762.77p, best_carbon 0kg, best_import 49.46kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 9%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:15:26.599840: Best export windows best_metric 748.23p, best_cost 762.77p, best_carbon 0kg, best_import 49.46kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:15:26.600213: Optimise price set 27.4p, pass normal, price 25.52p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:26.682085: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:26.726996: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:26.807779: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:26.956503: Optimise price set 23.0p, pass normal, price 21.43p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:26.990621: Optimise price set 21.6p, pass normal, price 20.21p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:27.024296: Optimise price set 20.4p, pass normal, price 18.99p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:27.056825: Optimise price set 19.2p, pass normal, price 17.81p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:27.094025: Optimise price set 17.8p, pass normal, price 16.62p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:27.123082: Optimise price set 17.4p, pass normal, price 16.19p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:27.157907: Optimise price set 17.0p, pass normal, price 15.78p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:27.192735: Best charge windows best_metric 748.23p, best_cost 762.77p, best_carbon 0kg, best_import 49.46kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:15:27.192901: Best export windows best_metric 748.23p, best_cost 762.77p, best_carbon 0kg, best_import 49.46kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:15:27.194541: Best charge windows best_metric 748.23p, best_cost 762.77p, best_carbon 0kg, best_import 49.46kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:15:27.194634: Best export windows best_metric 748.23p, best_cost 762.77p, best_carbon 0kg, best_import 49.46kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:15:27.194727: Optimise price set 27.4p, pass trim_import, price 25.43p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:27.240304: Optimise price set 23.8p, pass trim_import, price 22.25p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:27.286722: Optimise price set 23.6p, pass trim_import, price 22.01p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:27.356482: Optimise price set 23.4p, pass trim_import, price 21.7p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:27.473355: Best charge windows best_metric 748.23p, best_cost 762.77p, best_carbon 0kg, best_import 49.46kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:15:27.473540: Best export windows best_metric 748.23p, best_cost 762.77p, best_carbon 0kg, best_import 49.46kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:15:27.473704: Optimise price set 27.4p, pass normal, price 25.43p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:27.504076: Optimise price set 23.8p, pass normal, price 22.25p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:27.548357: Optimise price set 23.6p, pass normal, price 22.02p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:27.626226: Optimise price set 23.4p, pass normal, price 21.85p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:27.765240: Optimise price set 23.0p, pass normal, price 21.43p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:27.946107: Optimise price set 21.6p, pass normal, price 20.21p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:27.992342: Optimise price set 20.4p, pass normal, price 18.99p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:28.023859: Optimise price set 19.2p, pass normal, price 17.81p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:28.052909: Optimise price set 17.8p, pass normal, price 16.62p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:28.091224: Optimise price set 17.4p, pass normal, price 16.19p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:28.119462: Optimise price set 17.0p, pass normal, price 15.78p, start_at_low False, best_price_charge 22.02p, best_metric 748.23p, best_cost 762.77p, best_cycle 23.5kWh, best_carbon 0kg, best_import 49.46kWh 2026-08-14 10:15:28.154062: Best charge windows best_metric 748.23p, best_cost 762.77p, best_carbon 0kg, best_import 49.46kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] 2026-08-14 10:15:28.154420: Best export windows best_metric 748.23p, best_cost 762.77p, best_carbon 0kg, best_import 49.46kWh, metric_keep 0kWh, end_record 08-15 13:00:00, windows [ ] 2026-08-14 10:15:28.154754: Tweak plan optimisation started 2026-08-14 10:15:28.443663: Tweak optimisation finished metric 748.23 cost 762.77 metric_keep 0 cycle 23.5 carbon 0 import 49.46 2026-08-14 10:15:28.459812: Swap charge optimisation started metric 748.23p, cost 762.77p, min_improvement_swap 0.1p 2026-08-14 10:15:31.478484: Swap charge optimisation finished metric 748.23p, cost 762.77p 2026-08-14 10:15:31.490804: Raw charge windows [ 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] reserve 1.12 2026-08-14 10:15:31.491460: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:30:00 @ 21.04p 100% ] reserve 1.12 2026-08-14 10:15:31.491755: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 13:00:00 - 16-08 10:30:00 @ 21.04p 100% ] reserve 1.12 2026-08-14 10:15:31.491942: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 10:30:00 @ 21.04p 100% ] reserve 1.12 2026-08-14 10:15:31.528086: Previous plan best metric is 748.23 (cost 762.77) and new plan best metric is 748.23 (cost 762.77) 2026-08-14 10:15:31.528866: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 10:15:31.529062: Plan valid is now true after recompute was False 2026-08-14 10:15:31.556988: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 900.69p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 29.77kWh, PV 0.0kWh 2026-08-14 10:15:31.669737: Battery has 0.67 hours left - now at 1.88kWh 2026-08-14 10:15:31.712816: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 927.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.72kWh, PV 0.0kWh 2026-08-14 10:15:31.889267: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 835.87p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.72kWh, PV 0.0kWh 2026-08-14 10:15:32.084398: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 812.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 29.77kWh, PV 0.0kWh 2026-08-14 10:15:32.084626: Saving plan best values to HA entities 2026-08-14 10:15:32.317841: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 10:15:32.323987: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 10:15:32.329518: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 42.82kWh, house 6.48kWh, export 0.0kWh, metric 812.75p, metric10 835.87p 2026-08-14 10:15:32.411038: Marginal costs baseline metric (no standing charge): 762.7699 2026-08-14 10:15:32.668612: Marginal energy costs matrix computed: min=21.99 max=38.21 2026-08-14 10:15:32.739584: Rate array import [{'start': 615, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 615, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:15:32.740300: - Your estimated bill for today is £6.81 and tomorrow is £5.88 2026-08-14 10:15:32.740347: - Import rates are cheap (21.7p - 24.2p) for the next 5 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:15:32.740370: - The battery is currently at 12% and is in eco mode for the next 2 and three quarters hours. 2026-08-14 10:15:32.740390: - For the next 48 hours there will be no solar generation. 2026-08-14 10:15:32.740407: - You will run out of battery in 40 minutes. 2026-08-14 10:15:32.740426: - Your next charge slot will be in 2 and three quarters hours where import rates will be cheap (21.9p). 2026-08-14 10:15:32.740444: 2026-08-14 10:15:32.787636: Plan calculation took 13.55 seconds 2026-08-14 10:15:32.792451: Saved plan to storage 2026-08-14 10:15:32.795909: No high rate period found 2026-08-14 10:15:32.843155: Import threshold used for optimisation was 25.43p 2026-08-14 10:15:32.892014: Low import rate windows [0: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 1: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 2: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 3: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 4: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 5: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 6: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 7: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 8: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 9: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 10: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 11: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 12: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 13: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 14: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 15: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 16: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 17: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 18: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 19: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 20: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 21: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 22: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 23: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 24: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 25: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 26: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 27: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 28: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 29: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 30: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 31: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 32: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 33: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 34: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 35: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 36: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 37: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 38: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 39: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 40: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 41: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 42: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 43: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 44: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 45: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 46: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 47: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 48: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 49: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 50: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 51: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 52: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 53: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 54: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 55: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 56: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 57: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 58: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 59: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 60: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 61: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 62: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 63: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 64: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 65: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 66: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 67: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 68: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 69: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 70: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 71: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 72: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 73: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 74: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 75: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 76: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 77: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 78: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 79: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 80: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 81: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 82: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 83: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 84: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 85: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 86: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 87: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 88: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 89: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 90: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 91: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 92: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 93: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 94: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 95: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21] 2026-08-14 10:15:32.899739: Inverter 0: Type SK Sunsynk 2026-08-14 10:15:32.899826: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:15:32.900070: Reserve min: 7%, battery_min: 7% 2026-08-14 10:15:32.900155: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:15:32.900510: Inverter 0 SoC: 1.88kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 1176W, current battery voltage 51.2V, grid power -55W, load power 1240W, PV Power 0W 2026-08-14 10:15:32.900728: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:15:32.900836: Inverter 0 scheduled charge enable is False 2026-08-14 10:15:32.900879: Inverter 0 charge windows currently [] 2026-08-14 10:15:32.900914: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:15:32.901069: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:15:32.901114: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:15:32.901159: Inverter 0 scheduled discharge enable is False 2026-08-14 10:15:32.901309: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:15:32.901349: Inverter 0 discharge windows currently [] 2026-08-14 10:15:32.901386: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:15:32.901409: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:15:32.901429: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:15:32.951924: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 10:15:32.952071: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:15:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 10:15:32.952149: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:15:32.952350: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:15:32.952433: No export window planned 2026-08-14 10:15:32.952579: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:15:32.952624: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:15:32.952769: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:15:32.952985: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:15:32.953049: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:15:32.953105: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:15:32.953236: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog1_charge', 'option': 'Allow Gen'} 2026-08-14 10:15:33.002955: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog2_charge', 'option': 'Allow Gen'} 2026-08-14 10:15:33.107015: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog3_charge', 'option': 'Allow Gen'} 2026-08-14 10:15:33.130671: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog4_charge', 'option': 'Allow Gen'} 2026-08-14 10:15:33.234402: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog5_charge', 'option': 'Allow Gen'} 2026-08-14 10:15:33.285475: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog6_charge', 'option': 'Allow Gen'} 2026-08-14 10:15:33.389319: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_load_limit', 'option': 'Zero Export'} 2026-08-14 10:15:33.492826: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog1_charge', 'option': 'Allow Gen'} 2026-08-14 10:15:33.596487: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog2_charge', 'option': 'Allow Gen'} 2026-08-14 10:15:33.700031: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog3_charge', 'option': 'Allow Gen'} 2026-08-14 10:15:33.900633: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog4_charge', 'option': 'Allow Gen'} 2026-08-14 10:15:33.978610: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog5_charge', 'option': 'Allow Gen'} 2026-08-14 10:15:34.038561: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog6_charge', 'option': 'Allow Gen'} 2026-08-14 10:15:34.100897: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_load_limit', 'option': 'Zero Export'} 2026-08-14 10:15:34.209327: Inverter 0 count register writes 0 2026-08-14 10:15:34.229577: Total inverter register writes now 806 2026-08-14 10:15:34.258690: Info: Completed run status Demand 2026-08-14 10:15:34.264325: Info: record_status Demand 2026-08-14 10:15:34.270826: Saved current settings to /config/predbat_config.json 2026-08-14 10:15:34.271218: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 10:15:34.332807: Creating predbat dashboard at /config/predbat_dashboard.yaml 2026-08-14 10:16:12.384122: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:16:12.384432: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:16:12.384481: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:16:12.384658: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:16:12.384716: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:16:12.384758: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:16:12.384802: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:17:43.187597: Info: No secrets.yaml file found 2026-08-14 10:17:43.187716: Loading apps.yaml 2026-08-14 10:17:43.212890: Predbat: Startup predbat 2026-08-14 10:17:43.261649: --------------- PredBat - update at 2026-08-14 10:15:00+01:00 with clock skew 0 minutes, minutes now 615 2026-08-14 10:17:43.263637: Config root is /config 2026-08-14 10:17:43.263759: --------------- PredBat - update at 2026-08-14 10:15:00+01:00 with clock skew 0 minutes, minutes now 615 2026-08-14 10:17:43.263805: Initialising Storage interface 2026-08-14 10:17:43.264003: Initialising Home Assistant Interface interface 2026-08-14 10:17:43.283323: Initialising Home Assistant History interface 2026-08-14 10:17:43.283508: Initialising Web Interface interface 2026-08-14 10:17:43.283607: Initialising plugin system 2026-08-14 10:17:43.283715: Scanning for plugins in: /addon 2026-08-14 10:17:43.284114: Plugin discovery complete. Loaded 0 plugins. 2026-08-14 10:17:43.284172: Starting Storage interface 2026-08-14 10:17:43.284209: Creating task: 2026-08-14 10:17:43.284779: StorageComponent: Waiting for API to start 2026-08-14 10:17:43.296063: StorageComponent: Started 2026-08-14 10:17:44.285446: Starting Home Assistant Interface interface 2026-08-14 10:17:44.285576: Creating task: 2026-08-14 10:17:44.286079: HAInterface: Waiting for API to start 2026-08-14 10:17:44.286368: Info: Starting HA interface 2026-08-14 10:17:44.286741: Info: Start socket for url http://10.0.20.15:8123/api/websocket 2026-08-14 10:17:44.291369: Info: Web Socket active 2026-08-14 10:17:45.286307: Starting Home Assistant History interface 2026-08-14 10:17:45.286454: Creating task: 2026-08-14 10:17:45.287112: HAHistory: Waiting for API to start 2026-08-14 10:17:45.287686: Info: Starting HAHistory 2026-08-14 10:17:45.287789: Info: HAHistory: Pruning history data started. 2026-08-14 10:17:45.287841: Info: HAHistory: Pruning history data completed. 2026-08-14 10:17:45.287921: HAHistory: Started 2026-08-14 10:17:46.287604: Starting Web Interface interface 2026-08-14 10:17:46.287764: Creating task: 2026-08-14 10:17:46.288313: WebInterface: Waiting for API to start 2026-08-14 10:17:47.291181: Config root is /config and printable config_root_p is now /config 2026-08-14 10:17:47.382493: Regular expression argument octopus_saving_session matched ^(binary_sensor.octopus_energy([0-9a-z_]+|)_saving_session(s|))$ with binary_sensor.octopus_energy_a_db198414_octoplus_saving_sessions 2026-08-14 10:17:47.384428: Regular expression argument octopus_free_session matched ^(event.octopus_energy_([0-9a-z_]+|)_octoplus_free_electricity_session_events)$ with event.octopus_energy_a_db198414_octoplus_free_electricity_session_events 2026-08-14 10:17:47.384558: Refreshing Predbat configuration 2026-08-14 10:17:47.384750: Loading current config 2026-08-14 10:17:48.067963: Saved current settings to /config/predbat_config.json 2026-08-14 10:17:48.691524: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 10:17:48.704458: Initialising MCP Server interface 2026-08-14 10:17:48.704863: Initialising External Temperature API interface 2026-08-14 10:17:48.705139: Starting MCP Server interface 2026-08-14 10:17:48.705189: Creating task: 2026-08-14 10:17:48.705628: PredbatMCPServer: Waiting for API to start 2026-08-14 10:17:48.705855: Creating HTTP MCP Server with Predbat integration 2026-08-14 10:17:48.705921: HTTP MCP Server started (web interface integration) 2026-08-14 10:17:49.705853: Starting External Temperature API interface 2026-08-14 10:17:49.706022: Creating task: 2026-08-14 10:17:49.706531: TemperatureAPI: Waiting for API to start 2026-08-14 10:17:49.849042: TemperatureAPI: Started 2026-08-14 10:17:50.707721: Initialising ML Load Forecaster interface 2026-08-14 10:17:50.783830: ML Predictor: Upgraded 288 feature std values to prevent extreme normalization 2026-08-14 10:17:50.783997: ML Predictor: Model loaded from /config/predbat_ml_model.npz (trained 2026-08-14 08:49, val_mae=0.0039, val_bias=-0.0007) 2026-08-14 10:17:50.784179: ML Component: Loaded existing model 2026-08-14 10:17:50.784309: Starting ML Load Forecaster interface 2026-08-14 10:17:50.784404: Creating task: 2026-08-14 10:17:50.784922: LoadMLComponent: Waiting for API to start 2026-08-14 10:17:50.831098: ML Component: Loaded database history: 16094 load points, 0.1h elapsed since save, age 55.0 days (shift will be applied on next fetch) 2026-08-14 10:17:50.843613: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 10:17:54.619616: Processing 1297 30-minute periods for power integration 2026-08-14 10:17:54.698065: ML Component: Car charging hold False, car energy reported load False 2026-08-14 10:17:54.779040: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 10:17:54.857548: ML Temperature data points: 48346 2026-08-14 10:17:55.614125: ML Component: Fetched 7776 load data points, 27.0 days of history 2026-08-14 10:17:55.630457: ML Component: Data fetch completed, load data age 55.0 days, 16100 data points 2026-08-14 10:17:55.630578: ML Component: No training needed, model age is 0.43 hours 2026-08-14 10:17:55.630675: ML Component: Generating predictions load data age 55.0 days, 16100 data points 2026-08-14 10:17:55.740257: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.1034 max_dow {0: 0.10500312496256084, 1: 0.10763750054407865, 2: 0.11822499983031302, 3: 0.1251781244263053, 4: 0.1736281253574416, 5: 0.10040625002831222, 6: 0.10796875073947013} 2026-08-14 10:17:56.158736: ML Component: Generated 576 predictions (total 38.02 kWh over 48h) 2026-08-14 10:17:56.190560: ML Component: Prediction cycle completed 2026-08-14 10:17:56.278837: ML Component: Saved 16100 steps (55 days) of history to /config/predbat_ml_history.npz 2026-08-14 10:17:56.280775: LoadMLComponent: Started 2026-08-14 10:17:56.901854: Refreshing Predbat configuration 2026-08-14 10:17:57.537999: Watch list [] 2026-08-14 10:17:58.529741: Saved current settings to /config/predbat_config.json 2026-08-14 10:17:58.530758: Validation of apps.yaml was successful 2026-08-14 10:17:58.534530: Restored saved plan from 0 minutes ago: 5 charge windows, 0 export windows 2026-08-14 10:17:58.541789: Predbat: Next run time will be 2026-08-14 10:20:00 and then every 300 seconds 2026-08-14 10:17:59.545675: Refreshing Predbat configuration 2026-08-14 10:18:00.236999: Saved current settings to /config/predbat_config.json 2026-08-14 10:18:00.237978: Validation of apps.yaml was successful 2026-08-14 10:18:00.238118: --------------- PredBat - update at 2026-08-14 10:15:00+01:00 with clock skew 0 minutes, minutes now 615 2026-08-14 10:18:00.238701: Saved current settings to /config/predbat_config.json 2026-08-14 10:18:00.441829: Loaded GitHub URL cache from storage (1 entries) 2026-08-14 10:18:00.441987: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 43.0 minutes 2026-08-14 10:18:00.442073: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 10:18:00.442588: Autoupdate: Currently up to date 2026-08-14 10:18:00.466527: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 10:18:00.466663: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 10:18:00.466866: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 10:18:00.467463: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 10:18:00.467648: Predbat mode is set to Control charge & discharge 2026-08-14 10:18:00.629301: Found 21602 load_today datapoints going back 27 days 2026-08-14 10:18:00.629444: Using load_power data to fill gaps in load_today data 2026-08-14 10:18:01.392699: Processing 721 30-minute periods for power integration 2026-08-14 10:18:01.668076: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 10:18:01.668213: Car charging hold False, threshold 6.0kWh 2026-08-14 10:18:01.668262: Current data so far today: load 9.7kWh, import 10.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 10:18:01.713744: Cars: SoC: [15.236]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 10:18:01.714514: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 10:18:01.714602: Standing charge is set to 49.98p 2026-08-14 10:18:01.755652: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 10:18:01.755761: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 10:18:01.755958: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 15.7 minutes 2026-08-14 10:18:01.756340: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 15.7 minutes 2026-08-14 10:18:01.762317: Loaded 95 datapoints of futurerate analysis 2026-08-14 10:18:01.838762: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51'] 2026-08-14 10:18:01.882527: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 10:18:01.886692: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 10:18:01.886788: Import rates: min 14.97p, max 53.39p, average 27.38p 2026-08-14 10:18:01.920902: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 10:18:01.921027: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 10:18:01.921943: High export rate found rates in range 99p to -99p 2026-08-14 10:18:01.996823: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 10:18:01.996931: Car 0 charging is not planned as it is not plugged in 2026-08-14 10:18:02.011105: Battery level now 1.88kWh, -1hr ago 1.42kWh, at midnight 2.43kWh, battery value change in the last hour 5.86p, change today -7.1p, rate_forward 12.86p 2026-08-14 10:18:02.011497: Last hour: net energy 1.6kWh, import 1.6kWh, export 0.0kWh, car 0kWh, load 1.1kWh, net cost 38.82p, import 38.82p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 10:18:02.062850: Today's energy total net 10.4kWh, import 10.4kWh, export 0.0kWh, cost 311.47p, import 261.49p, export 0.0p, carbon 0.0kg 2026-08-14 10:18:02.062991: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 10:18:02.146360: Using weighted-bucket historical load forecast over 14 days 2026-08-14 10:18:02.202083: Today's load divergence 122.28%, in-day adjustment 135.86%, damping 0.95x, yesterday 146.81% today 121.16% blend 57.29% 2026-08-14 10:18:02.202189: Today's predicted so far 5.54kWh with 0.0kWh car/iBoost excluded, 3.78kWh import ignored, and 5.54kWh forecast extra. 2026-08-14 10:18:02.202223: Today's actual load so far 9.7kWh with 0.0kWh car/iBoost excluded, and 3.78kWh import ignored. 2026-08-14 10:18:02.237664: Octopus slots changed from [[], [], [], [], [], [], [], []] to [[]] 2026-08-14 10:18:02.237786: Octopus saving slots changed from [] to [{'start': '2026-08-12T18:00:00+01:00', 'end': '2026-08-12T20:00:00+01:00', 'rate': 2.0, 'state': False}] 2026-08-14 10:18:02.237906: Octopus free slots changed from [] to [{'start': '2024-08-15T13:00:00+01:00', 'end': '2024-08-15T14:00:00+01:00', 'rate': 0}, {'start': '2024-08-18T13:00:00+01:00', 'end': '2024-08-18T14:00:00+01:00', 'rate': 0}, {'start': '2024-08-21T13:00:00+01:00', 'end': '2024-08-21T14:00:00+01:00', 'rate': 0}, {'start': '2024-08-31T13:00:00+01:00', 'end': '2024-08-31T14:00:00+01:00', 'rate': 0}, {'start': '2024-09-10T13:00:00+01:00', 'end': '2024-09-10T14:00:00+01:00', 'rate': 0}, {'start': '2024-09-14T13:00:00+01:00', 'end': '2024-09-14T14:00:00+01:00', 'rate': 0}, {'start': '2024-10-20T13:00:00+01:00', 'end': '2024-10-20T14:00:00+01:00', 'rate': 0}, {'start': '2024-11-24T07:00:00+00:00', 'end': '2024-11-24T09:00:00+00:00', 'rate': 0}, {'start': '2025-06-22T14:00:00+01:00', 'end': '2025-06-22T15:00:00+01:00', 'rate': 0}, {'start': '2025-07-05T14:00:00+01:00', 'end': '2025-07-05T15:00:00+01:00', 'rate': 0}, {'start': '2025-08-05T14:00:00+01:00', 'end': '2025-08-05T15:00:00+01:00', 'rate': 0}, {'start': '2025-08-09T14:00:00+01:00', 'end': '2025-08-09T15:00:00+01:00', 'rate': 0}, {'start': '2025-08-31T14:00:00+01:00', 'end': '2025-08-31T15:00:00+01:00', 'rate': 0}, {'start': '2025-09-01T14:00:00+01:00', 'end': '2025-09-01T15:00:00+01:00', 'rate': 0}, {'start': '2025-09-06T14:00:00+01:00', 'end': '2025-09-06T15:00:00+01:00', 'rate': 0}, {'start': '2025-09-07T12:00:00+01:00', 'end': '2025-09-07T14:00:00+01:00', 'rate': 0}, {'start': '2025-09-11T12:00:00+01:00', 'end': '2025-09-11T13:00:00+01:00', 'rate': 0}, {'start': '2025-09-15T14:00:00+01:00', 'end': '2025-09-15T15:00:00+01:00', 'rate': 0}, {'start': '2025-09-18T14:00:00+01:00', 'end': '2025-09-18T15:00:00+01:00', 'rate': 0}, {'start': '2025-10-04T12:00:00+01:00', 'end': '2025-10-04T14:00:00+01:00', 'rate': 0}, {'start': '2025-10-05T11:00:00+01:00', 'end': '2025-10-05T12:00:00+01:00', 'rate': 0}, {'start': '2025-10-24T21:00:00+01:00', 'end': '2025-10-24T22:00:00+01:00', 'rate': 0}, {'start': '2025-10-25T12:00:00+01:00', 'end': '2025-10-25T15:00:00+01:00', 'rate': 0}] 2026-08-14 10:18:02.238286: Sensor changes require a replan, will recompute the plan 2026-08-14 10:18:02.238447: Inverter 0: Type SK Sunsynk 2026-08-14 10:18:02.238484: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:18:02.238692: Reserve min: 7%, battery_min: 7% 2026-08-14 10:18:02.238767: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:18:02.239051: Inverter 0 SoC: 1.88kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 1242W, current battery voltage 51.2V, grid power -54W, load power 1307W, PV Power 0W 2026-08-14 10:18:02.239208: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:18:02.239312: Inverter 0 scheduled charge enable is False 2026-08-14 10:18:02.239349: Inverter 0 charge windows currently [] 2026-08-14 10:18:02.239377: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:18:02.239491: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:18:02.239526: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:18:02.239566: Inverter 0 scheduled discharge enable is False 2026-08-14 10:18:02.239689: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:18:02.239725: Inverter 0 discharge windows currently [] 2026-08-14 10:18:02.239781: Looking for discharge curve with sensors sensor.sunsynk_battery_soc, sensor.predbat_SK_0_discharge_rate, predbat.status and sensor.sunsynk_battery_power 2026-08-14 10:18:04.310812: Looking for discharge curve, have found 15.0 days of history data, max days 15 2026-08-14 10:18:04.391215: Info: Cannot find battery discharge curve (no full rate discharge cycle to empty found in history), battery may not have been fully charged/discharged at max rate recently - this is normal in cost-optimised operation 2026-08-14 10:18:04.406115: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:18:04.406225: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:18:04.406252: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:18:04.463323: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 10:18:04.463410: Will recompute the plan as it is invalid 2026-08-14 10:18:04.463521: Recompute is saving previous plan... 2026-08-14 10:18:04.466689: Best charge window [ 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0% ] 2026-08-14 10:18:04.466784: Best export window [ ] 2026-08-14 10:18:04.467576: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:18:04.470659: Load divergence over 8.0 hours mean 416.48W, min 220.2W, max 1101.0W, std dev 160.09W, divergence 19.22% 2026-08-14 10:18:04.487060: Calculating data from yesterday for savings calculation 2026-08-14 10:18:04.498186: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 10:18:04.601874: Warn: Prediction kernel failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so)) - using Python engine 2026-08-14 10:18:04.616874: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 10:18:04.630801: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 869.96p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 10:18:04.649380: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 10:18:04.677709: Yesterday: Predbat disabled was £8.56 (adjusted £8.42) vs £6.21 (adjusted £5.88), saving £2.35 (adjusted £2.53) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 14.4kWh 2026-08-14 10:18:04.750631: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 901.25p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 10:18:04.750789: Yesterday: No Battery/PV system cost predicted was £9.01 (adjusted £9.01) vs £6.21 (adjusted £5.88), saving £2.8 (adjusted £3.13) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 10:18:04.761439: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:18:04.761549: LoadML is_calculating False 2026-08-14 10:18:04.761607: Creating pool of 12 processes to match your CPU count 2026-08-14 10:18:04.917041: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 10:18:04.920475: Optimise levels pass started at 2026-08-14 10:18:04 2026-08-14 10:18:04.920551: Optimise all windows, total charge 95 export 1 2026-08-14 10:18:05.815785: >> Region optimisation pass width 960 gives best_metric 981.58p, best_cost 988.71p, best_cycle 47.32kWh, best_import 35.43kWh 2026-08-14 10:18:06.197456: >> Region optimisation pass width 480 gives best_metric 981.58p, best_cost 988.71p, best_cycle 47.32kWh, best_import 35.43kWh 2026-08-14 10:18:06.693994: >> Region optimisation pass width 240 gives best_metric 981.58p, best_cost 988.71p, best_cycle 47.32kWh, best_import 35.43kWh 2026-08-14 10:18:07.823862: >> Region optimisation pass width 120 gives best_metric 981.58p, best_cost 988.71p, best_cycle 47.32kWh, best_import 35.43kWh 2026-08-14 10:18:07.824192: Calculated end_record as 08-15 13:00:00 based on best_price 22.02p, next_charge_start 08-14 13:00:00, max_windows 53 2026-08-14 10:18:07.824258: Optimise levels pass ended at 2026-08-14 10:18:07, duration 2.9 seconds tried 301 combinations 2026-08-14 10:18:07.824337: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 981.58p, best_keep 0kWh, best_cycle 47.32kWh, best_carbon 0kg, best_import 35.43kWh 2026-08-14 10:18:07.842918: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 10:18:12.478616: Tweak plan optimisation started metric 757.89p, cost 768.78p 2026-08-14 10:18:12.734584: Tweak optimisation finished metric 757.89p, cost 768.78p, metric_keep 0kWh, cycle 23.5kWh, carbon 0kg, import 21.23kWh, changed 8 window(s) 2026-08-14 10:18:12.750696: Swap charge optimisation started metric 757.89p, cost 768.78p, min_improvement_swap 0.1p 2026-08-14 10:18:15.347754: Swap charge optimisation finished metric 757.89p, cost 768.78p 2026-08-14 10:18:15.437235: Pruned 1 dead plan slot(s) in 7 trial(s), nominal metric 754.37p -> 754.37p, plan now metric 757.9p, cost 768.78p, cycle 23.5kWh, import 21.23kWh 2026-08-14 10:18:15.448848: Raw charge windows [ 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] reserve 1.12 2026-08-14 10:18:15.449515: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 10:30:00 @ 21.04p 100% ] reserve 1.12 2026-08-14 10:18:15.449740: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 10:30:00 @ 21.04p 100% ] reserve 1.12 2026-08-14 10:18:15.449921: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 10:30:00 @ 21.04p 100% ] reserve 1.12 2026-08-14 10:18:15.484801: Previous plan best metric is 757.92 (cost 768.76) and new plan best metric is 757.89 (cost 768.78) 2026-08-14 10:18:15.485040: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 10:18:15.485200: Plan valid is now true after recompute was False 2026-08-14 10:18:15.512673: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 908.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.01kWh, PV 0.0kWh 2026-08-14 10:18:15.619017: Battery has 0.67 hours left - now at 1.88kWh 2026-08-14 10:18:15.664678: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 935.19p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.98kWh, PV 0.0kWh 2026-08-14 10:18:15.740210: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 842.53p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.98kWh, PV 0.0kWh 2026-08-14 10:18:15.815216: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 818.74p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.01kWh, PV 0.0kWh 2026-08-14 10:18:15.815320: Saving plan best values to HA entities 2026-08-14 10:18:15.975010: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 10:18:15.980370: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 10:18:15.985695: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 14.67kWh, house 6.56kWh, export 0.0kWh, metric 818.74p, metric10 842.53p 2026-08-14 10:18:16.064124: Marginal costs baseline metric (no standing charge): 768.7604 2026-08-14 10:18:16.323440: Marginal energy costs matrix computed: min=21.99 max=38.31 2026-08-14 10:18:16.394184: Rate array import [{'start': 615, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 615, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:18:16.394964: - Your estimated bill for today is £6.83 and tomorrow is £5.92 2026-08-14 10:18:16.395019: - Import rates are cheap (21.7p - 24.2p) for the next 5 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:18:16.395065: - The battery is currently at 12% and is in eco mode for the next 2 and three quarters hours. 2026-08-14 10:18:16.395085: - For the next 48 hours there will be no solar generation. 2026-08-14 10:18:16.395102: - You will run out of battery in 40 minutes. 2026-08-14 10:18:16.395128: - Your next charge slot will be in 2 and three quarters hours where import rates will be cheap (21.9p). 2026-08-14 10:18:16.395146: 2026-08-14 10:18:16.441487: Plan calculation took 11.98 seconds 2026-08-14 10:18:16.446319: Saved plan to storage 2026-08-14 10:18:16.449811: No high rate period found 2026-08-14 10:18:16.502942: Import threshold used for optimisation was 25.52p 2026-08-14 10:18:16.553211: Low import rate windows [0: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 1: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 2: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 3: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 4: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 5: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 6: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 7: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 8: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 9: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 10: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 11: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 12: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 13: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 14: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 15: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 16: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 17: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 18: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 19: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 20: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 21: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 22: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 23: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 24: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 25: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 26: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 27: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 28: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 29: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 30: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 31: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 32: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 33: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 34: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 35: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 36: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 37: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 38: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 39: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 40: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 41: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 42: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 43: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 44: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 45: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 46: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 47: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 48: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 49: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 50: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 51: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 52: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 53: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 54: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 55: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 56: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 57: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 58: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 59: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 60: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 61: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 62: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 63: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 64: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 65: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 66: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 67: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 68: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 69: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 70: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 71: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 72: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 73: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 74: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 75: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 76: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 77: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 78: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 79: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 80: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 81: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 82: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 83: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 84: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 85: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 86: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 87: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 88: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 89: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 90: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 91: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 92: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 93: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 94: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 95: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21] 2026-08-14 10:18:16.562612: Inverter 0: Type SK Sunsynk 2026-08-14 10:18:16.562695: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:18:16.562951: Reserve min: 7%, battery_min: 7% 2026-08-14 10:18:16.563037: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:18:16.563379: Inverter 0 SoC: 1.88kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 1238W, current battery voltage 51.2V, grid power -54W, load power 1304W, PV Power 0W 2026-08-14 10:18:16.563613: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:18:16.563718: Inverter 0 scheduled charge enable is False 2026-08-14 10:18:16.563756: Inverter 0 charge windows currently [] 2026-08-14 10:18:16.563785: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:18:16.563898: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:18:16.563935: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:18:16.563977: Inverter 0 scheduled discharge enable is False 2026-08-14 10:18:16.564117: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:18:16.564156: Inverter 0 discharge windows currently [] 2026-08-14 10:18:16.564189: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:18:16.564216: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:18:16.564239: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:18:16.616584: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 10:18:16.616734: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:15:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 10:18:16.616809: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:18:16.617043: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:18:16.617139: No export window planned 2026-08-14 10:18:16.617251: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:18:16.617309: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:18:16.617455: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:18:16.617637: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:18:16.617693: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:18:16.617746: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:18:16.617848: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog1_charge', 'option': 'Allow Gen'} 2026-08-14 10:18:16.670593: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog2_charge', 'option': 'Allow Gen'} 2026-08-14 10:18:16.677426: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog3_charge', 'option': 'Allow Gen'} 2026-08-14 10:18:16.754046: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog4_charge', 'option': 'Allow Gen'} 2026-08-14 10:18:16.858149: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog5_charge', 'option': 'Allow Gen'} 2026-08-14 10:18:16.905640: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog6_charge', 'option': 'Allow Gen'} 2026-08-14 10:18:16.981021: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_load_limit', 'option': 'Zero Export'} 2026-08-14 10:18:17.084540: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog1_charge', 'option': 'Allow Gen'} 2026-08-14 10:18:17.188346: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog2_charge', 'option': 'Allow Gen'} 2026-08-14 10:18:17.238565: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog3_charge', 'option': 'Allow Gen'} 2026-08-14 10:18:17.327494: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog4_charge', 'option': 'Allow Gen'} 2026-08-14 10:18:17.432236: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog5_charge', 'option': 'Allow Gen'} 2026-08-14 10:18:17.535396: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog6_charge', 'option': 'Allow Gen'} 2026-08-14 10:18:17.638864: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_load_limit', 'option': 'Zero Export'} 2026-08-14 10:18:17.742149: Inverter 0 count register writes 0 2026-08-14 10:18:17.765264: Total inverter register writes now 806 2026-08-14 10:18:17.802272: Info: Completed run status Demand 2026-08-14 10:18:17.809371: Info: record_status Demand 2026-08-14 10:18:17.816355: Saved current settings to /config/predbat_config.json 2026-08-14 10:18:17.816778: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 10:18:17.872184: Creating predbat dashboard at /config/predbat_dashboard.yaml 2026-08-14 10:18:58.930635: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:18:58.930922: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:18:58.930986: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:18:58.931156: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:18:58.931199: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:18:58.931222: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:18:58.931240: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:20:00.082189: --------------- PredBat - update at 2026-08-14 10:20:00+01:00 with clock skew 0 minutes, minutes now 620 2026-08-14 10:20:00.083295: Saved current settings to /config/predbat_config.json 2026-08-14 10:20:00.083474: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 45.0 minutes 2026-08-14 10:20:00.083578: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 10:20:00.083669: Autoupdate: Currently up to date 2026-08-14 10:20:00.106579: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 10:20:00.106731: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 10:20:00.106945: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 10:20:00.107558: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 10:20:00.107711: Predbat mode is set to Control charge & discharge 2026-08-14 10:20:00.297312: Found 21602 load_today datapoints going back 28 days 2026-08-14 10:20:00.297506: Using load_power data to fill gaps in load_today data 2026-08-14 10:20:01.039679: Processing 721 30-minute periods for power integration 2026-08-14 10:20:01.183337: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 10:20:01.183457: Car charging hold False, threshold 6.0kWh 2026-08-14 10:20:01.183503: Current data so far today: load 9.8kWh, import 10.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 10:20:01.194734: Cars: SoC: [14.65]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 10:20:01.195371: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 10:20:01.195436: Standing charge is set to 49.98p 2026-08-14 10:20:01.248021: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 10:20:01.248133: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 10:20:01.248355: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 17.7 minutes 2026-08-14 10:20:01.248730: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 17.7 minutes 2026-08-14 10:20:01.255139: Loaded 95 datapoints of futurerate analysis 2026-08-14 10:20:01.355468: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51'] 2026-08-14 10:20:01.411263: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 10:20:01.416419: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 10:20:01.416703: Import rates: min 14.97p, max 53.39p, average 27.37p 2026-08-14 10:20:01.465971: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 10:20:01.466128: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 10:20:01.467386: High export rate found rates in range 99p to -99p 2026-08-14 10:20:01.564035: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 10:20:01.564197: Car 0 charging is not planned as it is not plugged in 2026-08-14 10:20:01.577041: Battery level now 1.88kWh, -1hr ago 1.54kWh, at midnight 2.43kWh, battery value change in the last hour 4.42p, change today -7.1p, rate_forward 12.86p 2026-08-14 10:20:01.577487: Last hour: net energy 1.3kWh, import 1.3kWh, export 0.0kWh, car 0kWh, load 1.15kWh, net cost 31.68p, import 31.68p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 10:20:01.632097: Today's energy total net 10.4kWh, import 10.4kWh, export 0.0kWh, cost 311.47p, import 261.49p, export 0.0p, carbon 0.0kg 2026-08-14 10:20:01.632256: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 10:20:01.715576: Using weighted-bucket historical load forecast over 14 days 2026-08-14 10:20:01.740932: Today's load divergence 122.32%, in-day adjustment 135.78%, damping 0.95x, yesterday 146.81% today 121.2% blend 56.94% 2026-08-14 10:20:01.741062: Today's predicted so far 5.58kWh with 0.0kWh car/iBoost excluded, 3.79kWh import ignored, and 5.58kWh forecast extra. 2026-08-14 10:20:01.741096: Today's actual load so far 9.75kWh with 0.0kWh car/iBoost excluded, and 3.79kWh import ignored. 2026-08-14 10:20:01.775212: Inverter 0: Type SK Sunsynk 2026-08-14 10:20:01.775306: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:20:01.775503: Reserve min: 7%, battery_min: 7% 2026-08-14 10:20:01.775575: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:20:01.775827: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 1210W, current battery voltage 51.2V, grid power -58W, load power 1283W, PV Power 0W 2026-08-14 10:20:01.775983: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:20:01.776088: Inverter 0 scheduled charge enable is False 2026-08-14 10:20:01.776147: Inverter 0 charge windows currently [] 2026-08-14 10:20:01.776184: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:20:01.776308: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:20:01.776360: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:20:01.776399: Inverter 0 scheduled discharge enable is False 2026-08-14 10:20:01.776525: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:20:01.776562: Inverter 0 discharge windows currently [] 2026-08-14 10:20:01.776585: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:20:01.776607: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:20:01.776625: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:20:01.839555: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 10:20:01.839675: Plan was last updated on 2026-08-14 10:15:00+01:00 and is now 5.0 minutes old 2026-08-14 10:20:01.839923: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 10:20:01.839991: Best export window [ ] 2026-08-14 10:20:01.841139: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:20:01.844613: Load divergence over 8.0 hours mean 416.02W, min 235.2W, max 1260.6W, std dev 170.64W, divergence 20.51% 2026-08-14 10:20:01.862905: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:20:01.863026: LoadML is_calculating False 2026-08-14 10:20:01.863094: Creating pool of 12 processes to match your CPU count 2026-08-14 10:20:01.979600: predict base end_record 08-15 13:05:00, final soc 1.12kWh, metric 910.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.12kWh, PV 0.0kWh 2026-08-14 10:20:02.102926: Battery has 0.58 hours left - now at 1.76kWh 2026-08-14 10:20:02.160591: predict base10 end_record 08-15 13:05:00, final soc 1.12kWh, metric 937.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:50:00, load 31.08kWh, PV 0.0kWh 2026-08-14 10:20:02.239408: predict best10 end_record 08-15 13:05:00, final soc 1.44kWh, metric 850.05p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:50:00, load 31.08kWh, PV 0.0kWh 2026-08-14 10:20:02.316420: predict best end_record 08-15 13:05:00, final soc 1.51kWh, metric 827.35p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.12kWh, PV 0.0kWh 2026-08-14 10:20:02.316509: Saving plan best values to HA entities 2026-08-14 10:20:02.479428: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 10:20:02.484506: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 10:20:02.492932: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.14kWh, house 6.62kWh, export 0.0kWh, metric 827.35p, metric10 850.05p 2026-08-14 10:20:02.565172: Marginal costs baseline metric (no standing charge): 777.368 2026-08-14 10:20:02.797312: Marginal energy costs matrix computed: min=22.04 max=37.83 2026-08-14 10:20:02.867863: Rate array import [{'start': 620, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2225, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 620, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:20:02.868585: - Your estimated bill for today is £6.84 and tomorrow is £5.92 2026-08-14 10:20:02.868631: - Import rates are cheap (21.7p - 24.2p) for the next 5 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:20:02.868655: - The battery is currently at 11% and is in eco mode for the next 2 and three quarters hours. 2026-08-14 10:20:02.868674: - For the next 48 hours there will be no solar generation. 2026-08-14 10:20:02.868691: - You will run out of battery in 35 minutes. 2026-08-14 10:20:02.868708: - Your next charge slot will be in 2 and three quarters hours where import rates will be cheap (21.9p). 2026-08-14 10:20:02.868725: 2026-08-14 10:20:02.916273: Plan calculation took 1.08 seconds 2026-08-14 10:20:02.919681: No high rate period found 2026-08-14 10:20:02.975520: Import threshold used for optimisation was 25.52p 2026-08-14 10:20:03.031511: Low import rate windows [0: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 1: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 2: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 3: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 4: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 5: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 6: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 7: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 8: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 9: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 10: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 11: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 12: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 13: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 14: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 15: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 16: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 17: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 18: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 19: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 20: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 21: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 22: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 23: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 24: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 25: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 26: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 27: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 28: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 29: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 30: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 31: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 32: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 33: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 34: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 35: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 36: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 37: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 38: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 39: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 40: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 41: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 42: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 43: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 44: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 45: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 46: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 47: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 48: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 49: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 50: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 51: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 52: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 53: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 54: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 55: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 56: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 57: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 58: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 59: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 60: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 61: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 62: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 63: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 64: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 65: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 66: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 67: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 68: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 69: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 70: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 71: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 72: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 73: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 74: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 75: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 76: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 77: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 78: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 79: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 80: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 81: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 82: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 83: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 84: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 85: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 86: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 87: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 88: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 89: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 90: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 91: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 92: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 93: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 94: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 95: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21] 2026-08-14 10:20:03.039345: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 10:20:03.039495: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:20:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 10:20:03.039601: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:20:03.039871: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:20:03.039965: No export window planned 2026-08-14 10:20:03.040085: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:20:03.040150: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:20:03.040284: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:20:03.040521: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:20:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:20:03.040591: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:20:03.040653: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:20:03.040744: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:20:03.040777: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:20:03.040812: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:20:03.040839: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:20:03.040863: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:20:03.040894: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:20:03.040919: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:20:03.041028: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:20:03.041074: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:20:03.041106: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:20:03.041132: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:20:03.041156: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:20:03.041186: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:20:03.041210: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:20:03.041240: Inverter 0 count register writes 0 2026-08-14 10:20:03.056299: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 10:20:03.061497: Total inverter register writes now 806 2026-08-14 10:20:03.092342: Info: Completed run status Demand 2026-08-14 10:20:03.098919: Info: record_status Demand 2026-08-14 10:20:03.105884: Saved current settings to /config/predbat_config.json 2026-08-14 10:20:03.106336: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 10:20:44.214371: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:20:44.214634: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:20:44.214678: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:20:44.214828: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:20:44.214873: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:20:44.214895: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:20:44.214913: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:22:44.442420: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:22:44.442649: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:22:44.442702: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:22:44.442857: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:22:44.442897: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:22:44.442918: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:22:44.442936: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:24:58.692492: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:24:58.692787: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:24:58.692846: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:24:58.693101: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:24:58.693147: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:24:58.693168: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:24:58.693183: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:25:00.777318: --------------- PredBat - update at 2026-08-14 10:25:00+01:00 with clock skew 0 minutes, minutes now 625 2026-08-14 10:25:00.778094: Saved current settings to /config/predbat_config.json 2026-08-14 10:25:00.778215: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 50.0 minutes 2026-08-14 10:25:00.778303: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 10:25:00.778395: Autoupdate: Currently up to date 2026-08-14 10:25:00.796551: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 10:25:00.796688: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 10:25:00.796859: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 10:25:00.797474: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 10:25:00.797599: Predbat mode is set to Control charge & discharge 2026-08-14 10:25:00.968328: Found 21602 load_today datapoints going back 28 days 2026-08-14 10:25:00.968484: Using load_power data to fill gaps in load_today data 2026-08-14 10:25:01.630010: Processing 721 30-minute periods for power integration 2026-08-14 10:25:01.773805: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 10:25:01.773912: Car charging hold False, threshold 6.0kWh 2026-08-14 10:25:01.773949: Current data so far today: load 9.9kWh, import 10.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 10:25:01.785087: Cars: SoC: [13.478]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 10:25:01.785791: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 10:25:01.785855: Standing charge is set to 49.98p 2026-08-14 10:25:01.825443: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 10:25:01.825568: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 10:25:01.825764: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 22.7 minutes 2026-08-14 10:25:01.826172: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 22.7 minutes 2026-08-14 10:25:01.831549: Loaded 95 datapoints of futurerate analysis 2026-08-14 10:25:01.906837: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51'] 2026-08-14 10:25:01.951879: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 10:25:01.956198: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 10:25:01.956519: Import rates: min 14.97p, max 53.39p, average 27.37p 2026-08-14 10:25:01.990621: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 10:25:01.990741: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 10:25:01.991676: High export rate found rates in range 99p to -99p 2026-08-14 10:25:02.066656: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 10:25:02.066805: Car 0 charging is not planned as it is not plugged in 2026-08-14 10:25:02.077585: Battery level now 1.76kWh, -1hr ago 1.9kWh, at midnight 2.43kWh, battery value change in the last hour -1.75p, change today -8.64p, rate_forward 12.86p 2026-08-14 10:25:02.077930: Last hour: net energy 1.0kWh, import 1.0kWh, export 0.0kWh, car 0kWh, load 1.2kWh, net cost 24.54p, import 24.54p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 10:25:02.134072: Today's energy total net 10.4kWh, import 10.4kWh, export 0.0kWh, cost 311.47p, import 261.49p, export 0.0p, carbon 0.0kg 2026-08-14 10:25:02.134217: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 10:25:02.202985: Using weighted-bucket historical load forecast over 14 days 2026-08-14 10:25:02.223370: Today's load divergence 122.43%, in-day adjustment 135.74%, damping 0.95x, yesterday 146.81% today 121.31% blend 56.6% 2026-08-14 10:25:02.223447: Today's predicted so far 5.6kWh with 0.0kWh car/iBoost excluded, 3.89kWh import ignored, and 5.6kWh forecast extra. 2026-08-14 10:25:02.223474: Today's actual load so far 9.8kWh with 0.0kWh car/iBoost excluded, and 3.89kWh import ignored. 2026-08-14 10:25:02.260199: Inverter 0: Type SK Sunsynk 2026-08-14 10:25:02.260279: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:25:02.260463: Reserve min: 7%, battery_min: 7% 2026-08-14 10:25:02.260530: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:25:02.260747: Inverter 0 SoC: 1.65kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1100W, current battery voltage 51.2V, grid power -54W, load power 1200W, PV Power 0W 2026-08-14 10:25:02.260902: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:25:02.261047: Inverter 0 scheduled charge enable is False 2026-08-14 10:25:02.261093: Inverter 0 charge windows currently [] 2026-08-14 10:25:02.261117: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:25:02.261274: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:25:02.261324: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:25:02.261360: Inverter 0 scheduled discharge enable is False 2026-08-14 10:25:02.261489: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:25:02.261516: Inverter 0 discharge windows currently [] 2026-08-14 10:25:02.261534: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:25:02.261549: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:25:02.261569: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:25:02.312287: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 10:25:02.312388: Plan was last updated on 2026-08-14 10:15:00+01:00 and is now 10.0 minutes old 2026-08-14 10:25:02.312639: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 10:25:02.312677: Best export window [ ] 2026-08-14 10:25:02.313370: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:25:02.315789: Load divergence over 8.0 hours mean 416.05W, min 247.2W, max 1439.4W, std dev 190.4W, divergence 22.88% 2026-08-14 10:25:02.330370: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:25:02.330469: LoadML is_calculating False 2026-08-14 10:25:02.330529: Creating pool of 12 processes to match your CPU count 2026-08-14 10:25:02.419213: predict base end_record 08-15 13:10:00, final soc 1.12kWh, metric 912.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:50:00, load 30.22kWh, PV 0.0kWh 2026-08-14 10:25:02.527150: Battery has 0.42 hours left - now at 1.65kWh 2026-08-14 10:25:02.565255: predict base10 end_record 08-15 13:10:00, final soc 1.12kWh, metric 939.05p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:50:00, load 31.19kWh, PV 0.0kWh 2026-08-14 10:25:02.639680: predict best10 end_record 08-15 13:10:00, final soc 1.77kWh, metric 857.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:50:00, load 31.19kWh, PV 0.0kWh 2026-08-14 10:25:02.715877: predict best end_record 08-15 13:10:00, final soc 1.9kWh, metric 835.89p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:50:00, load 30.22kWh, PV 0.0kWh 2026-08-14 10:25:02.715967: Saving plan best values to HA entities 2026-08-14 10:25:02.865759: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 10:25:02.871366: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 10:25:02.877171: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.63kWh, house 6.65kWh, export 0.0kWh, metric 835.89p, metric10 857.51p 2026-08-14 10:25:02.951453: Marginal costs baseline metric (no standing charge): 785.9026 2026-08-14 10:25:03.179591: Marginal energy costs matrix computed: min=22.05 max=37.42 2026-08-14 10:25:03.256158: Rate array import [{'start': 625, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2230, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 625, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:25:03.256753: - Your estimated bill for today is £6.85 and tomorrow is £5.93 2026-08-14 10:25:03.256793: - Import rates are cheap (21.7p - 24.2p) for the next 5 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:25:03.256812: - The battery is currently at 10% and is in eco mode for the next 2 and a half hours. 2026-08-14 10:25:03.256827: - For the next 48 hours there will be no solar generation. 2026-08-14 10:25:03.256841: - You will run out of battery in 25 minutes. 2026-08-14 10:25:03.256855: - Your next charge slot will be in 2 and a half hours where import rates will be cheap (21.9p). 2026-08-14 10:25:03.256869: 2026-08-14 10:25:03.302759: Plan calculation took 0.99 seconds 2026-08-14 10:25:03.305850: No high rate period found 2026-08-14 10:25:03.355556: Import threshold used for optimisation was 25.52p 2026-08-14 10:25:03.427103: Low import rate windows [0: 08-14 10:00:00 - 08-14 10:30:00 @ 24.17, 1: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 2: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 3: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 4: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 5: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 6: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 7: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 8: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 9: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 10: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 11: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 12: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 13: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 14: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 15: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 16: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 17: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 18: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 19: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 20: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 21: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 22: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 23: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 24: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 25: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 26: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 27: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 28: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 29: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 30: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 31: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 32: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 33: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 34: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 35: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 36: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 37: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 38: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 39: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 40: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 41: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 42: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 43: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 44: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 45: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 46: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 47: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 48: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 49: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 50: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 51: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 52: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 53: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 54: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 55: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 56: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 57: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 58: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 59: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 60: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 61: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 62: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 63: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 64: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 65: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 66: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 67: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 68: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 69: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 70: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 71: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 72: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 73: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 74: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 75: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 76: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 77: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 78: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 79: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 80: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 81: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 82: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 83: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 84: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 85: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 86: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 87: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 88: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 89: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 90: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 91: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 92: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 93: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 94: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 95: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21] 2026-08-14 10:25:03.433891: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 10:25:03.434098: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:25:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 10:25:03.434229: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:25:03.434582: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:25:03.434685: No export window planned 2026-08-14 10:25:03.434816: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:25:03.434848: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:25:03.434989: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:25:03.435275: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:25:03.435358: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:25:03.435405: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:25:03.435526: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:25:03.435562: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:25:03.435586: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:25:03.435608: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:25:03.435647: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:25:03.435668: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:25:03.435689: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:25:03.435742: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:25:03.435766: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:25:03.435786: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:25:03.435805: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:25:03.435825: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:25:03.435844: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:25:03.435864: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:25:03.435880: Inverter 0 count register writes 0 2026-08-14 10:25:03.449834: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 10:25:03.449982: Recompute is saving previous plan... 2026-08-14 10:25:03.452531: Best charge window [ 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0% ] 2026-08-14 10:25:03.452595: Best export window [ ] 2026-08-14 10:25:03.453274: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:25:03.455677: Load divergence over 8.0 hours mean 416.05W, min 247.2W, max 1439.4W, std dev 190.4W, divergence 22.88% 2026-08-14 10:25:03.469956: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:25:03.470041: LoadML is_calculating False 2026-08-14 10:25:03.470096: Creating pool of 12 processes to match your CPU count 2026-08-14 10:25:03.537094: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 10:25:03.538769: Optimise levels pass started at 2026-08-14 10:25:03 2026-08-14 10:25:03.538818: Optimise all windows, total charge 95 export 1 2026-08-14 10:25:04.496810: >> Region optimisation pass width 960 gives best_metric 985.95p, best_cost 993.06p, best_cycle 47.09kWh, best_import 35.63kWh 2026-08-14 10:25:04.907037: >> Region optimisation pass width 480 gives best_metric 985.95p, best_cost 993.06p, best_cycle 47.09kWh, best_import 35.63kWh 2026-08-14 10:25:05.405073: >> Region optimisation pass width 240 gives best_metric 985.95p, best_cost 993.06p, best_cycle 47.09kWh, best_import 35.63kWh 2026-08-14 10:25:06.462750: >> Region optimisation pass width 120 gives best_metric 985.95p, best_cost 993.06p, best_cycle 47.09kWh, best_import 35.63kWh 2026-08-14 10:25:06.463131: Calculated end_record as 08-15 13:00:00 based on best_price 22.02p, next_charge_start 08-14 13:00:00, max_windows 53 2026-08-14 10:25:06.463258: Optimise levels pass ended at 2026-08-14 10:25:06, duration 2.9 seconds tried 301 combinations 2026-08-14 10:25:06.463397: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 985.95p, best_keep 0kWh, best_cycle 47.09kWh, best_carbon 0kg, best_import 35.63kWh 2026-08-14 10:25:06.480217: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 10:25:11.113089: Tweak plan optimisation started metric 759.99p, cost 770.9p 2026-08-14 10:25:11.372216: Tweak optimisation finished metric 759.99p, cost 770.9p, metric_keep 0kWh, cycle 23.28kWh, carbon 0kg, import 21.33kWh, changed 8 window(s) 2026-08-14 10:25:11.394429: Swap charge optimisation started metric 759.99p, cost 770.9p, min_improvement_swap 0.1p 2026-08-14 10:25:13.772037: Swap charge optimisation finished metric 759.99p, cost 770.9p 2026-08-14 10:25:13.861923: Pruned 1 dead plan slot(s) in 7 trial(s), nominal metric 756.49p -> 756.49p, plan now metric 760.0p, cost 770.9p, cycle 23.28kWh, import 21.33kWh 2026-08-14 10:25:13.875139: Raw charge windows [ 14-08 10:00:00 - 14-08 10:30:00 @ 24.17p 0%, 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100% ] reserve 1.12 2026-08-14 10:25:13.875849: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 10:30:00 @ 21.04p 100% ] reserve 1.12 2026-08-14 10:25:13.876195: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 10:30:00 @ 21.04p 100% ] reserve 1.12 2026-08-14 10:25:13.876392: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 10:30:00 @ 21.04p 100% ] reserve 1.12 2026-08-14 10:25:13.917351: Previous plan best metric is 760.03 (cost 770.88) and new plan best metric is 759.99 (cost 770.9) 2026-08-14 10:25:13.917696: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 10:25:13.917901: Plan valid is now true after recompute was False 2026-08-14 10:25:13.952129: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 910.24p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:50:00, load 30.09kWh, PV 0.0kWh 2026-08-14 10:25:14.078010: Battery has 0.42 hours left - now at 1.65kWh 2026-08-14 10:25:14.117202: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 936.92p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:50:00, load 31.06kWh, PV 0.0kWh 2026-08-14 10:25:14.191491: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 844.56p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:50:00, load 31.06kWh, PV 0.0kWh 2026-08-14 10:25:14.271389: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 820.87p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:50:00, load 30.09kWh, PV 0.0kWh 2026-08-14 10:25:14.271508: Saving plan best values to HA entities 2026-08-14 10:25:14.421386: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 10:25:14.426990: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 10:25:14.432620: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 14.67kWh, house 6.65kWh, export 0.0kWh, metric 820.87p, metric10 844.56p 2026-08-14 10:25:14.508126: Marginal costs baseline metric (no standing charge): 770.8826 2026-08-14 10:25:14.775291: Marginal energy costs matrix computed: min=22.05 max=37.42 2026-08-14 10:25:14.847815: Rate array import [{'start': 625, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 24.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 625, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:25:14.848521: - Your estimated bill for today is £6.85 and tomorrow is £5.93 2026-08-14 10:25:14.848570: - Import rates are cheap (21.7p - 24.2p) for the next 5 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:25:14.848594: - The battery is currently at 10% and is in eco mode for the next 2 and a half hours. 2026-08-14 10:25:14.848612: - For the next 48 hours there will be no solar generation. 2026-08-14 10:25:14.848630: - You will run out of battery in 25 minutes. 2026-08-14 10:25:14.848647: - Your next charge slot will be in 2 and a half hours where import rates will be cheap (21.9p). 2026-08-14 10:25:14.848664: 2026-08-14 10:25:14.898951: Plan calculation took 11.45 seconds 2026-08-14 10:25:14.899274: Inverter 0: Type SK Sunsynk 2026-08-14 10:25:14.899317: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:25:14.899570: Reserve min: 7%, battery_min: 7% 2026-08-14 10:25:14.899653: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:25:14.900050: Inverter 0 SoC: 1.65kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1100W, current battery voltage 51.2V, grid power -54W, load power 1200W, PV Power 0W 2026-08-14 10:25:14.900303: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:25:14.900427: Inverter 0 scheduled charge enable is False 2026-08-14 10:25:14.900467: Inverter 0 charge windows currently [] 2026-08-14 10:25:14.900495: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:25:14.900610: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:25:14.900646: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:25:14.900681: Inverter 0 scheduled discharge enable is False 2026-08-14 10:25:14.900807: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:25:14.900847: Inverter 0 discharge windows currently [] 2026-08-14 10:25:14.900875: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:25:14.900894: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:25:14.900911: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:25:14.958222: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 10:25:14.958432: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:25:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 10:25:14.958542: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:25:14.958812: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:25:14.958922: No export window planned 2026-08-14 10:25:14.959077: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:25:14.959123: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:25:14.959325: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:25:14.959568: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:25:14.959648: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:25:14.959722: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:25:14.959835: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:25:14.959902: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:25:14.959951: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:25:14.959987: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:25:14.960046: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:25:14.960092: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:25:14.960126: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:25:14.960225: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:25:14.960290: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:25:14.960336: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:25:14.960375: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:25:14.960494: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:25:14.960584: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:25:14.960622: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:25:14.960646: Inverter 0 count register writes 0 2026-08-14 10:25:14.982165: Total inverter register writes now 806 2026-08-14 10:25:15.015905: Info: Completed run status Demand 2026-08-14 10:25:15.022321: Info: record_status Demand 2026-08-14 10:25:15.029429: Saved current settings to /config/predbat_config.json 2026-08-14 10:25:15.029784: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 10:25:59.145210: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:25:59.145470: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:25:59.145510: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:25:59.145649: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:25:59.145684: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:25:59.145701: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:25:59.145716: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:26:49.480609: MCP POST: Received request from 10.0.10.143 2026-08-14 10:26:49.480723: MCP POST: Missing or invalid Authorization header 2026-08-14 10:27:59.365818: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:27:59.366066: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:27:59.366099: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:27:59.366207: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:27:59.366240: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:27:59.366258: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:27:59.366272: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:30:00.600094: --------------- PredBat - update at 2026-08-14 10:30:00+01:00 with clock skew 0 minutes, minutes now 630 2026-08-14 10:30:00.601120: Saved current settings to /config/predbat_config.json 2026-08-14 10:30:00.601278: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 55.0 minutes 2026-08-14 10:30:00.601419: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 10:30:00.601560: Autoupdate: Currently up to date 2026-08-14 10:30:00.626697: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 10:30:00.626829: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 10:30:00.627009: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 10:30:00.627539: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 10:30:00.627668: Predbat mode is set to Control charge & discharge 2026-08-14 10:30:00.861943: Found 21602 load_today datapoints going back 28 days 2026-08-14 10:30:00.862217: Using load_power data to fill gaps in load_today data 2026-08-14 10:30:01.716991: Processing 721 30-minute periods for power integration 2026-08-14 10:30:01.909482: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 10:30:01.909613: Car charging hold False, threshold 6.0kWh 2026-08-14 10:30:01.909659: Current data so far today: load 10.0kWh, import 10.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 10:30:01.924362: Cars: SoC: [13.478]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 10:30:01.925374: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 10:30:01.925454: Standing charge is set to 49.98p 2026-08-14 10:30:01.970896: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 10:30:01.971035: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 10:30:01.971312: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 27.7 minutes 2026-08-14 10:30:01.971729: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 27.7 minutes 2026-08-14 10:30:01.978659: Loaded 95 datapoints of futurerate analysis 2026-08-14 10:30:02.084277: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51'] 2026-08-14 10:30:02.142283: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 10:30:02.147899: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 10:30:02.148353: Import rates: min 14.97p, max 53.39p, average 27.36p 2026-08-14 10:30:02.199062: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 10:30:02.199194: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 10:30:02.200342: High export rate found rates in range 99p to -99p 2026-08-14 10:30:02.295754: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 10:30:02.295895: Car 0 charging is not planned as it is not plugged in 2026-08-14 10:30:02.309636: Battery level now 1.65kWh, -1hr ago 1.99kWh, at midnight 2.43kWh, battery value change in the last hour -4.42p, change today -10.08p, rate_forward 12.86p 2026-08-14 10:30:02.310060: Last hour: net energy 0.88kWh, import 0.88kWh, export 0.0kWh, car 0kWh, load 1.15kWh, net cost 21.55p, import 21.55p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 10:30:02.372825: Today's energy total net 10.4kWh, import 10.4kWh, export 0.0kWh, cost 311.47p, import 261.49p, export 0.0p, carbon 0.0kg 2026-08-14 10:30:02.373011: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 10:30:02.455658: Using weighted-bucket historical load forecast over 14 days 2026-08-14 10:30:02.481104: Today's load divergence 122.82%, in-day adjustment 135.82%, damping 0.95x, yesterday 146.81% today 121.68% blend 56.25% 2026-08-14 10:30:02.481204: Today's predicted so far 5.73kWh with 0.0kWh car/iBoost excluded, 3.85kWh import ignored, and 5.73kWh forecast extra. 2026-08-14 10:30:02.481237: Today's actual load so far 10.02kWh with 0.0kWh car/iBoost excluded, and 3.85kWh import ignored. 2026-08-14 10:30:02.522884: Inverter 0: Type SK Sunsynk 2026-08-14 10:30:02.522978: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:30:02.523167: Reserve min: 7%, battery_min: 7% 2026-08-14 10:30:02.523237: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:30:02.523528: Inverter 0 SoC: 1.65kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1191W, current battery voltage 51.2V, grid power -57W, load power 1258W, PV Power 0W 2026-08-14 10:30:02.523692: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:30:02.523804: Inverter 0 scheduled charge enable is False 2026-08-14 10:30:02.523838: Inverter 0 charge windows currently [] 2026-08-14 10:30:02.523864: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:30:02.523976: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:30:02.524011: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:30:02.524047: Inverter 0 scheduled discharge enable is False 2026-08-14 10:30:02.524168: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:30:02.524204: Inverter 0 discharge windows currently [] 2026-08-14 10:30:02.524227: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:30:02.524254: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:30:02.524289: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:30:02.590980: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 10:30:02.591091: Plan was last updated on 2026-08-14 10:25:00+01:00 and is now 5.0 minutes old 2026-08-14 10:30:02.591587: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 10:30:02.591645: Best export window [ ] 2026-08-14 10:30:02.592399: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:30:02.595574: Load divergence over 8.0 hours mean 414.49W, min 239.4W, max 1403.4W, std dev 183.94W, divergence 22.19% 2026-08-14 10:30:02.610037: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:30:02.610145: LoadML is_calculating False 2026-08-14 10:30:02.610202: Creating pool of 12 processes to match your CPU count 2026-08-14 10:30:02.706779: predict base end_record 08-15 13:05:00, final soc 1.12kWh, metric 908.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.15kWh, PV 0.0kWh 2026-08-14 10:30:02.852557: Battery has 0.42 hours left - now at 1.65kWh 2026-08-14 10:30:02.898828: predict base10 end_record 08-15 13:05:00, final soc 1.12kWh, metric 935.19p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 31.11kWh, PV 0.0kWh 2026-08-14 10:30:02.982513: predict best10 end_record 08-15 13:05:00, final soc 1.44kWh, metric 848.21p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 31.11kWh, PV 0.0kWh 2026-08-14 10:30:03.073875: predict best end_record 08-15 13:05:00, final soc 1.51kWh, metric 825.8p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.15kWh, PV 0.0kWh 2026-08-14 10:30:03.073967: Saving plan best values to HA entities 2026-08-14 10:30:03.259825: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 10:30:03.267131: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 10:30:03.273813: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.1kWh, house 6.6kWh, export 0.0kWh, metric 825.8p, metric10 848.21p 2026-08-14 10:30:03.351042: Marginal costs baseline metric (no standing charge): 775.8153 2026-08-14 10:30:03.593228: Marginal energy costs matrix computed: min=22.02 max=36.97 2026-08-14 10:30:03.679195: Rate array import [{'start': 630, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2225, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 630, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:30:03.679933: - Your estimated bill for today is £6.83 and tomorrow is £5.90 2026-08-14 10:30:03.679981: - Import rates are cheap (21.7p - 22.7p) for the next 5 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:30:03.680005: - The battery is currently at 10% and is in eco mode for the next 2 and a half hours. 2026-08-14 10:30:03.680024: - For the next 48 hours there will be no solar generation. 2026-08-14 10:30:03.680041: - You will run out of battery in 25 minutes. 2026-08-14 10:30:03.680059: - Your next charge slot will be in 2 and a half hours where import rates will be cheap (21.9p). 2026-08-14 10:30:03.680078: 2026-08-14 10:30:03.734208: Plan calculation took 1.14 seconds 2026-08-14 10:30:03.737780: No high rate period found 2026-08-14 10:30:03.798121: Import threshold used for optimisation was 25.52p 2026-08-14 10:30:03.879547: Low import rate windows [0: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 1: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 2: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 3: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 4: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 5: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 6: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 7: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 8: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 9: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 10: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 11: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 12: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 13: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 14: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 15: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 16: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 17: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 18: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 19: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 20: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 21: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 22: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 23: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 24: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 25: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 26: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 27: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 28: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 29: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 30: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 31: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 32: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 33: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 34: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 35: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 36: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 37: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 38: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 39: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 40: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 41: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 42: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 43: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 44: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 45: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 46: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 47: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 48: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 49: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 50: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 51: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 52: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 53: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 54: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 55: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 56: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 57: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 58: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 59: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 60: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 61: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 62: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 63: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 64: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 65: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 66: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 67: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 68: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 69: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 70: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 71: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 72: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 73: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 74: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 75: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 76: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 77: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 78: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 79: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 80: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 81: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 82: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 83: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 84: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 85: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 86: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 87: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 88: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 89: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 90: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 91: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 92: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 93: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 94: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21] 2026-08-14 10:30:03.888110: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 10:30:03.888301: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:30:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 10:30:03.888433: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:30:03.888709: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:30:03.888803: No export window planned 2026-08-14 10:30:03.888923: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:30:03.889012: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:30:03.889213: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:30:03.889438: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:30:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:30:03.889534: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:30:03.889601: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:30:03.889699: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:30:03.889734: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:30:03.889766: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:30:03.889791: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:30:03.889817: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:30:03.889842: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:30:03.889869: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:30:03.889935: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:30:03.889964: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:30:03.889989: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:30:03.890043: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:30:03.890070: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:30:03.890099: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:30:03.890141: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:30:03.890193: Inverter 0 count register writes 0 2026-08-14 10:30:03.907720: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 10:30:03.913634: Total inverter register writes now 806 2026-08-14 10:30:03.950481: Info: Completed run status Demand 2026-08-14 10:30:03.961747: Info: record_status Demand 2026-08-14 10:30:03.970415: Saved current settings to /config/predbat_config.json 2026-08-14 10:30:03.970718: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 10:30:44.083604: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:30:44.083841: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:30:44.083891: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:30:44.084054: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:30:44.084098: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:30:44.084132: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:30:44.084158: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:32:44.305322: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:32:44.305574: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:32:44.305611: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:32:44.305775: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:32:44.305814: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:32:44.305836: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:32:44.305853: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:34:37.479332: MCP POST: Received request from 10.0.10.143 2026-08-14 10:34:37.479570: MCP: Could not even decode without verification: Not enough segments 2026-08-14 10:34:37.479606: MCP: Token verification failed: Not enough segments 2026-08-14 10:34:37.479627: MCP POST: Authenticated via legacy bearer token 2026-08-14 10:34:37.486206: MCP POST: Received request from 10.0.10.143 2026-08-14 10:34:37.486331: MCP: Could not even decode without verification: Not enough segments 2026-08-14 10:34:37.486361: MCP: Token verification failed: Not enough segments 2026-08-14 10:34:37.486384: MCP POST: Authenticated via legacy bearer token 2026-08-14 10:34:44.523018: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:34:44.523320: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:34:44.523367: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:34:44.523558: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:34:44.523600: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:34:44.523645: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:34:44.523660: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:35:00.618105: --------------- PredBat - update at 2026-08-14 10:35:00+01:00 with clock skew 0 minutes, minutes now 635 2026-08-14 10:35:00.618889: Saved current settings to /config/predbat_config.json 2026-08-14 10:35:00.619005: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 60.0 minutes 2026-08-14 10:35:00.619098: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 10:35:00.619175: Autoupdate: Currently up to date 2026-08-14 10:35:00.639023: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 10:35:00.639145: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 10:35:00.639370: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 10:35:00.639937: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 10:35:00.640089: Predbat mode is set to Control charge & discharge 2026-08-14 10:35:00.807890: Found 21602 load_today datapoints going back 28 days 2026-08-14 10:35:00.808025: Using load_power data to fill gaps in load_today data 2026-08-14 10:35:01.520853: Processing 721 30-minute periods for power integration 2026-08-14 10:35:01.706421: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 10:35:01.706568: Car charging hold False, threshold 6.0kWh 2026-08-14 10:35:01.706614: Current data so far today: load 10.1kWh, import 10.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 10:35:01.721199: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 10:35:01.722021: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 10:35:01.722094: Standing charge is set to 49.98p 2026-08-14 10:35:01.768973: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 10:35:01.769093: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 10:35:02.029909: Loaded 95 datapoints of futurerate analysis 2026-08-14 10:35:02.120531: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51'] 2026-08-14 10:35:02.177772: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 10:35:02.182989: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 10:35:02.183286: Import rates: min 14.97p, max 53.39p, average 27.35p 2026-08-14 10:35:02.227308: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 10:35:02.227712: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 10:35:02.228981: High export rate found rates in range 99p to -99p 2026-08-14 10:35:02.320979: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 10:35:02.321121: Car 0 charging is not planned as it is not plugged in 2026-08-14 10:35:02.333310: Battery level now 1.65kWh, -1hr ago 1.76kWh, at midnight 2.43kWh, battery value change in the last hour -1.44p, change today -10.08p, rate_forward 12.86p 2026-08-14 10:35:02.333760: Last hour: net energy 0.75kWh, import 0.75kWh, export 0.0kWh, car 0kWh, load 1.1kWh, net cost 18.46p, import 18.46p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 10:35:02.388352: Today's energy total net 10.4kWh, import 10.4kWh, export 0.0kWh, cost 311.47p, import 261.49p, export 0.0p, carbon 0.0kg 2026-08-14 10:35:02.388483: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 10:35:02.467339: Using weighted-bucket historical load forecast over 14 days 2026-08-14 10:35:02.493059: Today's load divergence 123.15%, in-day adjustment 135.87%, damping 0.95x, yesterday 146.81% today 121.99% blend 55.9% 2026-08-14 10:35:02.493139: Today's predicted so far 5.84kWh with 0.0kWh car/iBoost excluded, 3.82kWh import ignored, and 5.84kWh forecast extra. 2026-08-14 10:35:02.493171: Today's actual load so far 10.2kWh with 0.0kWh car/iBoost excluded, and 3.82kWh import ignored. 2026-08-14 10:35:02.529130: Inverter 0: Type SK Sunsynk 2026-08-14 10:35:02.529217: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:35:02.529423: Reserve min: 7%, battery_min: 7% 2026-08-14 10:35:02.529521: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:35:02.529934: Inverter 0 SoC: 1.58kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1162W, current battery voltage 51.2V, grid power -53W, load power 1233W, PV Power 0W 2026-08-14 10:35:02.530114: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:35:02.530205: Inverter 0 scheduled charge enable is False 2026-08-14 10:35:02.530239: Inverter 0 charge windows currently [] 2026-08-14 10:35:02.530265: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:35:02.530368: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:35:02.530405: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:35:02.530441: Inverter 0 scheduled discharge enable is False 2026-08-14 10:35:02.530588: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:35:02.530628: Inverter 0 discharge windows currently [] 2026-08-14 10:35:02.530652: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:35:02.530670: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:35:02.530688: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:35:02.596790: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 10:35:02.596878: Plan was last updated on 2026-08-14 10:25:00+01:00 and is now 10.0 minutes old 2026-08-14 10:35:02.597147: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 10:35:02.597191: Best export window [ ] 2026-08-14 10:35:02.597930: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:35:02.600561: Load divergence over 8.0 hours mean 412.84W, min 230.4W, max 1260.0W, std dev 182.19W, divergence 22.07% 2026-08-14 10:35:02.617057: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:35:02.617173: LoadML is_calculating False 2026-08-14 10:35:02.617230: Creating pool of 12 processes to match your CPU count 2026-08-14 10:35:02.730292: predict base end_record 08-15 13:10:00, final soc 1.12kWh, metric 908.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.2kWh, PV 0.0kWh 2026-08-14 10:35:02.882517: Battery has 0.33 hours left - now at 1.58kWh 2026-08-14 10:35:02.932691: predict base10 end_record 08-15 13:10:00, final soc 1.12kWh, metric 935.02p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 31.16kWh, PV 0.0kWh 2026-08-14 10:35:03.015044: predict best10 end_record 08-15 13:10:00, final soc 1.77kWh, metric 853.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 31.16kWh, PV 0.0kWh 2026-08-14 10:35:03.088750: predict best end_record 08-15 13:10:00, final soc 1.9kWh, metric 832.08p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.2kWh, PV 0.0kWh 2026-08-14 10:35:03.088828: Saving plan best values to HA entities 2026-08-14 10:35:03.264820: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 10:35:03.269813: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 10:35:03.274596: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.58kWh, house 6.54kWh, export 0.0kWh, metric 832.08p, metric10 853.29p 2026-08-14 10:35:03.341266: Marginal costs baseline metric (no standing charge): 782.0937 2026-08-14 10:35:03.554494: Marginal energy costs matrix computed: min=21.98 max=36.42 2026-08-14 10:35:03.623113: Rate array import [{'start': 635, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2230, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 635, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:35:03.623795: - Your estimated bill for today is £6.82 and tomorrow is £5.89 2026-08-14 10:35:03.623848: - Import rates are cheap (21.7p - 22.7p) for the next 5 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:35:03.623882: - The battery is currently at 10% and is in eco mode for the next 2 and a half hours. 2026-08-14 10:35:03.623909: - For the next 48 hours there will be no solar generation. 2026-08-14 10:35:03.623938: - You will run out of battery in 20 minutes. 2026-08-14 10:35:03.623967: - Your next charge slot will be in 2 and a half hours where import rates will be cheap (21.9p). 2026-08-14 10:35:03.623995: 2026-08-14 10:35:03.669401: Plan calculation took 1.07 seconds 2026-08-14 10:35:03.672150: No high rate period found 2026-08-14 10:35:03.721333: Import threshold used for optimisation was 25.52p 2026-08-14 10:35:03.770690: Low import rate windows [0: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 1: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 2: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 3: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 4: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 5: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 6: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 7: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 8: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 9: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 10: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 11: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 12: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 13: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 14: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 15: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 16: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 17: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 18: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 19: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 20: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 21: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 22: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 23: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 24: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 25: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 26: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 27: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 28: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 29: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 30: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 31: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 32: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 33: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 34: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 35: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 36: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 37: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 38: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 39: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 40: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 41: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 42: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 43: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 44: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 45: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 46: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 47: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 48: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 49: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 50: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 51: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 52: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 53: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 54: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 55: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 56: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 57: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 58: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 59: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 60: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 61: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 62: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 63: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 64: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 65: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 66: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 67: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 68: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 69: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 70: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 71: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 72: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 73: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 74: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 75: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 76: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 77: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 78: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 79: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 80: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 81: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 82: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 83: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 84: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 85: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 86: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 87: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 88: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 89: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 90: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 91: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 92: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 93: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 94: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 95: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99] 2026-08-14 10:35:03.778316: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 10:35:03.778464: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:35:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 10:35:03.778619: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:35:03.778964: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:35:03.779083: No export window planned 2026-08-14 10:35:03.779249: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:35:03.779294: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:35:03.779496: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:35:03.779763: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:35:03.779854: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:35:03.779946: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:35:03.780103: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:35:03.780181: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:35:03.780239: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:35:03.780271: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:35:03.780318: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:35:03.780364: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:35:03.780396: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:35:03.780496: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:35:03.780563: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:35:03.780617: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:35:03.780666: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:35:03.780712: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:35:03.780764: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:35:03.780810: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:35:03.780854: Inverter 0 count register writes 0 2026-08-14 10:35:03.797048: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 10:35:03.797217: Recompute is saving previous plan... 2026-08-14 10:35:03.800365: Best charge window [ 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 0% ] 2026-08-14 10:35:03.800449: Best export window [ ] 2026-08-14 10:35:03.801282: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:35:03.804446: Load divergence over 8.0 hours mean 412.84W, min 230.4W, max 1260.0W, std dev 182.19W, divergence 22.07% 2026-08-14 10:35:03.821678: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:35:03.821795: LoadML is_calculating False 2026-08-14 10:35:03.821860: Creating pool of 12 processes to match your CPU count 2026-08-14 10:35:03.900914: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 10:35:03.903134: Optimise levels pass started at 2026-08-14 10:35:03 2026-08-14 10:35:03.903195: Optimise all windows, total charge 95 export 1 2026-08-14 10:35:04.838200: >> Region optimisation pass width 960 gives best_metric 984.81p, best_cost 991.94p, best_cycle 47.03kWh, best_import 35.6kWh 2026-08-14 10:35:05.241176: >> Region optimisation pass width 480 gives best_metric 984.81p, best_cost 991.94p, best_cycle 47.03kWh, best_import 35.6kWh 2026-08-14 10:35:05.719547: >> Region optimisation pass width 240 gives best_metric 984.81p, best_cost 991.94p, best_cycle 47.03kWh, best_import 35.6kWh 2026-08-14 10:35:06.829081: >> Region optimisation pass width 120 gives best_metric 984.81p, best_cost 991.94p, best_cycle 47.03kWh, best_import 35.6kWh 2026-08-14 10:35:06.829432: Calculated end_record as 08-15 13:00:00 based on best_price 22.02p, next_charge_start 08-14 13:00:00, max_windows 52 2026-08-14 10:35:06.829522: Optimise levels pass ended at 2026-08-14 10:35:06, duration 2.9 seconds tried 288 combinations 2026-08-14 10:35:06.829590: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 984.81p, best_keep 0kWh, best_cycle 47.03kWh, best_carbon 0kg, best_import 35.6kWh 2026-08-14 10:35:06.850480: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 10:35:11.553906: Tweak plan optimisation started metric 756.27p, cost 767.21p 2026-08-14 10:35:11.823452: Tweak optimisation finished metric 756.27p, cost 767.21p, metric_keep 0kWh, cycle 23.22kWh, carbon 0kg, import 21.17kWh, changed 8 window(s) 2026-08-14 10:35:11.842957: Swap charge optimisation started metric 756.27p, cost 767.21p, min_improvement_swap 0.1p 2026-08-14 10:35:14.133265: Swap charge optimisation finished metric 756.27p, cost 767.21p 2026-08-14 10:35:14.205905: Pruned 1 dead plan slot(s) in 7 trial(s), nominal metric 752.81p -> 752.81p, plan now metric 756.28p, cost 767.21p, cycle 23.22kWh, import 21.17kWh 2026-08-14 10:35:14.215131: Raw charge windows [ 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100% ] reserve 1.12 2026-08-14 10:35:14.215637: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 11:00:00 @ 20.02p 100% ] reserve 1.12 2026-08-14 10:35:14.215810: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 11:00:00 @ 20.02p 100% ] reserve 1.12 2026-08-14 10:35:14.215969: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 11:00:00 @ 20.02p 100% ] reserve 1.12 2026-08-14 10:35:14.244545: Previous plan best metric is 756.29 (cost 767.2) and new plan best metric is 756.27 (cost 767.21) 2026-08-14 10:35:14.244729: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 10:35:14.244857: Plan valid is now true after recompute was False 2026-08-14 10:35:14.267026: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 906.57p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.08kWh, PV 0.0kWh 2026-08-14 10:35:14.365833: Battery has 0.33 hours left - now at 1.58kWh 2026-08-14 10:35:14.407660: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 933.03p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 31.03kWh, PV 0.0kWh 2026-08-14 10:35:14.479118: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 840.48p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 31.03kWh, PV 0.0kWh 2026-08-14 10:35:14.549783: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 817.19p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.08kWh, PV 0.0kWh 2026-08-14 10:35:14.549880: Saving plan best values to HA entities 2026-08-14 10:35:14.689483: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 10:35:14.694093: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 10:35:14.698722: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 14.62kWh, house 6.54kWh, export 0.0kWh, metric 817.19p, metric10 840.48p 2026-08-14 10:35:14.766689: Marginal costs baseline metric (no standing charge): 767.2032 2026-08-14 10:35:14.997860: Marginal energy costs matrix computed: min=21.98 max=36.42 2026-08-14 10:35:15.075744: Rate array import [{'start': 635, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 635, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:35:15.076370: - Your estimated bill for today is £6.82 and tomorrow is £5.89 2026-08-14 10:35:15.076415: - Import rates are cheap (21.7p - 22.7p) for the next 5 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:35:15.076438: - The battery is currently at 10% and is in eco mode for the next 2 and a half hours. 2026-08-14 10:35:15.076457: - For the next 48 hours there will be no solar generation. 2026-08-14 10:35:15.076474: - You will run out of battery in 20 minutes. 2026-08-14 10:35:15.076491: - Your next charge slot will be in 2 and a half hours where import rates will be cheap (21.9p). 2026-08-14 10:35:15.076526: 2026-08-14 10:35:15.123789: Plan calculation took 11.33 seconds 2026-08-14 10:35:15.124089: Inverter 0: Type SK Sunsynk 2026-08-14 10:35:15.124125: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:35:15.124323: Reserve min: 7%, battery_min: 7% 2026-08-14 10:35:15.124388: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:35:15.124683: Inverter 0 SoC: 1.44kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power 1104W, current battery voltage 51.2V, grid power -55W, load power 1170W, PV Power 0W 2026-08-14 10:35:15.124887: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:35:15.125033: Inverter 0 scheduled charge enable is False 2026-08-14 10:35:15.125078: Inverter 0 charge windows currently [] 2026-08-14 10:35:15.125103: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:35:15.125204: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:35:15.125234: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:35:15.125265: Inverter 0 scheduled discharge enable is False 2026-08-14 10:35:15.125371: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:35:15.125402: Inverter 0 discharge windows currently [] 2026-08-14 10:35:15.125425: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:35:15.125441: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:35:15.125455: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:35:15.182620: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-14 10:35:15.182780: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:35:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 10:35:15.182845: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:35:15.183005: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:35:15.183074: No export window planned 2026-08-14 10:35:15.183166: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:35:15.183195: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:35:15.183302: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:35:15.183438: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:35:15.183486: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:35:15.183546: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:35:15.183621: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:35:15.183652: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:35:15.183675: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:35:15.183705: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:35:15.183726: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:35:15.183754: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:35:15.183775: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:35:15.183824: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:35:15.183849: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:35:15.183895: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:35:15.183917: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:35:15.183945: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:35:15.183965: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:35:15.183987: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:35:15.184004: Inverter 0 count register writes 0 2026-08-14 10:35:15.203824: Total inverter register writes now 806 2026-08-14 10:35:15.235357: Info: Completed run status Demand 2026-08-14 10:35:15.242748: Info: record_status Demand 2026-08-14 10:35:15.249447: Saved current settings to /config/predbat_config.json 2026-08-14 10:35:15.249728: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 10:35:59.358782: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:35:59.359116: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:35:59.359202: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:35:59.359438: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:35:59.359488: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:35:59.359531: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:35:59.359551: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:38:13.598883: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:38:13.599159: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:38:13.599208: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:38:13.599385: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:38:13.599432: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:38:13.599460: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:38:13.599502: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:40:00.809338: --------------- PredBat - update at 2026-08-14 10:40:00+01:00 with clock skew 0 minutes, minutes now 640 2026-08-14 10:40:00.810178: Saved current settings to /config/predbat_config.json 2026-08-14 10:40:00.810309: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 65.0 minutes 2026-08-14 10:40:00.810406: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 10:40:00.810514: Autoupdate: Currently up to date 2026-08-14 10:40:00.829836: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 10:40:00.829963: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 10:40:00.830136: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 10:40:00.830658: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 10:40:00.830779: Predbat mode is set to Control charge & discharge 2026-08-14 10:40:01.033892: Found 21602 load_today datapoints going back 28 days 2026-08-14 10:40:01.034060: Using load_power data to fill gaps in load_today data 2026-08-14 10:40:01.868571: Processing 721 30-minute periods for power integration 2026-08-14 10:40:02.057033: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 10:40:02.057154: Car charging hold False, threshold 6.0kWh 2026-08-14 10:40:02.057198: Current data so far today: load 10.2kWh, import 10.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 10:40:02.071377: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 10:40:02.072206: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 10:40:02.072278: Standing charge is set to 49.98p 2026-08-14 10:40:02.120105: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 10:40:02.120216: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 10:40:02.120430: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 5.0 minutes 2026-08-14 10:40:02.120856: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 5.0 minutes 2026-08-14 10:40:02.126875: Loaded 95 datapoints of futurerate analysis 2026-08-14 10:40:02.219275: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51'] 2026-08-14 10:40:02.275409: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 10:40:02.280693: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 10:40:02.281053: Import rates: min 14.97p, max 53.39p, average 27.35p 2026-08-14 10:40:02.323403: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 10:40:02.323537: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 10:40:02.324789: High export rate found rates in range 99p to -99p 2026-08-14 10:40:02.416031: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 10:40:02.416157: Car 0 charging is not planned as it is not plugged in 2026-08-14 10:40:02.428192: Battery level now 1.58kWh, -1hr ago 1.76kWh, at midnight 2.43kWh, battery value change in the last hour -2.26p, change today -10.91p, rate_forward 12.86p 2026-08-14 10:40:02.428606: Last hour: net energy 0.62kWh, import 0.62kWh, export 0.0kWh, car 0kWh, load 1.15kWh, net cost 15.37p, import 15.37p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 10:40:02.486042: Today's energy total net 10.4kWh, import 10.4kWh, export 0.0kWh, cost 311.47p, import 261.49p, export 0.0p, carbon 0.0kg 2026-08-14 10:40:02.486234: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 10:40:02.584268: Using weighted-bucket historical load forecast over 14 days 2026-08-14 10:40:02.610051: Today's load divergence 123.24%, in-day adjustment 135.82%, damping 0.95x, yesterday 146.81% today 122.08% blend 55.56% 2026-08-14 10:40:02.610143: Today's predicted so far 5.87kWh with 0.0kWh car/iBoost excluded, 3.77kWh import ignored, and 5.87kWh forecast extra. 2026-08-14 10:40:02.610175: Today's actual load so far 10.26kWh with 0.0kWh car/iBoost excluded, and 3.77kWh import ignored. 2026-08-14 10:40:02.646963: Inverter 0: Type SK Sunsynk 2026-08-14 10:40:02.647049: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:40:02.647229: Reserve min: 7%, battery_min: 7% 2026-08-14 10:40:02.647297: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:40:02.647566: Inverter 0 SoC: 1.42kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4502W, current battery voltage 51.2V, grid power -6106W, load power 1108W, PV Power 0W 2026-08-14 10:40:02.647722: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:40:02.647808: Inverter 0 scheduled charge enable is False 2026-08-14 10:40:02.647837: Inverter 0 charge windows currently [] 2026-08-14 10:40:02.647862: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:40:02.647973: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:40:02.648009: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:40:02.648044: Inverter 0 scheduled discharge enable is False 2026-08-14 10:40:02.648171: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:40:02.648208: Inverter 0 discharge windows currently [] 2026-08-14 10:40:02.648232: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:40:02.648254: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:40:02.648272: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:40:02.710982: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 10:40:02.711092: Plan was last updated on 2026-08-14 10:35:00+01:00 and is now 5.0 minutes old 2026-08-14 10:40:02.711329: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 10:40:02.711371: Best export window [ ] 2026-08-14 10:40:02.712284: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:40:02.715439: Load divergence over 8.0 hours mean 411.12W, min 240.6W, max 1225.8W, std dev 172.35W, divergence 20.96% 2026-08-14 10:40:02.733550: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:40:02.733674: LoadML is_calculating False 2026-08-14 10:40:02.733735: Creating pool of 12 processes to match your CPU count 2026-08-14 10:40:02.839730: predict base end_record 08-15 13:05:00, final soc 1.12kWh, metric 908.94p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.14kWh, PV 0.0kWh 2026-08-14 10:40:02.975415: Battery has 0.25 hours left - now at 1.42kWh 2026-08-14 10:40:03.021569: predict base10 end_record 08-15 13:05:00, final soc 1.12kWh, metric 935.31p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 31.09kWh, PV 0.0kWh 2026-08-14 10:40:03.105923: predict best10 end_record 08-15 13:05:00, final soc 1.44kWh, metric 848.16p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 31.09kWh, PV 0.0kWh 2026-08-14 10:40:03.192099: predict best end_record 08-15 13:05:00, final soc 1.51kWh, metric 826.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 10:55:00, load 30.14kWh, PV 0.0kWh 2026-08-14 10:40:03.192203: Saving plan best values to HA entities 2026-08-14 10:40:03.394520: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 10:40:03.400277: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 10:40:03.406227: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.11kWh, house 6.59kWh, export 0.0kWh, metric 826.0p, metric10 848.16p 2026-08-14 10:40:03.481180: Marginal costs baseline metric (no standing charge): 776.0129 2026-08-14 10:40:03.746814: Marginal energy costs matrix computed: min=21.95 max=35.93 2026-08-14 10:40:03.819307: Rate array import [{'start': 640, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2225, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 640, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:40:03.819989: - Your estimated bill for today is £6.84 and tomorrow is £5.90 2026-08-14 10:40:03.820039: - Import rates are cheap (21.7p - 22.7p) for the next 5 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:40:03.820063: - The battery is currently at 9% and is in eco mode for the next 2 and a quarter hours. 2026-08-14 10:40:03.820081: - For the next 48 hours there will be no solar generation. 2026-08-14 10:40:03.820106: - You will run out of battery in 15 minutes. 2026-08-14 10:40:03.820125: - Your next charge slot will be in 2 and a quarter hours where import rates will be cheap (21.9p). 2026-08-14 10:40:03.820142: 2026-08-14 10:40:03.872018: Plan calculation took 1.16 seconds 2026-08-14 10:40:03.876498: No high rate period found 2026-08-14 10:40:03.932348: Import threshold used for optimisation was 25.52p 2026-08-14 10:40:03.990668: Low import rate windows [0: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 1: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 2: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 3: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 4: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 5: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 6: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 7: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 8: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 9: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 10: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 11: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 12: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 13: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 14: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 15: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 16: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 17: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 18: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 19: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 20: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 21: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 22: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 23: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 24: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 25: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 26: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 27: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 28: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 29: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 30: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 31: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 32: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 33: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 34: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 35: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 36: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 37: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 38: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 39: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 40: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 41: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 42: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 43: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 44: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 45: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 46: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 47: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 48: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 49: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 50: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 51: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 52: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 53: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 54: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 55: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 56: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 57: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 58: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 59: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 60: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 61: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 62: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 63: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 64: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 65: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 66: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 67: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 68: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 69: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 70: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 71: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 72: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 73: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 74: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 75: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 76: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 77: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 78: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 79: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 80: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 81: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 82: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 83: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 84: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 85: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 86: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 87: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 88: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 89: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 90: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 91: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 92: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 93: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 94: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 95: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99] 2026-08-14 10:40:03.996524: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-14 10:40:03.996664: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:40:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 10:40:03.996752: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:40:03.997018: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:40:03.997097: No export window planned 2026-08-14 10:40:03.997197: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:40:03.997229: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:40:03.997395: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:40:03.997615: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:40:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:40:03.997698: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:40:03.997772: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:40:03.997881: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:40:03.997957: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:40:03.997984: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:40:03.998022: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:40:03.998062: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:40:03.998107: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:40:03.998149: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:40:03.998240: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:40:03.998280: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:40:03.998304: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:40:03.998344: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:40:03.998393: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:40:03.998438: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:40:03.998480: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:40:03.998513: Inverter 0 count register writes 0 2026-08-14 10:40:04.013374: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 10:40:04.018485: Total inverter register writes now 806 2026-08-14 10:40:04.052743: Info: Completed run status Demand 2026-08-14 10:40:04.059000: Info: record_status Demand 2026-08-14 10:40:04.065935: Saved current settings to /config/predbat_config.json 2026-08-14 10:40:04.066256: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 10:40:44.175103: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:40:44.175448: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:40:44.175518: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:40:44.175854: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:40:44.175933: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:40:44.175979: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:40:44.176018: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:42:44.412133: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:42:44.412419: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:42:44.412470: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:42:44.412612: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:42:44.412647: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:42:44.412665: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:42:44.412680: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:44:58.656150: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:44:58.656401: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:44:58.656438: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:44:58.656621: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:44:58.656678: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:44:58.656699: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:44:58.656716: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:45:00.742815: --------------- PredBat - update at 2026-08-14 10:45:00+01:00 with clock skew 0 minutes, minutes now 645 2026-08-14 10:45:00.743544: Saved current settings to /config/predbat_config.json 2026-08-14 10:45:00.743690: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 70.0 minutes 2026-08-14 10:45:00.743800: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 10:45:00.743906: Autoupdate: Currently up to date 2026-08-14 10:45:00.762532: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 10:45:00.762686: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 10:45:00.762873: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 10:45:00.763387: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 10:45:00.763571: Predbat mode is set to Control charge & discharge 2026-08-14 10:45:00.932741: Found 21602 load_today datapoints going back 28 days 2026-08-14 10:45:00.933044: Using load_power data to fill gaps in load_today data 2026-08-14 10:45:01.579279: Processing 721 30-minute periods for power integration 2026-08-14 10:45:01.750762: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 10:45:01.750888: Car charging hold False, threshold 6.0kWh 2026-08-14 10:45:01.750935: Current data so far today: load 10.3kWh, import 10.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 10:45:01.765357: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 10:45:01.766147: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 10:45:01.766247: Standing charge is set to 49.98p 2026-08-14 10:45:01.810519: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 10:45:01.810645: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 10:45:01.810815: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 10.0 minutes 2026-08-14 10:45:01.811118: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 10.0 minutes 2026-08-14 10:45:01.815634: Loaded 95 datapoints of futurerate analysis 2026-08-14 10:45:01.894940: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51'] 2026-08-14 10:45:01.941858: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 10:45:01.946346: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 10:45:01.946726: Import rates: min 14.97p, max 53.39p, average 27.34p 2026-08-14 10:45:01.980930: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 10:45:01.981088: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 10:45:01.982132: High export rate found rates in range 99p to -99p 2026-08-14 10:45:02.069673: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 10:45:02.069808: Car 0 charging is not planned as it is not plugged in 2026-08-14 10:45:02.082253: Battery level now 1.42kWh, -1hr ago 1.6kWh, at midnight 2.43kWh, battery value change in the last hour -2.37p, change today -13.07p, rate_forward 12.86p 2026-08-14 10:45:02.082670: Last hour: net energy 0.5kWh, import 0.5kWh, export 0.0kWh, car 0kWh, load 1.2kWh, net cost 12.28p, import 12.28p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 10:45:02.141470: Today's energy total net 10.4kWh, import 10.4kWh, export 0.0kWh, cost 311.47p, import 261.49p, export 0.0p, carbon 0.0kg 2026-08-14 10:45:02.141618: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 10:45:02.215330: Using weighted-bucket historical load forecast over 14 days 2026-08-14 10:45:02.236124: Today's load divergence 123.39%, in-day adjustment 135.79%, damping 0.95x, yesterday 146.81% today 122.22% blend 55.21% 2026-08-14 10:45:02.236194: Today's predicted so far 5.9kWh with 0.0kWh car/iBoost excluded, 3.78kWh import ignored, and 5.9kWh forecast extra. 2026-08-14 10:45:02.236220: Today's actual load so far 10.32kWh with 0.0kWh car/iBoost excluded, and 3.78kWh import ignored. 2026-08-14 10:45:02.271562: Inverter 0: Type SK Sunsynk 2026-08-14 10:45:02.271639: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:45:02.271804: Reserve min: 7%, battery_min: 7% 2026-08-14 10:45:02.271863: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:45:02.272074: Inverter 0 SoC: 1.65kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power -4500W, current battery voltage 51.2V, grid power -8770W, load power 3775W, PV Power 0W 2026-08-14 10:45:02.272202: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:45:02.272273: Inverter 0 scheduled charge enable is False 2026-08-14 10:45:02.272296: Inverter 0 charge windows currently [] 2026-08-14 10:45:02.272317: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:45:02.272401: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:45:02.272430: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:45:02.272459: Inverter 0 scheduled discharge enable is False 2026-08-14 10:45:02.272599: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:45:02.272633: Inverter 0 discharge windows currently [] 2026-08-14 10:45:02.272652: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:45:02.272667: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:45:02.272681: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:45:02.330844: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 10:45:02.330954: Plan was last updated on 2026-08-14 10:35:00+01:00 and is now 10.0 minutes old 2026-08-14 10:45:02.331290: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 10:45:02.331356: Best export window [ ] 2026-08-14 10:45:02.332313: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:45:02.335740: Load divergence over 8.0 hours mean 409.47W, min 220.2W, max 1101.0W, std dev 160.17W, divergence 19.56% 2026-08-14 10:45:02.354064: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:45:02.354162: LoadML is_calculating False 2026-08-14 10:45:02.354237: Creating pool of 12 processes to match your CPU count 2026-08-14 10:45:02.476419: predict base end_record 08-15 13:10:00, final soc 1.12kWh, metric 903.53p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:10:00, load 30.22kWh, PV 0.0kWh 2026-08-14 10:45:02.604890: Battery has 0.42 hours left - now at 1.65kWh 2026-08-14 10:45:02.654577: predict base10 end_record 08-15 13:10:00, final soc 1.12kWh, metric 929.88p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:10:00, load 31.17kWh, PV 0.0kWh 2026-08-14 10:45:02.736848: predict best10 end_record 08-15 13:10:00, final soc 1.77kWh, metric 848.06p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:10:00, load 31.17kWh, PV 0.0kWh 2026-08-14 10:45:02.816189: predict best end_record 08-15 13:10:00, final soc 1.9kWh, metric 826.92p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:10:00, load 30.22kWh, PV 0.0kWh 2026-08-14 10:45:02.816270: Saving plan best values to HA entities 2026-08-14 10:45:02.993184: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 10:45:02.999066: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 10:45:03.005193: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.62kWh, house 6.27kWh, export 0.0kWh, metric 826.92p, metric10 848.06p 2026-08-14 10:45:03.086605: Marginal costs baseline metric (no standing charge): 776.9377 2026-08-14 10:45:03.350215: Marginal energy costs matrix computed: min=21.91 max=35.49 2026-08-14 10:45:03.424238: Rate array import [{'start': 645, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2230, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 645, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:45:03.424886: - Your estimated bill for today is £6.77 and tomorrow is £5.92 2026-08-14 10:45:03.424933: - Import rates are cheap (21.7p - 22.7p) for the next 5 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:45:03.424975: - The battery is currently at 10% and is in eco mode for the next 2 and a quarter hours. 2026-08-14 10:45:03.425013: - For the next 48 hours there will be no solar generation. 2026-08-14 10:45:03.425029: - You will run out of battery in 25 minutes. 2026-08-14 10:45:03.425048: - Your next charge slot will be in 2 and a quarter hours where import rates will be cheap (21.9p). 2026-08-14 10:45:03.425079: 2026-08-14 10:45:03.468782: Plan calculation took 1.14 seconds 2026-08-14 10:45:03.471597: No high rate period found 2026-08-14 10:45:03.521383: Import threshold used for optimisation was 25.52p 2026-08-14 10:45:03.574669: Low import rate windows [0: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 1: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 2: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 3: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 4: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 5: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 6: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 7: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 8: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 9: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 10: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 11: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 12: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 13: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 14: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 15: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 16: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 17: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 18: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 19: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 20: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 21: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 22: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 23: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 24: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 25: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 26: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 27: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 28: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 29: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 30: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 31: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 32: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 33: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 34: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 35: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 36: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 37: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 38: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 39: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 40: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 41: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 42: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 43: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 44: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 45: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 46: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 47: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 48: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 49: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 50: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 51: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 52: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 53: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 54: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 55: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 56: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 57: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 58: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 59: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 60: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 61: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 62: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 63: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 64: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 65: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 66: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 67: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 68: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 69: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 70: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 71: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 72: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 73: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 74: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 75: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 76: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 77: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 78: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 79: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 80: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 81: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 82: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 83: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 84: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 85: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 86: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 87: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 88: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 89: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 90: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 91: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 92: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 93: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 94: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 95: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99] 2026-08-14 10:45:03.581799: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 10:45:03.581918: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:45:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 10:45:03.581991: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:45:03.582188: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:45:03.582270: No export window planned 2026-08-14 10:45:03.582446: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:45:03.582487: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:45:03.582667: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:45:03.582857: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:45:03.582916: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:45:03.582996: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:45:03.583119: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:45:03.583162: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:45:03.583190: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:45:03.583239: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:45:03.583286: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:45:03.583338: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:45:03.583383: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:45:03.583483: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:45:03.583545: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:45:03.583608: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:45:03.583653: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:45:03.583677: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:45:03.583714: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:45:03.583784: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:45:03.583809: Inverter 0 count register writes 0 2026-08-14 10:45:03.599264: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 10:45:03.599421: Recompute is saving previous plan... 2026-08-14 10:45:03.602062: Best charge window [ 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 0% ] 2026-08-14 10:45:03.602132: Best export window [ ] 2026-08-14 10:45:03.602782: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:45:03.605243: Load divergence over 8.0 hours mean 409.47W, min 220.2W, max 1101.0W, std dev 160.17W, divergence 19.56% 2026-08-14 10:45:03.619228: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:45:03.619325: LoadML is_calculating False 2026-08-14 10:45:03.619386: Creating pool of 12 processes to match your CPU count 2026-08-14 10:45:03.696135: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 10:45:03.697873: Optimise levels pass started at 2026-08-14 10:45:03 2026-08-14 10:45:03.697923: Optimise all windows, total charge 95 export 1 2026-08-14 10:45:04.605742: >> Region optimisation pass width 960 gives best_metric 982.19p, best_cost 989.34p, best_cycle 47.09kWh, best_import 35.51kWh 2026-08-14 10:45:04.986699: >> Region optimisation pass width 480 gives best_metric 982.19p, best_cost 989.34p, best_cycle 47.09kWh, best_import 35.51kWh 2026-08-14 10:45:05.450431: >> Region optimisation pass width 240 gives best_metric 982.19p, best_cost 989.34p, best_cycle 47.09kWh, best_import 35.51kWh 2026-08-14 10:45:06.477635: >> Region optimisation pass width 120 gives best_metric 982.19p, best_cost 989.34p, best_cycle 47.09kWh, best_import 35.51kWh 2026-08-14 10:45:06.477917: Calculated end_record as 08-15 13:00:00 based on best_price 22.02p, next_charge_start 08-14 13:00:00, max_windows 52 2026-08-14 10:45:06.477984: Optimise levels pass ended at 2026-08-14 10:45:06, duration 2.8 seconds tried 288 combinations 2026-08-14 10:45:06.478065: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 982.19p, best_keep 0kWh, best_cycle 47.09kWh, best_carbon 0kg, best_import 35.51kWh 2026-08-14 10:45:06.493467: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 10:45:11.216564: Tweak plan optimisation started metric 751.12p, cost 762.09p 2026-08-14 10:45:11.488030: Tweak optimisation finished metric 751.12p, cost 762.09p, metric_keep 0kWh, cycle 23.28kWh, carbon 0kg, import 20.93kWh, changed 8 window(s) 2026-08-14 10:45:11.508630: Swap charge optimisation started metric 751.12p, cost 762.09p, min_improvement_swap 0.1p 2026-08-14 10:45:13.776707: Swap charge optimisation finished metric 751.12p, cost 762.09p 2026-08-14 10:45:13.848886: Pruned 1 dead plan slot(s) in 7 trial(s), nominal metric 747.68p -> 747.68p, plan now metric 751.12p, cost 762.09p, cycle 23.28kWh, import 20.93kWh 2026-08-14 10:45:13.858537: Raw charge windows [ 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100% ] reserve 1.12 2026-08-14 10:45:13.859048: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 11:00:00 @ 20.02p 100% ] reserve 1.12 2026-08-14 10:45:13.859213: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 11:00:00 @ 20.02p 100% ] reserve 1.12 2026-08-14 10:45:13.859351: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 11:00:00 @ 20.02p 100% ] reserve 1.12 2026-08-14 10:45:13.888608: Previous plan best metric is 751.15 (cost 762.07) and new plan best metric is 751.12 (cost 762.09) 2026-08-14 10:45:13.888827: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 10:45:13.889002: Plan valid is now true after recompute was False 2026-08-14 10:45:13.912804: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 901.65p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:10:00, load 30.1kWh, PV 0.0kWh 2026-08-14 10:45:14.023911: Battery has 0.42 hours left - now at 1.65kWh 2026-08-14 10:45:14.070474: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 927.92p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:10:00, load 31.05kWh, PV 0.0kWh 2026-08-14 10:45:14.152158: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 835.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:10:00, load 31.05kWh, PV 0.0kWh 2026-08-14 10:45:14.231572: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 812.06p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:10:00, load 30.1kWh, PV 0.0kWh 2026-08-14 10:45:14.231671: Saving plan best values to HA entities 2026-08-14 10:45:14.384594: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 10:45:14.390516: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 10:45:14.395364: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 14.67kWh, house 6.27kWh, export 0.0kWh, metric 812.06p, metric10 835.27p 2026-08-14 10:45:14.459521: Marginal costs baseline metric (no standing charge): 762.0721 2026-08-14 10:45:14.680892: Marginal energy costs matrix computed: min=21.91 max=35.49 2026-08-14 10:45:14.757823: Rate array import [{'start': 645, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 645, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:45:14.758709: - Your estimated bill for today is £6.77 and tomorrow is £5.92 2026-08-14 10:45:14.758770: - Import rates are cheap (21.7p - 22.7p) for the next 5 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:45:14.758795: - The battery is currently at 10% and is in eco mode for the next 2 and a quarter hours. 2026-08-14 10:45:14.758814: - For the next 48 hours there will be no solar generation. 2026-08-14 10:45:14.758832: - You will run out of battery in 25 minutes. 2026-08-14 10:45:14.758849: - Your next charge slot will be in 2 and a quarter hours where import rates will be cheap (21.9p). 2026-08-14 10:45:14.758866: 2026-08-14 10:45:14.806612: Plan calculation took 11.21 seconds 2026-08-14 10:45:14.807001: Inverter 0: Type SK Sunsynk 2026-08-14 10:45:14.807051: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:45:14.807292: Reserve min: 7%, battery_min: 7% 2026-08-14 10:45:14.807370: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:45:14.807701: Inverter 0 SoC: 1.65kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power -4500W, current battery voltage 51.2V, grid power -6088W, load power 1091W, PV Power 0W 2026-08-14 10:45:14.807941: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:45:14.808047: Inverter 0 scheduled charge enable is False 2026-08-14 10:45:14.808080: Inverter 0 charge windows currently [] 2026-08-14 10:45:14.808107: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:45:14.808218: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:45:14.808253: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:45:14.808289: Inverter 0 scheduled discharge enable is False 2026-08-14 10:45:14.808415: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:45:14.808453: Inverter 0 discharge windows currently [] 2026-08-14 10:45:14.808481: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:45:14.808505: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:45:14.808524: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:45:14.863340: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 10:45:14.863465: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:45:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 10:45:14.863524: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:45:14.863683: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:45:14.863754: No export window planned 2026-08-14 10:45:14.863838: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:45:14.863868: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:45:14.863991: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:45:14.864154: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:45:14.864199: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:45:14.864238: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:45:14.864330: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:45:14.864407: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:45:14.864432: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:45:14.864454: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:45:14.864475: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:45:14.864498: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:45:14.864518: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:45:14.864588: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:45:14.864622: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:45:14.864644: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:45:14.864663: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:45:14.864683: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:45:14.864702: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:45:14.864727: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:45:14.864744: Inverter 0 count register writes 0 2026-08-14 10:45:14.888033: Total inverter register writes now 806 2026-08-14 10:45:14.916360: Info: Completed run status Demand 2026-08-14 10:45:14.923372: Info: record_status Demand 2026-08-14 10:45:14.929616: Saved current settings to /config/predbat_config.json 2026-08-14 10:45:14.929840: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 10:45:59.034498: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:45:59.034813: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:45:59.034874: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:45:59.035097: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:45:59.035143: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:45:59.035168: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:45:59.035203: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:47:43.890961: MCP POST: Received request from 10.0.10.143 2026-08-14 10:47:43.891157: MCP: Could not even decode without verification: Not enough segments 2026-08-14 10:47:43.891200: MCP: Token verification failed: Not enough segments 2026-08-14 10:47:43.891222: MCP POST: Authenticated via legacy bearer token 2026-08-14 10:47:43.899352: MCP POST: Received request from 10.0.10.143 2026-08-14 10:47:43.899486: MCP: Could not even decode without verification: Not enough segments 2026-08-14 10:47:43.899547: MCP: Token verification failed: Not enough segments 2026-08-14 10:47:43.899572: MCP POST: Authenticated via legacy bearer token 2026-08-14 10:47:43.911579: MCP POST: Received request from 10.0.10.143 2026-08-14 10:47:43.911732: MCP: Could not even decode without verification: Not enough segments 2026-08-14 10:47:43.911793: MCP: Token verification failed: Not enough segments 2026-08-14 10:47:43.911828: MCP POST: Authenticated via legacy bearer token 2026-08-14 10:47:57.929584: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 10:47:59.250223: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:47:59.250464: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:47:59.250521: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:47:59.250657: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:47:59.250697: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:47:59.250718: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:47:59.250736: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:48:03.971743: Processing 1345 30-minute periods for power integration 2026-08-14 10:48:04.056520: ML Component: Car charging hold False, car energy reported load False 2026-08-14 10:48:04.135515: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 10:48:04.213354: ML Temperature data points: 49756 2026-08-14 10:48:05.095838: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 10:48:05.127351: ML Component: Data fetch completed, load data age 55.0 days, 16106 data points 2026-08-14 10:48:05.127475: ML Component: No training needed, model age is 0.93 hours 2026-08-14 10:48:05.127569: ML Component: Generating predictions load data age 55.0 days, 16106 data points 2026-08-14 10:48:05.264734: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.1815 max_dow {0: 0.10500312496256084, 1: 0.10763750054407865, 2: 0.11822499983031302, 3: 0.1251781244263053, 4: 0.1736281253574416, 5: 0.10149375002831221, 6: 0.10796875073947013} 2026-08-14 10:48:05.689993: ML Component: Generated 576 predictions (total 38.07 kWh over 48h) 2026-08-14 10:48:05.728182: ML Component: Prediction cycle completed 2026-08-14 10:48:05.839443: ML Component: Saved 16106 steps (55 days) of history to /config/predbat_ml_history.npz 2026-08-14 10:50:00.836534: --------------- PredBat - update at 2026-08-14 10:50:00+01:00 with clock skew 0 minutes, minutes now 650 2026-08-14 10:50:00.837325: Saved current settings to /config/predbat_config.json 2026-08-14 10:50:00.837460: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 75.0 minutes 2026-08-14 10:50:00.837536: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 10:50:00.837625: Autoupdate: Currently up to date 2026-08-14 10:50:00.857275: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 10:50:00.857665: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 10:50:00.857906: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 10:50:00.858355: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 10:50:00.858478: Predbat mode is set to Control charge & discharge 2026-08-14 10:50:01.032452: Found 21602 load_today datapoints going back 28 days 2026-08-14 10:50:01.032861: Using load_power data to fill gaps in load_today data 2026-08-14 10:50:01.679824: Processing 721 30-minute periods for power integration 2026-08-14 10:50:01.834031: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 10:50:01.834151: Car charging hold False, threshold 6.0kWh 2026-08-14 10:50:01.834189: Current data so far today: load 10.55kWh, import 11.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 10:50:01.845710: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 10:50:01.846415: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 10:50:01.846499: Standing charge is set to 49.98p 2026-08-14 10:50:01.887142: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 10:50:01.887224: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 10:50:01.887412: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 15.0 minutes 2026-08-14 10:50:01.887770: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 15.0 minutes 2026-08-14 10:50:01.892388: Loaded 95 datapoints of futurerate analysis 2026-08-14 10:50:01.966720: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51'] 2026-08-14 10:50:02.013379: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 10:50:02.017846: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 10:50:02.018125: Import rates: min 14.97p, max 53.39p, average 27.33p 2026-08-14 10:50:02.051973: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 10:50:02.052084: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 10:50:02.053117: High export rate found rates in range 99p to -99p 2026-08-14 10:50:02.128523: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 10:50:02.128646: Car 0 charging is not planned as it is not plugged in 2026-08-14 10:50:02.144792: Battery level now 1.65kWh, -1hr ago 1.45kWh, at midnight 2.43kWh, battery value change in the last hour 2.57p, change today -10.08p, rate_forward 12.86p 2026-08-14 10:50:02.145286: Last hour: net energy 0.97kWh, import 0.97kWh, export 0.0kWh, car 0kWh, load 1.35kWh, net cost 23.33p, import 23.33p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 10:50:02.198885: Today's energy total net 11.0kWh, import 11.0kWh, export 0.0kWh, cost 325.64p, import 275.65p, export 0.0p, carbon 0.0kg 2026-08-14 10:50:02.199077: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 10:50:02.284382: Using weighted-bucket historical load forecast over 14 days 2026-08-14 10:50:02.312056: Today's load divergence 123.87%, in-day adjustment 135.92%, damping 0.95x, yesterday 146.81% today 122.68% blend 54.86% 2026-08-14 10:50:02.312143: Today's predicted so far 5.94kWh with 0.0kWh car/iBoost excluded, 3.79kWh import ignored, and 5.94kWh forecast extra. 2026-08-14 10:50:02.312203: Today's actual load so far 10.49kWh with 0.0kWh car/iBoost excluded, and 3.79kWh import ignored. 2026-08-14 10:50:02.347248: Inverter 0: Type SK Sunsynk 2026-08-14 10:50:02.347368: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:50:02.347649: Reserve min: 7%, battery_min: 7% 2026-08-14 10:50:02.347772: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:50:02.348162: Inverter 0 SoC: 1.65kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1233W, current battery voltage 51.2V, grid power -53W, load power 1275W, PV Power 0W 2026-08-14 10:50:02.348395: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:50:02.348555: Inverter 0 scheduled charge enable is False 2026-08-14 10:50:02.348619: Inverter 0 charge windows currently [] 2026-08-14 10:50:02.348654: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:50:02.348828: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:50:02.348894: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:50:02.349007: Inverter 0 scheduled discharge enable is False 2026-08-14 10:50:02.349255: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:50:02.349318: Inverter 0 discharge windows currently [] 2026-08-14 10:50:02.349485: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:50:02.349645: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:50:02.349695: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:50:02.418843: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 10:50:02.418947: Plan was last updated on 2026-08-14 10:45:00+01:00 and is now 5.0 minutes old 2026-08-14 10:50:02.419184: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 10:50:02.419225: Best export window [ ] 2026-08-14 10:50:02.420056: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:50:02.423115: Load divergence over 8.0 hours mean 407.89W, min 235.2W, max 1260.6W, std dev 171.51W, divergence 21.02% 2026-08-14 10:50:02.441358: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:50:02.441463: LoadML is_calculating False 2026-08-14 10:50:02.441541: Creating pool of 12 processes to match your CPU count 2026-08-14 10:50:02.552075: predict base end_record 08-15 13:05:00, final soc 1.12kWh, metric 915.52p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:15:00, load 30.36kWh, PV 0.0kWh 2026-08-14 10:50:02.679229: Battery has 0.42 hours left - now at 1.65kWh 2026-08-14 10:50:02.725560: predict base10 end_record 08-15 13:05:00, final soc 1.12kWh, metric 941.77p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:15:00, load 31.3kWh, PV 0.0kWh 2026-08-14 10:50:02.810698: predict best10 end_record 08-15 13:05:00, final soc 1.44kWh, metric 854.66p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:15:00, load 31.3kWh, PV 0.0kWh 2026-08-14 10:50:02.896239: predict best end_record 08-15 13:05:00, final soc 1.51kWh, metric 832.46p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:15:00, load 30.36kWh, PV 0.0kWh 2026-08-14 10:50:02.896327: Saving plan best values to HA entities 2026-08-14 10:50:03.067904: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 10:50:03.073395: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 10:50:03.079124: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.14kWh, house 6.21kWh, export 0.0kWh, metric 832.46p, metric10 854.66p 2026-08-14 10:50:03.154497: Marginal costs baseline metric (no standing charge): 782.4806 2026-08-14 10:50:03.422429: Marginal energy costs matrix computed: min=21.88 max=35.14 2026-08-14 10:50:03.496620: Rate array import [{'start': 650, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2225, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 650, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:50:03.497540: - Your estimated bill for today is £6.89 and tomorrow is £5.92 2026-08-14 10:50:03.497601: - Import rates are cheap (21.7p - 22.7p) for the next 5 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:50:03.497626: - The battery is currently at 10% and is in eco mode for the next 2 and a quarter hours. 2026-08-14 10:50:03.497646: - For the next 48 hours there will be no solar generation. 2026-08-14 10:50:03.497664: - You will run out of battery in 25 minutes. 2026-08-14 10:50:03.497681: - Your next charge slot will be in 2 and a quarter hours where import rates will be cheap (21.9p). 2026-08-14 10:50:03.497702: 2026-08-14 10:50:03.547320: Plan calculation took 1.13 seconds 2026-08-14 10:50:03.550173: No high rate period found 2026-08-14 10:50:03.597479: Import threshold used for optimisation was 25.52p 2026-08-14 10:50:03.646351: Low import rate windows [0: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 1: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 2: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 3: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 4: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 5: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 6: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 7: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 8: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 9: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 10: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 11: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 12: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 13: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 14: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 15: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 16: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 17: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 18: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 19: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 20: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 21: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 22: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 23: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 24: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 25: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 26: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 27: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 28: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 29: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 30: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 31: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 32: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 33: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 34: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 35: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 36: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 37: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 38: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 39: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 40: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 41: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 42: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 43: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 44: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 45: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 46: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 47: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 48: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 49: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 50: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 51: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 52: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 53: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 54: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 55: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 56: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 57: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 58: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 59: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 60: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 61: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 62: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 63: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 64: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 65: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 66: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 67: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 68: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 69: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 70: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 71: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 72: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 73: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 74: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 75: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 76: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 77: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 78: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 79: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 80: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 81: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 82: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 83: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 84: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 85: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 86: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 87: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 88: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 89: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 90: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 91: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 92: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 93: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 94: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 95: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99] 2026-08-14 10:50:03.653148: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 10:50:03.653264: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:50:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 10:50:03.653357: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:50:03.653582: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:50:03.653664: No export window planned 2026-08-14 10:50:03.653752: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:50:03.653782: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:50:03.653888: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:50:03.654038: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:50:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:50:03.654095: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:50:03.654141: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:50:03.654222: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:50:03.654259: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:50:03.654287: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:50:03.654326: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:50:03.654347: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:50:03.654368: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:50:03.654392: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:50:03.654458: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:50:03.654485: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:50:03.654506: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:50:03.654525: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:50:03.654545: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:50:03.654563: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:50:03.654582: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:50:03.654605: Inverter 0 count register writes 0 2026-08-14 10:50:03.671029: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 10:50:03.677290: Total inverter register writes now 806 2026-08-14 10:50:03.715941: Info: Completed run status Demand 2026-08-14 10:50:03.722550: Info: record_status Demand 2026-08-14 10:50:03.729497: Saved current settings to /config/predbat_config.json 2026-08-14 10:50:03.729810: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 10:50:43.836614: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:50:43.837103: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:50:43.837170: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:50:43.837695: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:50:43.837815: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:50:43.837875: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:50:43.837929: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:52:44.124941: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:52:44.125220: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:52:44.125256: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:52:44.125547: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:52:44.125613: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:52:44.125638: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:52:44.125663: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:54:44.345465: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:54:44.345799: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:54:44.345923: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:54:44.346191: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:54:44.346240: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:54:44.346310: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:54:44.346343: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:55:00.441840: --------------- PredBat - update at 2026-08-14 10:55:00+01:00 with clock skew 0 minutes, minutes now 655 2026-08-14 10:55:00.442549: Saved current settings to /config/predbat_config.json 2026-08-14 10:55:00.442657: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 80.0 minutes 2026-08-14 10:55:00.442723: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 10:55:00.442811: Autoupdate: Currently up to date 2026-08-14 10:55:00.459478: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 10:55:00.459598: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 10:55:00.459772: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 10:55:00.460344: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 10:55:00.460484: Predbat mode is set to Control charge & discharge 2026-08-14 10:55:00.639065: Found 21602 load_today datapoints going back 28 days 2026-08-14 10:55:00.639203: Using load_power data to fill gaps in load_today data 2026-08-14 10:55:01.393485: Processing 721 30-minute periods for power integration 2026-08-14 10:55:01.560885: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 10:55:01.561018: Car charging hold False, threshold 6.0kWh 2026-08-14 10:55:01.561060: Current data so far today: load 10.7kWh, import 11.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 10:55:01.573666: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 10:55:01.574403: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 10:55:01.574466: Standing charge is set to 49.98p 2026-08-14 10:55:01.618045: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 10:55:01.618144: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 10:55:01.618315: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 20.0 minutes 2026-08-14 10:55:01.618648: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 20.0 minutes 2026-08-14 10:55:01.623568: Loaded 95 datapoints of futurerate analysis 2026-08-14 10:55:01.703906: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51'] 2026-08-14 10:55:01.750197: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 10:55:01.754797: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 10:55:01.755158: Import rates: min 14.97p, max 53.39p, average 27.33p 2026-08-14 10:55:01.790392: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 10:55:01.790496: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 10:55:01.791516: High export rate found rates in range 99p to -99p 2026-08-14 10:55:01.866656: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 10:55:01.866782: Car 0 charging is not planned as it is not plugged in 2026-08-14 10:55:01.878747: Battery level now 1.65kWh, -1hr ago 1.45kWh, at midnight 2.43kWh, battery value change in the last hour 2.57p, change today -10.08p, rate_forward 12.86p 2026-08-14 10:55:01.879259: Last hour: net energy 0.85kWh, import 0.85kWh, export 0.0kWh, car 0kWh, load 1.4kWh, net cost 20.24p, import 20.24p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 10:55:01.943283: Today's energy total net 11.0kWh, import 11.0kWh, export 0.0kWh, cost 325.64p, import 275.66p, export 0.0p, carbon 0.0kg 2026-08-14 10:55:01.943483: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 10:55:02.027979: Using weighted-bucket historical load forecast over 14 days 2026-08-14 10:55:02.054975: Today's load divergence 124.07%, in-day adjustment 135.92%, damping 0.95x, yesterday 146.81% today 122.86% blend 54.51% 2026-08-14 10:55:02.055081: Today's predicted so far 5.98kWh with 0.0kWh car/iBoost excluded, 3.89kWh import ignored, and 5.98kWh forecast extra. 2026-08-14 10:55:02.055116: Today's actual load so far 10.57kWh with 0.0kWh car/iBoost excluded, and 3.89kWh import ignored. 2026-08-14 10:55:02.092133: Inverter 0: Type SK Sunsynk 2026-08-14 10:55:02.092224: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:55:02.092448: Reserve min: 7%, battery_min: 7% 2026-08-14 10:55:02.092532: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:55:02.092792: Inverter 0 SoC: 2.0kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power 1293W, current battery voltage 51.2V, grid power -57W, load power 1351W, PV Power 0W 2026-08-14 10:55:02.092994: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:55:02.093086: Inverter 0 scheduled charge enable is False 2026-08-14 10:55:02.093116: Inverter 0 charge windows currently [] 2026-08-14 10:55:02.093147: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:55:02.093260: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:55:02.093289: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:55:02.093323: Inverter 0 scheduled discharge enable is False 2026-08-14 10:55:02.093464: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:55:02.093504: Inverter 0 discharge windows currently [] 2026-08-14 10:55:02.093528: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:55:02.093547: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:55:02.093564: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:55:02.154890: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 10:55:02.155007: Plan was last updated on 2026-08-14 10:45:00+01:00 and is now 10.0 minutes old 2026-08-14 10:55:02.155379: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 10:55:02.155432: Best export window [ ] 2026-08-14 10:55:02.156324: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:55:02.160570: Load divergence over 8.0 hours mean 406.44W, min 247.2W, max 1439.4W, std dev 191.89W, divergence 23.61% 2026-08-14 10:55:02.185667: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:55:02.185805: LoadML is_calculating False 2026-08-14 10:55:02.185902: Creating pool of 12 processes to match your CPU count 2026-08-14 10:55:02.308754: predict base end_record 08-15 13:10:00, final soc 1.12kWh, metric 907.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 30.5kWh, PV 0.0kWh 2026-08-14 10:55:02.445978: Battery has 0.67 hours left - now at 2.0kWh 2026-08-14 10:55:02.493627: predict base10 end_record 08-15 13:10:00, final soc 1.12kWh, metric 933.71p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:30:00, load 31.45kWh, PV 0.0kWh 2026-08-14 10:55:02.578880: predict best10 end_record 08-15 13:10:00, final soc 1.77kWh, metric 852.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:30:00, load 31.45kWh, PV 0.0kWh 2026-08-14 10:55:02.663698: predict best end_record 08-15 13:10:00, final soc 1.9kWh, metric 831.02p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 30.5kWh, PV 0.0kWh 2026-08-14 10:55:02.663784: Saving plan best values to HA entities 2026-08-14 10:55:02.811681: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 10:55:02.816794: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 10:55:02.822306: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.64kWh, house 5.81kWh, export 0.0kWh, metric 831.02p, metric10 852.1p 2026-08-14 10:55:02.904333: Marginal costs baseline metric (no standing charge): 781.0342 2026-08-14 10:55:03.186092: Marginal energy costs matrix computed: min=21.84 max=35.52 2026-08-14 10:55:03.258582: Rate array import [{'start': 655, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2230, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 655, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:55:03.259410: - Your estimated bill for today is £6.80 and tomorrow is £5.93 2026-08-14 10:55:03.259464: - Import rates are cheap (21.7p - 22.7p) for the next 5 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:55:03.259494: - The battery is currently at 13% and is in eco mode for the next 2 hours. 2026-08-14 10:55:03.259535: - For the next 48 hours there will be no solar generation. 2026-08-14 10:55:03.259570: - You will run out of battery in 40 minutes. 2026-08-14 10:55:03.259591: - Your next charge slot will be in 2 hours where import rates will be cheap (21.9p). 2026-08-14 10:55:03.259616: 2026-08-14 10:55:03.307912: Plan calculation took 1.15 seconds 2026-08-14 10:55:03.311997: No high rate period found 2026-08-14 10:55:03.362149: Import threshold used for optimisation was 25.52p 2026-08-14 10:55:03.419287: Low import rate windows [0: 08-14 10:30:00 - 08-14 11:00:00 @ 22.68, 1: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 2: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 3: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 4: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 5: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 6: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 7: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 8: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 9: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 10: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 11: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 12: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 13: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 14: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 15: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 16: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 17: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 18: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 19: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 20: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 21: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 22: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 23: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 24: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 25: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 26: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 27: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 28: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 29: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 30: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 31: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 32: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 33: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 34: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 35: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 36: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 37: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 38: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 39: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 40: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 41: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 42: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 43: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 44: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 45: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 46: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 47: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 48: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 49: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 50: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 51: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 52: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 53: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 54: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 55: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 56: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 57: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 58: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 59: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 60: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 61: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 62: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 63: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 64: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 65: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 66: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 67: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 68: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 69: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 70: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 71: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 72: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 73: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 74: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 75: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 76: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 77: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 78: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 79: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 80: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 81: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 82: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 83: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 84: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 85: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 86: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 87: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 88: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 89: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 90: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 91: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 92: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 93: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 94: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 95: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99] 2026-08-14 10:55:03.426308: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-14 10:55:03.426457: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:55:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 10:55:03.426546: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:55:03.426801: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:55:03.426938: No export window planned 2026-08-14 10:55:03.427080: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:55:03.427119: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:55:03.427260: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:55:03.427469: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:55:03.427540: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:55:03.427601: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:55:03.427691: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:55:03.427734: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:55:03.427762: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:55:03.427787: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:55:03.427811: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:55:03.427835: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:55:03.427859: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:55:03.427924: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:55:03.427960: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:55:03.428006: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:55:03.428058: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:55:03.428115: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:55:03.428183: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:55:03.428222: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:55:03.428252: Inverter 0 count register writes 0 2026-08-14 10:55:03.444216: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 10:55:03.444455: Recompute is saving previous plan... 2026-08-14 10:55:03.447813: Best charge window [ 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 0% ] 2026-08-14 10:55:03.447916: Best export window [ ] 2026-08-14 10:55:03.448727: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 10:55:03.451795: Load divergence over 8.0 hours mean 406.44W, min 247.2W, max 1439.4W, std dev 191.89W, divergence 23.61% 2026-08-14 10:55:03.470033: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 10:55:03.470124: LoadML is_calculating False 2026-08-14 10:55:03.470186: Creating pool of 12 processes to match your CPU count 2026-08-14 10:55:03.548315: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 10:55:03.550608: Optimise levels pass started at 2026-08-14 10:55:03 2026-08-14 10:55:03.550685: Optimise all windows, total charge 95 export 1 2026-08-14 10:55:04.482394: >> Region optimisation pass width 960 gives best_metric 988.61p, best_cost 995.75p, best_cycle 47.44kWh, best_import 35.18kWh 2026-08-14 10:55:04.872760: >> Region optimisation pass width 480 gives best_metric 988.61p, best_cost 995.75p, best_cycle 47.44kWh, best_import 35.18kWh 2026-08-14 10:55:05.329038: >> Region optimisation pass width 240 gives best_metric 988.61p, best_cost 995.75p, best_cycle 47.44kWh, best_import 35.18kWh 2026-08-14 10:55:06.455505: >> Region optimisation pass width 120 gives best_metric 988.61p, best_cost 995.75p, best_cycle 47.44kWh, best_import 35.18kWh 2026-08-14 10:55:06.455828: Calculated end_record as 08-15 13:00:00 based on best_price 22.02p, next_charge_start 08-14 13:00:00, max_windows 52 2026-08-14 10:55:06.455902: Optimise levels pass ended at 2026-08-14 10:55:06, duration 2.9 seconds tried 288 combinations 2026-08-14 10:55:06.455972: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 988.61p, best_keep 0kWh, best_cycle 47.44kWh, best_carbon 0kg, best_import 35.18kWh 2026-08-14 10:55:06.476321: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 10:55:11.303692: Tweak plan optimisation started metric 755.04p, cost 766.03p 2026-08-14 10:55:11.615291: Tweak optimisation finished metric 755.04p, cost 766.03p, metric_keep 0kWh, cycle 23.62kWh, carbon 0kg, import 20.48kWh, changed 8 window(s) 2026-08-14 10:55:11.634028: Swap charge optimisation started metric 755.04p, cost 766.03p, min_improvement_swap 0.1p 2026-08-14 10:55:14.319336: Swap charge optimisation finished metric 755.04p, cost 766.03p 2026-08-14 10:55:14.417653: Pruned 1 dead plan slot(s) in 7 trial(s), nominal metric 751.63p -> 751.63p, plan now metric 755.04p, cost 766.03p, cycle 23.62kWh, import 20.48kWh 2026-08-14 10:55:14.430140: Raw charge windows [ 14-08 10:30:00 - 14-08 11:00:00 @ 22.68p 0%, 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100% ] reserve 1.12 2026-08-14 10:55:14.430832: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 11:00:00 @ 20.02p 100% ] reserve 1.12 2026-08-14 10:55:14.431044: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 11:00:00 @ 20.02p 100% ] reserve 1.12 2026-08-14 10:55:14.431214: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 11:00:00 @ 20.02p 100% ] reserve 1.12 2026-08-14 10:55:14.469508: Previous plan best metric is 755.08 (cost 766.01) and new plan best metric is 755.04 (cost 766.03) 2026-08-14 10:55:14.469897: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 10:55:14.470120: Plan valid is now true after recompute was False 2026-08-14 10:55:14.500425: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 905.48p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 30.37kWh, PV 0.0kWh 2026-08-14 10:55:14.613873: Battery has 0.67 hours left - now at 2.0kWh 2026-08-14 10:55:14.665227: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 931.59p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:30:00, load 31.31kWh, PV 0.0kWh 2026-08-14 10:55:14.744588: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 839.14p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:30:00, load 31.31kWh, PV 0.0kWh 2026-08-14 10:55:14.827279: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 816.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 30.37kWh, PV 0.0kWh 2026-08-14 10:55:14.827383: Saving plan best values to HA entities 2026-08-14 10:55:14.987606: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 10:55:14.992884: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 10:55:14.998448: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 14.67kWh, house 5.81kWh, export 0.0kWh, metric 816.0p, metric10 839.14p 2026-08-14 10:55:15.069992: Marginal costs baseline metric (no standing charge): 766.0143 2026-08-14 10:55:15.363898: Marginal energy costs matrix computed: min=21.84 max=35.52 2026-08-14 10:55:15.439025: Rate array import [{'start': 655, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.7p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 655, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 10:55:15.439747: - Your estimated bill for today is £6.80 and tomorrow is £5.93 2026-08-14 10:55:15.439798: - Import rates are cheap (21.7p - 22.7p) for the next 5 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 10:55:15.439826: - The battery is currently at 13% and is in eco mode for the next 2 hours. 2026-08-14 10:55:15.439862: - For the next 48 hours there will be no solar generation. 2026-08-14 10:55:15.439925: - You will run out of battery in 40 minutes. 2026-08-14 10:55:15.439964: - Your next charge slot will be in 2 hours where import rates will be cheap (21.9p). 2026-08-14 10:55:15.439998: 2026-08-14 10:55:15.489287: Plan calculation took 12.04 seconds 2026-08-14 10:55:15.489749: Inverter 0: Type SK Sunsynk 2026-08-14 10:55:15.489829: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 10:55:15.490163: Reserve min: 7%, battery_min: 7% 2026-08-14 10:55:15.490303: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 10:55:15.490777: Inverter 0 SoC: 2.0kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power 1293W, current battery voltage 51.2V, grid power -57W, load power 1351W, PV Power 0W 2026-08-14 10:55:15.491045: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:55:15.491208: Inverter 0 scheduled charge enable is False 2026-08-14 10:55:15.491277: Inverter 0 charge windows currently [] 2026-08-14 10:55:15.491342: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 10:55:15.491546: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:55:15.491593: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:55:15.491660: Inverter 0 scheduled discharge enable is False 2026-08-14 10:55:15.491905: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:55:15.491971: Inverter 0 discharge windows currently [] 2026-08-14 10:55:15.492029: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:55:15.492072: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:55:15.492101: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:55:15.548687: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-14 10:55:15.548831: Inverter 0 disabled charge window while waiting for schedule (now 08-14 10:55:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 10:55:15.548903: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:55:15.549164: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:55:15.549257: No export window planned 2026-08-14 10:55:15.549376: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 10:55:15.549434: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 10:55:15.549587: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 10:55:15.549769: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 10:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 10:55:15.549822: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 10:55:15.549874: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 10:55:15.549962: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:55:15.550019: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:55:15.550047: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:55:15.550072: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:55:15.550104: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:55:15.550164: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:55:15.550190: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 10:55:15.550258: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:55:15.550295: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:55:15.550322: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:55:15.550363: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:55:15.550389: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:55:15.550416: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:55:15.550440: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 10:55:15.550470: Inverter 0 count register writes 0 2026-08-14 10:55:15.571343: Total inverter register writes now 806 2026-08-14 10:55:15.603914: Info: Completed run status Demand 2026-08-14 10:55:15.610680: Info: record_status Demand 2026-08-14 10:55:15.617754: Saved current settings to /config/predbat_config.json 2026-08-14 10:55:15.618020: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 10:55:58.736145: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:55:58.736387: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:55:58.736429: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:55:58.736670: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:55:58.736725: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:55:58.736749: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:55:58.736769: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:57:58.951443: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:57:58.951678: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:57:58.951716: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:57:58.951851: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:57:58.951888: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:57:58.951906: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:57:58.951921: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 10:59:59.169287: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 10:59:59.169622: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 10:59:59.169694: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 10:59:59.169939: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 10:59:59.170006: Note: Inverter does not support discharge freeze - disabled 2026-08-14 10:59:59.170057: Note: Inverter does not support charge freeze - disabled 2026-08-14 10:59:59.170103: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:00:00.290401: --------------- PredBat - update at 2026-08-14 11:00:00+01:00 with clock skew 0 minutes, minutes now 660 2026-08-14 11:00:00.291350: Saved current settings to /config/predbat_config.json 2026-08-14 11:00:00.291518: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 85.0 minutes 2026-08-14 11:00:00.291631: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 11:00:00.291760: Autoupdate: Currently up to date 2026-08-14 11:00:00.311892: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 11:00:00.312084: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 11:00:00.312397: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 11:00:00.313059: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 11:00:00.313230: Predbat mode is set to Control charge & discharge 2026-08-14 11:00:00.532726: Found 21602 load_today datapoints going back 28 days 2026-08-14 11:00:00.532875: Using load_power data to fill gaps in load_today data 2026-08-14 11:00:01.419233: Processing 721 30-minute periods for power integration 2026-08-14 11:00:01.635822: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 11:00:01.635960: Car charging hold False, threshold 6.0kWh 2026-08-14 11:00:01.636005: Current data so far today: load 10.7kWh, import 11.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 11:00:01.651402: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 11:00:01.652179: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 11:00:01.652251: Standing charge is set to 49.98p 2026-08-14 11:00:01.706482: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 11:00:01.706640: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 11:00:01.706908: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 25.0 minutes 2026-08-14 11:00:01.707588: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 25.0 minutes 2026-08-14 11:00:01.716283: Loaded 95 datapoints of futurerate analysis 2026-08-14 11:00:01.824528: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68'] 2026-08-14 11:00:01.889945: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 11:00:01.895850: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 11:00:01.896348: Import rates: min 14.97p, max 53.39p, average 27.32p 2026-08-14 11:00:01.944721: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 11:00:01.944852: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 11:00:01.946159: High export rate found rates in range 99p to -99p 2026-08-14 11:00:02.049862: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 11:00:02.050058: Car 0 charging is not planned as it is not plugged in 2026-08-14 11:00:02.068186: Battery level now 2.0kWh, -1hr ago 1.41kWh, at midnight 2.43kWh, battery value change in the last hour 7.61p, change today -5.56p, rate_forward 12.86p 2026-08-14 11:00:02.068843: Last hour: net energy 1.12kWh, import 1.12kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 26.24p, import 26.24p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 11:00:02.134804: Today's energy total net 11.4kWh, import 11.4kWh, export 0.0kWh, cost 334.71p, import 284.73p, export 0.0p, carbon 0.0kg 2026-08-14 11:00:02.134968: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 11:00:02.225319: Using weighted-bucket historical load forecast over 14 days 2026-08-14 11:00:02.256904: Today's load divergence 124.13%, in-day adjustment 135.86%, damping 0.95x, yesterday 146.81% today 122.92% blend 54.17% 2026-08-14 11:00:02.257059: Today's predicted so far 6.1kWh with 0.0kWh car/iBoost excluded, 4.01kWh import ignored, and 6.1kWh forecast extra. 2026-08-14 11:00:02.257097: Today's actual load so far 10.71kWh with 0.0kWh car/iBoost excluded, and 4.01kWh import ignored. 2026-08-14 11:00:02.297253: Inverter 0: Type SK Sunsynk 2026-08-14 11:00:02.297362: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 11:00:02.297552: Reserve min: 7%, battery_min: 7% 2026-08-14 11:00:02.297622: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 11:00:02.297872: Inverter 0 SoC: 1.92kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 1363W, current battery voltage 51.2V, grid power -55W, load power 1427W, PV Power 0W 2026-08-14 11:00:02.298035: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:00:02.298124: Inverter 0 scheduled charge enable is False 2026-08-14 11:00:02.298160: Inverter 0 charge windows currently [] 2026-08-14 11:00:02.298187: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 11:00:02.298293: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:00:02.298346: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:00:02.298383: Inverter 0 scheduled discharge enable is False 2026-08-14 11:00:02.298506: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:00:02.298543: Inverter 0 discharge windows currently [] 2026-08-14 11:00:02.298565: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:00:02.298587: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:00:02.298604: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:00:02.359020: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 11:00:02.359152: Plan was last updated on 2026-08-14 10:55:00+01:00 and is now 5.0 minutes old 2026-08-14 11:00:02.359419: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 11:00:02.359489: Best export window [ ] 2026-08-14 11:00:02.360325: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 11:00:02.363449: Load divergence over 8.0 hours mean 403.46W, min 239.4W, max 1403.4W, std dev 184.98W, divergence 22.92% 2026-08-14 11:00:02.383452: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 11:00:02.383570: LoadML is_calculating False 2026-08-14 11:00:02.383630: Creating pool of 12 processes to match your CPU count 2026-08-14 11:00:02.493754: predict base end_record 08-15 13:05:00, final soc 1.12kWh, metric 914.43p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 30.32kWh, PV 0.0kWh 2026-08-14 11:00:02.630126: Battery has 0.58 hours left - now at 1.92kWh 2026-08-14 11:00:02.679179: predict base10 end_record 08-15 13:05:00, final soc 1.12kWh, metric 940.45p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 31.26kWh, PV 0.0kWh 2026-08-14 11:00:02.773214: predict best10 end_record 08-15 13:05:00, final soc 1.44kWh, metric 853.43p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 31.26kWh, PV 0.0kWh 2026-08-14 11:00:02.870785: predict best end_record 08-15 13:05:00, final soc 1.51kWh, metric 831.58p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 30.32kWh, PV 0.0kWh 2026-08-14 11:00:02.870892: Saving plan best values to HA entities 2026-08-14 11:00:03.074280: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 11:00:03.080065: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 11:00:03.086508: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.1kWh, house 5.82kWh, export 0.0kWh, metric 831.58p, metric10 853.43p 2026-08-14 11:00:03.179803: Marginal costs baseline metric (no standing charge): 781.5961 2026-08-14 11:00:03.492787: Marginal energy costs matrix computed: min=21.81 max=35.86 2026-08-14 11:00:03.582445: Rate array import [{'start': 660, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2225, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 660, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 11:00:03.583143: - Your estimated bill for today is £6.89 and tomorrow is £5.90 2026-08-14 11:00:03.583190: - Import rates are cheap (21.7p - 22.6p) for the next 5 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 11:00:03.583213: - The battery is currently at 12% and is in eco mode for the next 2 hours. 2026-08-14 11:00:03.583231: - For the next 48 hours there will be no solar generation. 2026-08-14 11:00:03.583249: - You will run out of battery in 35 minutes. 2026-08-14 11:00:03.583274: - Your next charge slot will be in 2 hours where import rates will be cheap (21.9p). 2026-08-14 11:00:03.583293: 2026-08-14 11:00:03.642098: Plan calculation took 1.28 seconds 2026-08-14 11:00:03.645693: No high rate period found 2026-08-14 11:00:03.703819: Import threshold used for optimisation was 25.52p 2026-08-14 11:00:03.788221: Low import rate windows [0: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 1: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 2: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 3: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 4: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 5: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 6: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 7: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 8: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 9: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 10: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 11: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 12: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 13: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 14: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 15: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 16: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 17: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 18: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 19: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 20: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 21: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 22: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 23: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 24: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 25: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 26: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 27: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 28: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 29: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 30: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 31: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 32: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 33: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 34: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 35: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 36: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 37: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 38: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 39: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 40: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 41: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 42: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 43: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 44: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 45: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 46: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 47: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 48: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 49: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 50: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 51: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 52: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 53: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 54: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 55: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 56: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 57: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 58: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 59: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 60: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 61: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 62: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 63: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 64: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 65: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 66: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 67: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 68: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 69: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 70: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 71: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 72: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 73: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 74: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 75: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 76: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 77: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 78: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 79: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 80: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 81: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 82: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 83: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 84: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 85: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 86: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 87: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 88: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 89: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 90: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 91: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 92: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 93: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 94: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99] 2026-08-14 11:00:03.797986: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 11:00:03.798135: Inverter 0 disabled charge window while waiting for schedule (now 08-14 11:00:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 11:00:03.798239: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:00:03.798515: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:00:03.798609: No export window planned 2026-08-14 11:00:03.798723: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 11:00:03.798758: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:00:03.798890: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:00:03.799069: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 11:00:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 11:00:03.799143: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 11:00:03.799196: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 11:00:03.799352: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:00:03.799451: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:00:03.799488: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:00:03.799523: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:00:03.799550: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:00:03.799575: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:00:03.799605: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:00:03.799719: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:00:03.799785: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:00:03.799817: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:00:03.799859: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:00:03.799921: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:00:03.799964: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:00:03.800022: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:00:03.800072: Inverter 0 count register writes 0 2026-08-14 11:00:03.818970: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 11:00:03.825312: Total inverter register writes now 806 2026-08-14 11:00:03.861327: Info: Completed run status Demand 2026-08-14 11:00:03.868087: Info: record_status Demand 2026-08-14 11:00:03.876048: Saved current settings to /config/predbat_config.json 2026-08-14 11:00:03.876407: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 11:00:43.992700: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:00:43.993037: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:00:43.993105: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:00:43.993281: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:00:43.993408: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:00:43.993451: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:00:43.993475: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:02:44.211496: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:02:44.211732: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:02:44.211774: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:02:44.211929: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:02:44.211968: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:02:44.211990: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:02:44.212008: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:04:44.425988: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:04:44.426224: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:04:44.426258: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:04:44.426407: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:04:44.426449: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:04:44.426471: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:04:44.426488: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:05:00.532927: --------------- PredBat - update at 2026-08-14 11:05:00+01:00 with clock skew 0 minutes, minutes now 665 2026-08-14 11:05:00.533758: Saved current settings to /config/predbat_config.json 2026-08-14 11:05:00.533891: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 90.0 minutes 2026-08-14 11:05:00.533982: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 11:05:00.534077: Autoupdate: Currently up to date 2026-08-14 11:05:00.551839: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 11:05:00.551950: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 11:05:00.552097: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 11:05:00.552677: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 11:05:00.552851: Predbat mode is set to Control charge & discharge 2026-08-14 11:05:00.729799: Found 21602 load_today datapoints going back 28 days 2026-08-14 11:05:00.729929: Using load_power data to fill gaps in load_today data 2026-08-14 11:05:01.450521: Processing 721 30-minute periods for power integration 2026-08-14 11:05:01.617974: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 11:05:01.618093: Car charging hold False, threshold 6.0kWh 2026-08-14 11:05:01.618131: Current data so far today: load 10.8kWh, import 11.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 11:05:01.630864: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 11:05:01.631644: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 11:05:01.631851: Standing charge is set to 49.98p 2026-08-14 11:05:01.684164: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 11:05:01.684271: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 11:05:01.684459: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 30.0 minutes 2026-08-14 11:05:01.684802: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 30.0 minutes 2026-08-14 11:05:01.689996: Loaded 95 datapoints of futurerate analysis 2026-08-14 11:05:01.775917: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68'] 2026-08-14 11:05:01.834704: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 11:05:01.840136: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 11:05:01.840510: Import rates: min 14.97p, max 53.39p, average 27.31p 2026-08-14 11:05:01.887343: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 11:05:01.887475: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 11:05:01.888825: High export rate found rates in range 99p to -99p 2026-08-14 11:05:01.987827: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 11:05:01.987961: Car 0 charging is not planned as it is not plugged in 2026-08-14 11:05:02.000861: Battery level now 1.92kWh, -1hr ago 1.61kWh, at midnight 2.43kWh, battery value change in the last hour 4.01p, change today -6.58p, rate_forward 12.86p 2026-08-14 11:05:02.001287: Last hour: net energy 1.0kWh, import 1.0kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 23.22p, import 23.22p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 11:05:02.053581: Today's energy total net 11.4kWh, import 11.4kWh, export 0.0kWh, cost 334.71p, import 284.73p, export 0.0p, carbon 0.0kg 2026-08-14 11:05:02.053735: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 11:05:02.138089: Using weighted-bucket historical load forecast over 14 days 2026-08-14 11:05:02.164361: Today's load divergence 124.45%, in-day adjustment 135.92%, damping 0.95x, yesterday 146.81% today 123.23% blend 53.82% 2026-08-14 11:05:02.164457: Today's predicted so far 6.21kWh with 0.0kWh car/iBoost excluded, 3.99kWh import ignored, and 6.21kWh forecast extra. 2026-08-14 11:05:02.164490: Today's actual load so far 10.89kWh with 0.0kWh car/iBoost excluded, and 3.99kWh import ignored. 2026-08-14 11:05:02.201571: Inverter 0: Type SK Sunsynk 2026-08-14 11:05:02.201657: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 11:05:02.201852: Reserve min: 7%, battery_min: 7% 2026-08-14 11:05:02.201931: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 11:05:02.202181: Inverter 0 SoC: 1.83kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 1451W, current battery voltage 51.2V, grid power -55W, load power 1518W, PV Power 0W 2026-08-14 11:05:02.202354: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:05:02.202580: Inverter 0 scheduled charge enable is False 2026-08-14 11:05:02.202617: Inverter 0 charge windows currently [] 2026-08-14 11:05:02.202645: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 11:05:02.202753: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:05:02.202790: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:05:02.202826: Inverter 0 scheduled discharge enable is False 2026-08-14 11:05:02.202947: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:05:02.202985: Inverter 0 discharge windows currently [] 2026-08-14 11:05:02.203008: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:05:02.203026: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:05:02.203043: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:05:02.264846: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 11:05:02.264974: Plan was last updated on 2026-08-14 10:55:00+01:00 and is now 10.0 minutes old 2026-08-14 11:05:02.265247: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 11:05:02.265313: Best export window [ ] 2026-08-14 11:05:02.266057: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 11:05:02.269223: Load divergence over 8.0 hours mean 400.48W, min 230.4W, max 1260.0W, std dev 182.56W, divergence 22.79% 2026-08-14 11:05:02.288434: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 11:05:02.288538: LoadML is_calculating False 2026-08-14 11:05:02.288596: Creating pool of 12 processes to match your CPU count 2026-08-14 11:05:02.400893: predict base end_record 08-15 13:10:00, final soc 1.12kWh, metric 914.83p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 30.38kWh, PV 0.0kWh 2026-08-14 11:05:02.537014: Battery has 0.5 hours left - now at 1.83kWh 2026-08-14 11:05:02.583365: predict base10 end_record 08-15 13:10:00, final soc 1.12kWh, metric 940.76p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 31.31kWh, PV 0.0kWh 2026-08-14 11:05:02.675336: predict best10 end_record 08-15 13:10:00, final soc 1.77kWh, metric 859.01p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 31.31kWh, PV 0.0kWh 2026-08-14 11:05:02.757924: predict best end_record 08-15 13:10:00, final soc 1.9kWh, metric 838.4p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 30.38kWh, PV 0.0kWh 2026-08-14 11:05:02.758015: Saving plan best values to HA entities 2026-08-14 11:05:02.934341: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 11:05:02.940914: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 11:05:02.948814: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.58kWh, house 5.79kWh, export 0.0kWh, metric 838.4p, metric10 859.01p 2026-08-14 11:05:03.036171: Marginal costs baseline metric (no standing charge): 788.4117 2026-08-14 11:05:03.325993: Marginal energy costs matrix computed: min=21.8 max=36.15 2026-08-14 11:05:03.414306: Rate array import [{'start': 665, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2230, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 665, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 11:05:03.414975: - Your estimated bill for today is £6.89 and tomorrow is £5.89 2026-08-14 11:05:03.415020: - Import rates are cheap (21.7p - 22.6p) for the next 4 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 11:05:03.415042: - The battery is currently at 11% and is in eco mode for the next 1 hours. 2026-08-14 11:05:03.415060: - For the next 48 hours there will be no solar generation. 2026-08-14 11:05:03.415078: - You will run out of battery in 30 minutes. 2026-08-14 11:05:03.415101: - Your next charge slot will be in 1 hours where import rates will be cheap (21.9p). 2026-08-14 11:05:03.415136: 2026-08-14 11:05:03.471099: Plan calculation took 1.21 seconds 2026-08-14 11:05:03.474609: No high rate period found 2026-08-14 11:05:03.531432: Import threshold used for optimisation was 25.52p 2026-08-14 11:05:03.585009: Low import rate windows [0: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 1: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 2: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 3: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 4: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 5: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 6: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 7: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 8: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 9: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 10: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 11: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 12: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 13: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 14: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 15: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 16: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 17: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 18: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 19: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 20: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 21: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 22: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 23: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 24: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 25: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 26: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 27: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 28: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 29: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 30: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 31: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 32: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 33: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 34: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 35: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 36: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 37: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 38: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 39: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 40: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 41: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 42: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 43: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 44: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 45: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 46: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 47: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 48: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 49: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 50: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 51: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 52: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 53: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 54: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 55: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 56: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 57: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 58: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 59: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 60: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 61: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 62: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 63: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 64: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 65: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 66: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 67: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 68: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 69: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 70: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 71: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 72: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 73: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 74: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 75: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 76: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 77: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 78: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 79: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 80: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 81: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 82: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 83: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 84: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 85: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 86: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 87: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 88: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 89: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 90: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 91: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 92: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 93: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 94: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 95: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81] 2026-08-14 11:05:03.593115: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 11:05:03.593264: Inverter 0 disabled charge window while waiting for schedule (now 08-14 11:05:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 11:05:03.593371: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:05:03.593635: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:05:03.593719: No export window planned 2026-08-14 11:05:03.593827: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 11:05:03.593863: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:05:03.593994: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:05:03.594170: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 11:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 11:05:03.594236: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 11:05:03.594288: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 11:05:03.594405: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:05:03.594444: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:05:03.594472: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:05:03.594497: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:05:03.594522: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:05:03.594575: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:05:03.594603: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:05:03.594669: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:05:03.594698: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:05:03.594722: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:05:03.594746: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:05:03.594770: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:05:03.594800: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:05:03.594824: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:05:03.594851: Inverter 0 count register writes 0 2026-08-14 11:05:03.612143: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 11:05:03.612359: Recompute is saving previous plan... 2026-08-14 11:05:03.615645: Best charge window [ 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 0% ] 2026-08-14 11:05:03.615744: Best export window [ ] 2026-08-14 11:05:03.616640: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 11:05:03.619711: Load divergence over 8.0 hours mean 400.48W, min 230.4W, max 1260.0W, std dev 182.56W, divergence 22.79% 2026-08-14 11:05:03.638507: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 11:05:03.638748: LoadML is_calculating False 2026-08-14 11:05:03.638859: Creating pool of 12 processes to match your CPU count 2026-08-14 11:05:03.723807: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 11:05:03.726700: Optimise levels pass started at 2026-08-14 11:05:03 2026-08-14 11:05:03.726783: Optimise all windows, total charge 95 export 1 2026-08-14 11:05:04.778399: >> Region optimisation pass width 960 gives best_metric 998.36p, best_cost 1005.54p, best_cycle 47.27kWh, best_import 35.24kWh 2026-08-14 11:05:05.226569: >> Region optimisation pass width 480 gives best_metric 998.36p, best_cost 1005.54p, best_cycle 47.27kWh, best_import 35.24kWh 2026-08-14 11:05:05.773850: >> Region optimisation pass width 240 gives best_metric 998.36p, best_cost 1005.54p, best_cycle 47.27kWh, best_import 35.24kWh 2026-08-14 11:05:06.995688: >> Region optimisation pass width 120 gives best_metric 998.36p, best_cost 1005.54p, best_cycle 47.27kWh, best_import 35.24kWh 2026-08-14 11:05:06.996041: Calculated end_record as 08-15 13:00:00 based on best_price 22.02p, next_charge_start 08-14 13:00:00, max_windows 51 2026-08-14 11:05:06.996114: Optimise levels pass ended at 2026-08-14 11:05:06, duration 3.3 seconds tried 291 combinations 2026-08-14 11:05:06.996185: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 998.36p, best_keep 0kWh, best_cycle 47.27kWh, best_carbon 0kg, best_import 35.24kWh 2026-08-14 11:05:07.018606: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 11:05:11.829067: Tweak plan optimisation started metric 762.5p, cost 773.53p 2026-08-14 11:05:12.095214: Tweak optimisation finished metric 762.5p, cost 773.53p, metric_keep 0kWh, cycle 23.46kWh, carbon 0kg, import 20.41kWh, changed 8 window(s) 2026-08-14 11:05:12.116478: Swap charge optimisation started metric 762.5p, cost 773.53p, min_improvement_swap 0.1p 2026-08-14 11:05:14.758342: Swap charge optimisation finished metric 762.5p, cost 773.53p 2026-08-14 11:05:14.832545: Pruned 1 dead plan slot(s) in 7 trial(s), nominal metric 759.13p -> 759.13p, plan now metric 762.51p, cost 773.53p, cycle 23.46kWh, import 20.41kWh 2026-08-14 11:05:14.842121: Raw charge windows [ 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100% ] reserve 1.12 2026-08-14 11:05:14.842632: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 11:30:00 @ 18.91p 100% ] reserve 1.12 2026-08-14 11:05:14.842841: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 11:30:00 @ 18.91p 100% ] reserve 1.12 2026-08-14 11:05:14.843010: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 11:30:00 @ 18.91p 100% ] reserve 1.12 2026-08-14 11:05:14.873342: Previous plan best metric is 762.52 (cost 773.52) and new plan best metric is 762.5 (cost 773.53) 2026-08-14 11:05:14.873539: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 11:05:14.873669: Plan valid is now true after recompute was False 2026-08-14 11:05:14.897386: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 912.93p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 30.25kWh, PV 0.0kWh 2026-08-14 11:05:14.990236: Battery has 0.5 hours left - now at 1.83kWh 2026-08-14 11:05:15.035092: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 938.77p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 31.18kWh, PV 0.0kWh 2026-08-14 11:05:15.117860: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 846.2p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 31.18kWh, PV 0.0kWh 2026-08-14 11:05:15.191121: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 823.5p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 30.25kWh, PV 0.0kWh 2026-08-14 11:05:15.191209: Saving plan best values to HA entities 2026-08-14 11:05:15.325158: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 11:05:15.329808: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 11:05:15.335213: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 14.63kWh, house 5.79kWh, export 0.0kWh, metric 823.5p, metric10 846.2p 2026-08-14 11:05:15.414960: Marginal costs baseline metric (no standing charge): 773.5212 2026-08-14 11:05:15.664209: Marginal energy costs matrix computed: min=21.8 max=36.15 2026-08-14 11:05:15.729590: Rate array import [{'start': 665, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 665, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 11:05:15.730224: - Your estimated bill for today is £6.89 and tomorrow is £5.89 2026-08-14 11:05:15.730270: - Import rates are cheap (21.7p - 22.6p) for the next 4 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 11:05:15.730307: - The battery is currently at 11% and is in eco mode for the next 1 hours. 2026-08-14 11:05:15.730328: - For the next 48 hours there will be no solar generation. 2026-08-14 11:05:15.730345: - You will run out of battery in 30 minutes. 2026-08-14 11:05:15.730365: - Your next charge slot will be in 1 hours where import rates will be cheap (21.9p). 2026-08-14 11:05:15.730383: 2026-08-14 11:05:15.784667: Plan calculation took 12.17 seconds 2026-08-14 11:05:15.785058: Inverter 0: Type SK Sunsynk 2026-08-14 11:05:15.785107: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 11:05:15.785397: Reserve min: 7%, battery_min: 7% 2026-08-14 11:05:15.785487: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 11:05:15.785746: Inverter 0 SoC: 1.73kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 1478W, current battery voltage 51.2V, grid power -54W, load power 1576W, PV Power 0W 2026-08-14 11:05:15.785947: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:05:15.786033: Inverter 0 scheduled charge enable is False 2026-08-14 11:05:15.786058: Inverter 0 charge windows currently [] 2026-08-14 11:05:15.786079: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 11:05:15.786175: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:05:15.786227: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:05:15.786272: Inverter 0 scheduled discharge enable is False 2026-08-14 11:05:15.786469: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:05:15.786525: Inverter 0 discharge windows currently [] 2026-08-14 11:05:15.786573: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:05:15.786602: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:05:15.786618: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:05:15.838765: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 11:05:15.838905: Inverter 0 disabled charge window while waiting for schedule (now 08-14 11:05:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 11:05:15.838965: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:05:15.839114: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:05:15.839182: No export window planned 2026-08-14 11:05:15.839268: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 11:05:15.839312: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:05:15.839426: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:05:15.839564: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 11:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 11:05:15.839608: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 11:05:15.839647: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 11:05:15.839722: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:05:15.839754: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:05:15.839776: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:05:15.839797: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:05:15.839823: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:05:15.839851: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:05:15.839872: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:05:15.839926: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:05:15.839955: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:05:15.839976: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:05:15.839996: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:05:15.840015: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:05:15.840035: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:05:15.840054: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:05:15.840070: Inverter 0 count register writes 0 2026-08-14 11:05:15.861630: Total inverter register writes now 806 2026-08-14 11:05:15.895258: Info: Completed run status Demand 2026-08-14 11:05:15.901363: Info: record_status Demand 2026-08-14 11:05:15.908538: Saved current settings to /config/predbat_config.json 2026-08-14 11:05:15.908786: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 11:05:59.015747: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:05:59.016029: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:05:59.016092: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:05:59.016294: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:05:59.016383: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:05:59.016412: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:05:59.016455: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:07:59.242892: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:07:59.243208: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:07:59.243274: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:07:59.243498: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:07:59.243542: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:07:59.243565: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:07:59.243583: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:09:59.473461: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:09:59.473697: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:09:59.473739: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:09:59.473897: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:09:59.473936: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:09:59.473957: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:09:59.473975: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:10:00.544076: --------------- PredBat - update at 2026-08-14 11:10:00+01:00 with clock skew 0 minutes, minutes now 670 2026-08-14 11:10:00.544930: Saved current settings to /config/predbat_config.json 2026-08-14 11:10:00.545080: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 95.0 minutes 2026-08-14 11:10:00.545189: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 11:10:00.545280: Autoupdate: Currently up to date 2026-08-14 11:10:00.563647: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 11:10:00.563765: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 11:10:00.563935: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 11:10:00.564448: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 11:10:00.564569: Predbat mode is set to Control charge & discharge 2026-08-14 11:10:00.762554: Found 21602 load_today datapoints going back 28 days 2026-08-14 11:10:00.762922: Using load_power data to fill gaps in load_today data 2026-08-14 11:10:01.564399: Processing 721 30-minute periods for power integration 2026-08-14 11:10:01.737550: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 11:10:01.737659: Car charging hold False, threshold 6.0kWh 2026-08-14 11:10:01.737696: Current data so far today: load 10.9kWh, import 11.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 11:10:01.751462: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 11:10:01.752648: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 11:10:01.752758: Standing charge is set to 49.98p 2026-08-14 11:10:01.813582: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 11:10:01.813706: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 11:10:01.813928: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 35.0 minutes 2026-08-14 11:10:01.814314: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 35.0 minutes 2026-08-14 11:10:01.820784: Loaded 95 datapoints of futurerate analysis 2026-08-14 11:10:01.918963: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68'] 2026-08-14 11:10:01.976018: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 11:10:01.981429: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 11:10:01.981796: Import rates: min 14.97p, max 53.39p, average 27.3p 2026-08-14 11:10:02.025107: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 11:10:02.025221: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 11:10:02.026459: High export rate found rates in range 99p to -99p 2026-08-14 11:10:02.115185: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 11:10:02.115319: Car 0 charging is not planned as it is not plugged in 2026-08-14 11:10:02.129938: Battery level now 1.83kWh, -1hr ago 1.94kWh, at midnight 2.43kWh, battery value change in the last hour -1.34p, change today -7.72p, rate_forward 12.86p 2026-08-14 11:10:02.130380: Last hour: net energy 0.93kWh, import 0.93kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 21.4p, import 21.4p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 11:10:02.186405: Today's energy total net 11.4kWh, import 11.4kWh, export 0.0kWh, cost 334.71p, import 284.73p, export 0.0p, carbon 0.0kg 2026-08-14 11:10:02.186557: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 11:10:02.271370: Using weighted-bucket historical load forecast over 14 days 2026-08-14 11:10:02.303298: Today's load divergence 124.57%, in-day adjustment 135.89%, damping 0.95x, yesterday 146.81% today 123.35% blend 53.47% 2026-08-14 11:10:02.303418: Today's predicted so far 6.23kWh with 0.0kWh car/iBoost excluded, 3.97kWh import ignored, and 6.23kWh forecast extra. 2026-08-14 11:10:02.303454: Today's actual load so far 10.94kWh with 0.0kWh car/iBoost excluded, and 3.97kWh import ignored. 2026-08-14 11:10:02.337708: Inverter 0: Type SK Sunsynk 2026-08-14 11:10:02.337797: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 11:10:02.337976: Reserve min: 7%, battery_min: 7% 2026-08-14 11:10:02.338048: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 11:10:02.338377: Inverter 0 SoC: 1.6kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1515W, current battery voltage 51.2V, grid power -54W, load power 1579W, PV Power 0W 2026-08-14 11:10:02.338544: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:10:02.338634: Inverter 0 scheduled charge enable is False 2026-08-14 11:10:02.338684: Inverter 0 charge windows currently [] 2026-08-14 11:10:02.338711: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 11:10:02.338841: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:10:02.338879: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:10:02.338917: Inverter 0 scheduled discharge enable is False 2026-08-14 11:10:02.339099: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:10:02.339157: Inverter 0 discharge windows currently [] 2026-08-14 11:10:02.339201: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:10:02.339231: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:10:02.339249: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:10:02.401635: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 11:10:02.401742: Plan was last updated on 2026-08-14 11:05:00+01:00 and is now 5.0 minutes old 2026-08-14 11:10:02.401983: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 11:10:02.402026: Best export window [ ] 2026-08-14 11:10:02.402915: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 11:10:02.406225: Load divergence over 8.0 hours mean 401.76W, min 240.6W, max 1225.8W, std dev 172.69W, divergence 21.49% 2026-08-14 11:10:02.425321: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 11:10:02.425441: LoadML is_calculating False 2026-08-14 11:10:02.425502: Creating pool of 12 processes to match your CPU count 2026-08-14 11:10:02.542752: predict base end_record 08-15 13:05:00, final soc 1.12kWh, metric 917.06p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:30:00, load 30.34kWh, PV 0.0kWh 2026-08-14 11:10:02.668908: Battery has 0.33 hours left - now at 1.6kWh 2026-08-14 11:10:02.708190: predict base10 end_record 08-15 13:05:00, final soc 1.12kWh, metric 942.86p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:30:00, load 31.26kWh, PV 0.0kWh 2026-08-14 11:10:02.782553: predict best10 end_record 08-15 13:05:00, final soc 1.44kWh, metric 855.67p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:30:00, load 31.26kWh, PV 0.0kWh 2026-08-14 11:10:02.879985: predict best end_record 08-15 13:05:00, final soc 1.51kWh, metric 834.07p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:30:00, load 30.34kWh, PV 0.0kWh 2026-08-14 11:10:02.880067: Saving plan best values to HA entities 2026-08-14 11:10:03.038527: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 11:10:03.045226: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 11:10:03.051032: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.11kWh, house 5.92kWh, export 0.0kWh, metric 834.07p, metric10 855.67p 2026-08-14 11:10:03.127054: Marginal costs baseline metric (no standing charge): 784.0832 2026-08-14 11:10:03.350254: Marginal energy costs matrix computed: min=21.78 max=36.51 2026-08-14 11:10:03.418607: Rate array import [{'start': 670, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2225, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 670, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 11:10:03.419245: - Your estimated bill for today is £6.92 and tomorrow is £5.90 2026-08-14 11:10:03.419288: - Import rates are cheap (21.7p - 22.6p) for the next 4 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 11:10:03.419312: - The battery is currently at 10% and is in eco mode for the next 1 and three quarters hours. 2026-08-14 11:10:03.419330: - For the next 48 hours there will be no solar generation. 2026-08-14 11:10:03.419378: - You will run out of battery in 20 minutes. 2026-08-14 11:10:03.419397: - Your next charge slot will be in 1 and three quarters hours where import rates will be cheap (21.9p). 2026-08-14 11:10:03.419423: 2026-08-14 11:10:03.465371: Plan calculation took 1.06 seconds 2026-08-14 11:10:03.468254: No high rate period found 2026-08-14 11:10:03.514277: Import threshold used for optimisation was 25.52p 2026-08-14 11:10:03.566875: Low import rate windows [0: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 1: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 2: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 3: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 4: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 5: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 6: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 7: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 8: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 9: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 10: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 11: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 12: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 13: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 14: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 15: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 16: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 17: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 18: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 19: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 20: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 21: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 22: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 23: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 24: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 25: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 26: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 27: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 28: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 29: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 30: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 31: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 32: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 33: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 34: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 35: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 36: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 37: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 38: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 39: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 40: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 41: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 42: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 43: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 44: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 45: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 46: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 47: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 48: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 49: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 50: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 51: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 52: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 53: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 54: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 55: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 56: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 57: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 58: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 59: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 60: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 61: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 62: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 63: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 64: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 65: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 66: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 67: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 68: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 69: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 70: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 71: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 72: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 73: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 74: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 75: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 76: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 77: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 78: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 79: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 80: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 81: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 82: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 83: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 84: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 85: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 86: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 87: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 88: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 89: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 90: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 91: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 92: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 93: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 94: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 95: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81] 2026-08-14 11:10:03.575273: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 11:10:03.575440: Inverter 0 disabled charge window while waiting for schedule (now 08-14 11:10:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 11:10:03.575547: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:10:03.575803: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:10:03.575883: No export window planned 2026-08-14 11:10:03.575983: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 11:10:03.576018: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:10:03.576150: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:10:03.576327: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 11:10:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 11:10:03.576496: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 11:10:03.576611: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 11:10:03.576759: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:10:03.576819: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:10:03.576882: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:10:03.576942: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:10:03.577043: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:10:03.577106: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:10:03.577186: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:10:03.577306: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:10:03.577381: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:10:03.577442: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:10:03.577503: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:10:03.577563: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:10:03.577624: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:10:03.577684: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:10:03.577733: Inverter 0 count register writes 0 2026-08-14 11:10:03.592857: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 11:10:03.597859: Total inverter register writes now 806 2026-08-14 11:10:03.627959: Info: Completed run status Demand 2026-08-14 11:10:03.634328: Info: record_status Demand 2026-08-14 11:10:03.641214: Saved current settings to /config/predbat_config.json 2026-08-14 11:10:03.641525: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 11:10:43.748330: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:10:43.748590: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:10:43.748626: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:10:43.748799: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:10:43.748851: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:10:43.748895: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:10:43.748916: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:12:43.961854: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:12:43.962343: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:12:43.962407: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:12:43.962549: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:12:43.962588: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:12:43.962609: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:12:43.962627: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:14:44.186649: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:14:44.186968: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:14:44.187029: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:14:44.187240: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:14:44.187297: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:14:44.187334: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:14:44.187374: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:15:00.302012: --------------- PredBat - update at 2026-08-14 11:15:00+01:00 with clock skew 0 minutes, minutes now 675 2026-08-14 11:15:00.303074: Saved current settings to /config/predbat_config.json 2026-08-14 11:15:00.303240: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 100.0 minutes 2026-08-14 11:15:00.303370: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 11:15:00.303522: Autoupdate: Currently up to date 2026-08-14 11:15:00.323110: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 11:15:00.323277: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 11:15:00.323511: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 11:15:00.324061: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 11:15:00.324182: Predbat mode is set to Control charge & discharge 2026-08-14 11:15:00.534577: Found 21602 load_today datapoints going back 28 days 2026-08-14 11:15:00.534703: Using load_power data to fill gaps in load_today data 2026-08-14 11:15:01.268290: Processing 721 30-minute periods for power integration 2026-08-14 11:15:01.436699: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 11:15:01.436822: Car charging hold False, threshold 6.0kWh 2026-08-14 11:15:01.436878: Current data so far today: load 11.0kWh, import 11.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 11:15:01.449586: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 11:15:01.450369: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 11:15:01.450458: Standing charge is set to 49.98p 2026-08-14 11:15:01.489090: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 11:15:01.489223: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 11:15:01.489502: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 40.0 minutes 2026-08-14 11:15:01.489951: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 40.0 minutes 2026-08-14 11:15:01.497424: Loaded 95 datapoints of futurerate analysis 2026-08-14 11:15:01.603100: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68'] 2026-08-14 11:15:01.649769: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 11:15:01.654302: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 11:15:01.654654: Import rates: min 14.97p, max 53.39p, average 27.3p 2026-08-14 11:15:01.690556: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 11:15:01.690676: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 11:15:01.691798: High export rate found rates in range 99p to -99p 2026-08-14 11:15:01.767353: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 11:15:01.767483: Car 0 charging is not planned as it is not plugged in 2026-08-14 11:15:01.779834: Battery level now 1.6kWh, -1hr ago 1.88kWh, at midnight 2.43kWh, battery value change in the last hour -3.6p, change today -10.7p, rate_forward 12.86p 2026-08-14 11:15:01.780196: Last hour: net energy 0.85kWh, import 0.85kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 19.59p, import 19.59p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 11:15:01.838738: Today's energy total net 11.4kWh, import 11.4kWh, export 0.0kWh, cost 334.71p, import 284.73p, export 0.0p, carbon 0.0kg 2026-08-14 11:15:01.838907: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 11:15:01.923587: Using weighted-bucket historical load forecast over 14 days 2026-08-14 11:15:01.956082: Today's load divergence 124.67%, in-day adjustment 135.86%, damping 0.95x, yesterday 146.81% today 123.44% blend 53.12% 2026-08-14 11:15:01.956177: Today's predicted so far 6.25kWh with 0.0kWh car/iBoost excluded, 3.96kWh import ignored, and 6.25kWh forecast extra. 2026-08-14 11:15:01.956204: Today's actual load so far 11.0kWh with 0.0kWh car/iBoost excluded, and 3.96kWh import ignored. 2026-08-14 11:15:01.990860: Inverter 0: Type SK Sunsynk 2026-08-14 11:15:01.990936: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 11:15:01.991103: Reserve min: 7%, battery_min: 7% 2026-08-14 11:15:01.991168: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 11:15:01.991395: Inverter 0 SoC: 1.6kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1669W, current battery voltage 51.2V, grid power -54W, load power 1737W, PV Power 0W 2026-08-14 11:15:01.991573: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:15:01.991674: Inverter 0 scheduled charge enable is False 2026-08-14 11:15:01.991708: Inverter 0 charge windows currently [] 2026-08-14 11:15:01.991748: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 11:15:01.991886: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:15:01.991923: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:15:01.991956: Inverter 0 scheduled discharge enable is False 2026-08-14 11:15:01.992065: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:15:01.992096: Inverter 0 discharge windows currently [] 2026-08-14 11:15:01.992114: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:15:01.992130: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:15:01.992145: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:15:02.043425: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 11:15:02.043523: Plan was last updated on 2026-08-14 11:05:00+01:00 and is now 10.0 minutes old 2026-08-14 11:15:02.043783: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 11:15:02.043845: Best export window [ ] 2026-08-14 11:15:02.044550: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 11:15:02.047326: Load divergence over 8.0 hours mean 403.32W, min 220.2W, max 1101.0W, std dev 160.33W, divergence 19.88% 2026-08-14 11:15:02.063901: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 11:15:02.064004: LoadML is_calculating False 2026-08-14 11:15:02.064059: Creating pool of 12 processes to match your CPU count 2026-08-14 11:15:02.162831: predict base end_record 08-15 13:10:00, final soc 1.12kWh, metric 916.46p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 30.42kWh, PV 0.0kWh 2026-08-14 11:15:02.271497: Battery has 0.33 hours left - now at 1.6kWh 2026-08-14 11:15:02.311059: predict base10 end_record 08-15 13:10:00, final soc 1.12kWh, metric 942.26p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:30:00, load 31.34kWh, PV 0.0kWh 2026-08-14 11:15:02.389179: predict best10 end_record 08-15 13:10:00, final soc 1.77kWh, metric 860.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:30:00, load 31.34kWh, PV 0.0kWh 2026-08-14 11:15:02.474255: predict best end_record 08-15 13:10:00, final soc 1.9kWh, metric 839.81p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 30.42kWh, PV 0.0kWh 2026-08-14 11:15:02.474335: Saving plan best values to HA entities 2026-08-14 11:15:02.655584: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 11:15:02.662323: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 11:15:02.668638: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.62kWh, house 5.81kWh, export 0.0kWh, metric 839.81p, metric10 860.42p 2026-08-14 11:15:02.745746: Marginal costs baseline metric (no standing charge): 789.8232 2026-08-14 11:15:03.030822: Marginal energy costs matrix computed: min=21.77 max=36.88 2026-08-14 11:15:03.111297: Rate array import [{'start': 675, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2230, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 675, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 11:15:03.111982: - Your estimated bill for today is £6.89 and tomorrow is £5.92 2026-08-14 11:15:03.112028: - Import rates are cheap (21.7p - 22.6p) for the next 4 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 11:15:03.112051: - The battery is currently at 10% and is in eco mode for the next 1 and three quarters hours. 2026-08-14 11:15:03.112070: - For the next 48 hours there will be no solar generation. 2026-08-14 11:15:03.112087: - You will run out of battery in 20 minutes. 2026-08-14 11:15:03.112123: - Your next charge slot will be in 1 and three quarters hours where import rates will be cheap (21.9p). 2026-08-14 11:15:03.112169: 2026-08-14 11:15:03.158994: Plan calculation took 1.12 seconds 2026-08-14 11:15:03.162618: No high rate period found 2026-08-14 11:15:03.218846: Import threshold used for optimisation was 25.52p 2026-08-14 11:15:03.280801: Low import rate windows [0: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 1: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 2: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 3: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 4: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 5: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 6: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 7: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 8: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 9: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 10: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 11: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 12: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 13: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 14: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 15: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 16: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 17: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 18: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 19: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 20: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 21: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 22: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 23: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 24: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 25: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 26: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 27: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 28: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 29: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 30: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 31: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 32: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 33: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 34: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 35: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 36: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 37: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 38: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 39: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 40: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 41: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 42: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 43: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 44: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 45: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 46: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 47: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 48: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 49: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 50: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 51: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 52: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 53: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 54: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 55: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 56: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 57: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 58: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 59: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 60: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 61: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 62: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 63: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 64: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 65: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 66: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 67: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 68: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 69: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 70: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 71: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 72: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 73: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 74: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 75: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 76: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 77: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 78: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 79: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 80: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 81: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 82: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 83: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 84: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 85: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 86: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 87: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 88: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 89: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 90: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 91: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 92: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 93: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 94: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 95: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81] 2026-08-14 11:15:03.289055: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 11:15:03.289202: Inverter 0 disabled charge window while waiting for schedule (now 08-14 11:15:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 11:15:03.289333: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:15:03.289703: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:15:03.289838: No export window planned 2026-08-14 11:15:03.289965: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 11:15:03.290004: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:15:03.290184: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:15:03.290403: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 11:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 11:15:03.290510: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 11:15:03.290598: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 11:15:03.290693: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:15:03.290733: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:15:03.290760: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:15:03.290790: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:15:03.290834: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:15:03.290901: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:15:03.290964: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:15:03.291103: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:15:03.291179: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:15:03.291238: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:15:03.291302: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:15:03.291347: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:15:03.291373: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:15:03.291422: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:15:03.291445: Inverter 0 count register writes 0 2026-08-14 11:15:03.310199: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 11:15:03.310395: Recompute is saving previous plan... 2026-08-14 11:15:03.313727: Best charge window [ 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 0% ] 2026-08-14 11:15:03.313812: Best export window [ ] 2026-08-14 11:15:03.314668: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 11:15:03.317675: Load divergence over 8.0 hours mean 403.32W, min 220.2W, max 1101.0W, std dev 160.33W, divergence 19.88% 2026-08-14 11:15:03.335533: Calculating data from yesterday for savings calculation 2026-08-14 11:15:03.347810: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 11:15:03.394353: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 11:15:03.408461: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 869.96p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 11:15:03.427595: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 11:15:03.456814: Yesterday: Predbat disabled was £8.56 (adjusted £8.42) vs £6.21 (adjusted £5.88), saving £2.35 (adjusted £2.53) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 14.4kWh 2026-08-14 11:15:03.528353: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 901.25p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 11:15:03.528525: Yesterday: No Battery/PV system cost predicted was £9.01 (adjusted £9.01) vs £6.21 (adjusted £5.88), saving £2.8 (adjusted £3.13) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 11:15:03.538405: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 11:15:03.538525: LoadML is_calculating False 2026-08-14 11:15:03.538598: Creating pool of 12 processes to match your CPU count 2026-08-14 11:15:03.615880: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 11:15:03.618250: Optimise levels pass started at 2026-08-14 11:15:03 2026-08-14 11:15:03.618313: Optimise all windows, total charge 95 export 1 2026-08-14 11:15:04.555853: >> Region optimisation pass width 960 gives best_metric 1001.96p, best_cost 1009.15p, best_cycle 47.05kWh, best_import 35.42kWh 2026-08-14 11:15:04.956718: >> Region optimisation pass width 480 gives best_metric 1001.96p, best_cost 1009.15p, best_cycle 47.05kWh, best_import 35.42kWh 2026-08-14 11:15:05.403504: >> Region optimisation pass width 240 gives best_metric 1001.96p, best_cost 1009.15p, best_cycle 47.05kWh, best_import 35.42kWh 2026-08-14 11:15:06.446117: >> Region optimisation pass width 120 gives best_metric 1001.96p, best_cost 1009.15p, best_cycle 47.05kWh, best_import 35.42kWh 2026-08-14 11:15:06.446497: Calculated end_record as 08-15 13:00:00 based on best_price 22.02p, next_charge_start 08-14 13:00:00, max_windows 51 2026-08-14 11:15:06.446627: Optimise levels pass ended at 2026-08-14 11:15:06, duration 2.8 seconds tried 291 combinations 2026-08-14 11:15:06.446772: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1001.96p, best_keep 0kWh, best_cycle 47.05kWh, best_carbon 0kg, best_import 35.42kWh 2026-08-14 11:15:06.476038: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 11:15:11.139541: Tweak plan optimisation started metric 763.92p, cost 774.97p 2026-08-14 11:15:11.396349: Tweak optimisation finished metric 763.92p, cost 774.97p, metric_keep 0kWh, cycle 23.23kWh, carbon 0kg, import 20.47kWh, changed 8 window(s) 2026-08-14 11:15:11.415910: Swap charge optimisation started metric 763.92p, cost 774.97p, min_improvement_swap 0.1p 2026-08-14 11:15:13.830953: Swap charge optimisation finished metric 763.92p, cost 774.97p 2026-08-14 11:15:13.904152: Pruned 1 dead plan slot(s) in 7 trial(s), nominal metric 760.57p -> 760.57p, plan now metric 763.93p, cost 774.97p, cycle 23.23kWh, import 20.47kWh 2026-08-14 11:15:13.914548: Raw charge windows [ 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100% ] reserve 1.12 2026-08-14 11:15:13.915060: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 11:30:00 @ 18.91p 100% ] reserve 1.12 2026-08-14 11:15:13.915240: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 11:30:00 @ 18.91p 100% ] reserve 1.12 2026-08-14 11:15:13.915393: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 11:30:00 @ 18.91p 100% ] reserve 1.12 2026-08-14 11:15:13.945505: Previous plan best metric is 763.96 (cost 774.96) and new plan best metric is 763.92 (cost 774.97) 2026-08-14 11:15:13.945723: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 11:15:13.945877: Plan valid is now true after recompute was False 2026-08-14 11:15:13.969282: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 914.58p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 30.3kWh, PV 0.0kWh 2026-08-14 11:15:14.075217: Battery has 0.33 hours left - now at 1.6kWh 2026-08-14 11:15:14.120829: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 940.3p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:30:00, load 31.22kWh, PV 0.0kWh 2026-08-14 11:15:14.202051: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 847.63p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:30:00, load 31.22kWh, PV 0.0kWh 2026-08-14 11:15:14.293223: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 824.94p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:35:00, load 30.3kWh, PV 0.0kWh 2026-08-14 11:15:14.293321: Saving plan best values to HA entities 2026-08-14 11:15:14.452317: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 11:15:14.458051: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 11:15:14.463631: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 14.67kWh, house 5.81kWh, export 0.0kWh, metric 824.94p, metric10 847.63p 2026-08-14 11:15:14.539636: Marginal costs baseline metric (no standing charge): 774.9576 2026-08-14 11:15:14.775584: Marginal energy costs matrix computed: min=21.77 max=36.88 2026-08-14 11:15:14.844062: Rate array import [{'start': 675, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 675, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 11:15:14.844779: - Your estimated bill for today is £6.89 and tomorrow is £5.92 2026-08-14 11:15:14.844832: - Import rates are cheap (21.7p - 22.6p) for the next 4 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 11:15:14.844856: - The battery is currently at 10% and is in eco mode for the next 1 and three quarters hours. 2026-08-14 11:15:14.844875: - For the next 48 hours there will be no solar generation. 2026-08-14 11:15:14.844898: - You will run out of battery in 20 minutes. 2026-08-14 11:15:14.844934: - Your next charge slot will be in 1 and three quarters hours where import rates will be cheap (21.9p). 2026-08-14 11:15:14.845036: 2026-08-14 11:15:14.892326: Plan calculation took 11.58 seconds 2026-08-14 11:15:14.892719: Inverter 0: Type SK Sunsynk 2026-08-14 11:15:14.892795: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 11:15:14.893156: Reserve min: 7%, battery_min: 7% 2026-08-14 11:15:14.893253: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 11:15:14.893595: Inverter 0 SoC: 1.45kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power 1659W, current battery voltage 51.2V, grid power -54W, load power 1722W, PV Power 0W 2026-08-14 11:15:14.893888: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:15:14.894006: Inverter 0 scheduled charge enable is False 2026-08-14 11:15:14.894044: Inverter 0 charge windows currently [] 2026-08-14 11:15:14.894070: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 11:15:14.894236: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:15:14.894301: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:15:14.894362: Inverter 0 scheduled discharge enable is False 2026-08-14 11:15:14.894523: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:15:14.894564: Inverter 0 discharge windows currently [] 2026-08-14 11:15:14.894594: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:15:14.894619: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:15:14.894637: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:15:14.947930: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-14 11:15:14.948117: Inverter 0 disabled charge window while waiting for schedule (now 08-14 11:15:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 11:15:14.948210: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:15:14.948527: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:15:14.948669: No export window planned 2026-08-14 11:15:14.948852: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 11:15:14.948934: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:15:14.949230: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:15:14.949412: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 11:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 11:15:14.949481: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 11:15:14.949538: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 11:15:14.949619: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:15:14.949648: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:15:14.949670: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:15:14.949690: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:15:14.949711: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:15:14.949731: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:15:14.949762: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:15:14.949846: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:15:14.949883: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:15:14.949906: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:15:14.949929: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:15:14.949948: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:15:14.949967: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:15:14.949987: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:15:14.950003: Inverter 0 count register writes 0 2026-08-14 11:15:14.970176: Total inverter register writes now 806 2026-08-14 11:15:15.002167: Info: Completed run status Demand 2026-08-14 11:15:15.009095: Info: record_status Demand 2026-08-14 11:15:15.018783: Saved current settings to /config/predbat_config.json 2026-08-14 11:15:15.019181: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 11:15:59.146069: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:15:59.146447: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:15:59.146539: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:15:59.146787: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:15:59.146852: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:15:59.146891: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:15:59.146927: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:17:53.749016: TemperatureAPI: Using coordinates latitude 53.4, longitude -2.2 2026-08-14 11:17:53.913307: TemperatureAPI: Successfully fetched temperature data from Open-Meteo API 2026-08-14 11:17:57.588881: Info: HAHistory: Pruning history data started. 2026-08-14 11:17:57.591337: Info: HAHistory: Pruning history data completed. 2026-08-14 11:17:59.363847: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:17:59.364075: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:17:59.364122: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:17:59.364251: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:17:59.364289: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:17:59.364310: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:17:59.364328: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:18:07.481176: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 11:18:08.343372: Processing 1297 30-minute periods for power integration 2026-08-14 11:18:08.429813: ML Component: Car charging hold False, car energy reported load False 2026-08-14 11:18:08.507501: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 11:18:08.591251: ML Temperature data points: 48286 2026-08-14 11:18:08.818331: ML Component: Fetched 7776 load data points, 27.0 days of history 2026-08-14 11:18:08.846098: ML Component: Data fetch completed, load data age 55.0 days, 16112 data points 2026-08-14 11:18:08.846227: ML Component: No training needed, model age is 1.43 hours 2026-08-14 11:18:08.846286: ML Component: Generating predictions load data age 55.0 days, 16112 data points 2026-08-14 11:18:08.954317: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.1308 max_dow {0: 0.10500312496256084, 1: 0.10763750054407865, 2: 0.11822499983031302, 3: 0.1251781244263053, 4: 0.1736281253574416, 5: 0.10149375002831221, 6: 0.10796875073947013} 2026-08-14 11:18:09.582996: ML Component: Generated 576 predictions (total 38.32 kWh over 48h) 2026-08-14 11:18:09.618826: ML Component: Prediction cycle completed 2026-08-14 11:18:09.719857: ML Component: Saved 16112 steps (55 days) of history to /config/predbat_ml_history.npz 2026-08-14 11:20:00.590608: --------------- PredBat - update at 2026-08-14 11:20:00+01:00 with clock skew 0 minutes, minutes now 680 2026-08-14 11:20:00.591496: Saved current settings to /config/predbat_config.json 2026-08-14 11:20:00.591655: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 105.0 minutes 2026-08-14 11:20:00.591732: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 11:20:00.591887: Autoupdate: Currently up to date 2026-08-14 11:20:00.609482: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 11:20:00.609607: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 11:20:00.609779: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 11:20:00.610475: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 11:20:00.610606: Predbat mode is set to Control charge & discharge 2026-08-14 11:20:00.777600: Found 21602 load_today datapoints going back 27 days 2026-08-14 11:20:00.777736: Using load_power data to fill gaps in load_today data 2026-08-14 11:20:01.477957: Processing 721 30-minute periods for power integration 2026-08-14 11:20:01.669606: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 11:20:01.669730: Car charging hold False, threshold 6.0kWh 2026-08-14 11:20:01.669773: Current data so far today: load 11.25kWh, import 11.5kWh, export 0.0kWh, PV 0kWh 2026-08-14 11:20:01.685078: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 11:20:01.685867: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 11:20:01.685942: Standing charge is set to 49.98p 2026-08-14 11:20:01.735469: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 11:20:01.735554: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 11:20:01.735771: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 45.0 minutes 2026-08-14 11:20:01.736147: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 45.0 minutes 2026-08-14 11:20:01.741463: Loaded 95 datapoints of futurerate analysis 2026-08-14 11:20:01.820031: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68'] 2026-08-14 11:20:01.868193: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 11:20:01.873102: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 11:20:01.873377: Import rates: min 14.97p, max 53.39p, average 27.29p 2026-08-14 11:20:01.907999: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 11:20:01.908117: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 11:20:01.909211: High export rate found rates in range 99p to -99p 2026-08-14 11:20:01.984868: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 11:20:01.985023: Car 0 charging is not planned as it is not plugged in 2026-08-14 11:20:01.995882: Battery level now 1.6kWh, -1hr ago 1.76kWh, at midnight 2.43kWh, battery value change in the last hour -2.06p, change today -10.7p, rate_forward 12.86p 2026-08-14 11:20:01.996191: Last hour: net energy 0.88kWh, import 0.88kWh, export 0.0kWh, car 0kWh, load 1.45kWh, net cost 20.04p, import 20.04p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 11:20:02.044669: Today's energy total net 11.5kWh, import 11.5kWh, export 0.0kWh, cost 336.97p, import 286.99p, export 0.0p, carbon 0.0kg 2026-08-14 11:20:02.044791: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 11:20:02.115003: Using weighted-bucket historical load forecast over 14 days 2026-08-14 11:20:02.138721: Today's load divergence 125.15%, in-day adjustment 135.99%, damping 0.95x, yesterday 146.81% today 123.89% blend 52.78% 2026-08-14 11:20:02.138808: Today's predicted so far 6.31kWh with 0.0kWh car/iBoost excluded, 3.94kWh import ignored, and 6.31kWh forecast extra. 2026-08-14 11:20:02.138854: Today's actual load so far 11.18kWh with 0.0kWh car/iBoost excluded, and 3.94kWh import ignored. 2026-08-14 11:20:02.169264: Inverter 0: Type SK Sunsynk 2026-08-14 11:20:02.169341: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 11:20:02.169548: Reserve min: 7%, battery_min: 7% 2026-08-14 11:20:02.169623: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 11:20:02.169874: Inverter 0 SoC: 1.46kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4504W, current battery voltage 51.2V, grid power -6618W, load power 1621W, PV Power 0W 2026-08-14 11:20:02.170066: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:20:02.170178: Inverter 0 scheduled charge enable is False 2026-08-14 11:20:02.170228: Inverter 0 charge windows currently [] 2026-08-14 11:20:02.170270: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 11:20:02.170404: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:20:02.170460: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:20:02.170517: Inverter 0 scheduled discharge enable is False 2026-08-14 11:20:02.170665: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:20:02.170708: Inverter 0 discharge windows currently [] 2026-08-14 11:20:02.170744: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:20:02.170775: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:20:02.170808: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:20:02.222005: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 11:20:02.222110: Plan was last updated on 2026-08-14 11:15:00+01:00 and is now 5.0 minutes old 2026-08-14 11:20:02.222353: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 11:20:02.222395: Best export window [ ] 2026-08-14 11:20:02.223244: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 11:20:02.226185: Load divergence over 8.0 hours mean 403.29W, min 235.2W, max 1260.6W, std dev 171.94W, divergence 21.32% 2026-08-14 11:20:02.241702: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 11:20:02.241782: LoadML is_calculating False 2026-08-14 11:20:02.241833: Creating pool of 12 processes to match your CPU count 2026-08-14 11:20:02.355454: predict base end_record 08-15 13:05:00, final soc 1.12kWh, metric 919.13p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:30:00, load 30.54kWh, PV 0.0kWh 2026-08-14 11:20:02.485215: Battery has 0.17 hours left - now at 1.46kWh 2026-08-14 11:20:02.528480: predict base10 end_record 08-15 13:05:00, final soc 1.12kWh, metric 944.82p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:30:00, load 31.45kWh, PV 0.0kWh 2026-08-14 11:20:02.600252: predict best10 end_record 08-15 13:05:00, final soc 1.44kWh, metric 857.68p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:30:00, load 31.45kWh, PV 0.0kWh 2026-08-14 11:20:02.679064: predict best end_record 08-15 13:05:00, final soc 1.51kWh, metric 836.03p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:30:00, load 30.54kWh, PV 0.0kWh 2026-08-14 11:20:02.679161: Saving plan best values to HA entities 2026-08-14 11:20:02.823589: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 11:20:02.828190: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 11:20:02.832718: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.15kWh, house 5.87kWh, export 0.0kWh, metric 836.03p, metric10 857.68p 2026-08-14 11:20:02.902962: Marginal costs baseline metric (no standing charge): 786.0447 2026-08-14 11:20:03.147681: Marginal energy costs matrix computed: min=21.76 max=37.21 2026-08-14 11:20:03.210920: Rate array import [{'start': 680, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2225, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 680, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 11:20:03.211487: - Your estimated bill for today is £6.93 and tomorrow is £5.93 2026-08-14 11:20:03.211528: - Import rates are cheap (21.7p - 22.6p) for the next 4 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 11:20:03.211547: - The battery is currently at 9% and is in eco mode for the next 1 and three quarters hours. 2026-08-14 11:20:03.211561: - For the next 48 hours there will be no solar generation. 2026-08-14 11:20:03.211575: - You will run out of battery in 10 minutes. 2026-08-14 11:20:03.211589: - Your next charge slot will be in 1 and three quarters hours where import rates will be cheap (21.9p). 2026-08-14 11:20:03.211603: 2026-08-14 11:20:03.256812: Plan calculation took 1.03 seconds 2026-08-14 11:20:03.259664: No high rate period found 2026-08-14 11:20:03.301872: Import threshold used for optimisation was 25.52p 2026-08-14 11:20:03.347459: Low import rate windows [0: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 1: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 2: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 3: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 4: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 5: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 6: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 7: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 8: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 9: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 10: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 11: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 12: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 13: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 14: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 15: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 16: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 17: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 18: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 19: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 20: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 21: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 22: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 23: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 24: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 25: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 26: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 27: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 28: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 29: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 30: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 31: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 32: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 33: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 34: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 35: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 36: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 37: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 38: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 39: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 40: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 41: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 42: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 43: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 44: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 45: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 46: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 47: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 48: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 49: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 50: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 51: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 52: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 53: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 54: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 55: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 56: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 57: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 58: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 59: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 60: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 61: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 62: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 63: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 64: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 65: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 66: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 67: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 68: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 69: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 70: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 71: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 72: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 73: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 74: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 75: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 76: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 77: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 78: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 79: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 80: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 81: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 82: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 83: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 84: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 85: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 86: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 87: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 88: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 89: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 90: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 91: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 92: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 93: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 94: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 95: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81] 2026-08-14 11:20:03.354148: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-14 11:20:03.354266: Inverter 0 disabled charge window while waiting for schedule (now 08-14 11:20:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 11:20:03.354358: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:20:03.354585: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:20:03.354659: No export window planned 2026-08-14 11:20:03.354752: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 11:20:03.354782: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:20:03.354892: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:20:03.355045: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 11:20:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 11:20:03.355101: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 11:20:03.355148: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 11:20:03.355228: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:20:03.355261: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:20:03.355284: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:20:03.355323: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:20:03.355345: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:20:03.355365: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:20:03.355388: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:20:03.355494: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:20:03.355541: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:20:03.355573: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:20:03.355623: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:20:03.355671: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:20:03.355726: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:20:03.355772: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:20:03.355808: Inverter 0 count register writes 0 2026-08-14 11:20:03.369663: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 11:20:03.374703: Total inverter register writes now 806 2026-08-14 11:20:03.413819: Info: Completed run status Demand 2026-08-14 11:20:03.419718: Info: record_status Demand 2026-08-14 11:20:03.426165: Saved current settings to /config/predbat_config.json 2026-08-14 11:20:03.426477: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 11:20:44.531579: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:20:44.531921: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:20:44.531978: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:20:44.532225: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:20:44.532296: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:20:44.532346: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:20:44.532368: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:22:58.794385: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:22:58.794656: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:22:58.794699: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:22:58.794919: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:22:58.794965: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:22:58.794989: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:22:58.795025: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:24:59.015805: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:24:59.016039: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:24:59.016074: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:24:59.016283: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:24:59.016324: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:24:59.016346: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:24:59.016364: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:25:00.101337: --------------- PredBat - update at 2026-08-14 11:25:00+01:00 with clock skew 0 minutes, minutes now 685 2026-08-14 11:25:00.102093: Saved current settings to /config/predbat_config.json 2026-08-14 11:25:00.102246: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 110.0 minutes 2026-08-14 11:25:00.102342: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 11:25:00.102461: Autoupdate: Currently up to date 2026-08-14 11:25:00.121265: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 11:25:00.121390: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 11:25:00.121570: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 11:25:00.122328: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 11:25:00.122458: Predbat mode is set to Control charge & discharge 2026-08-14 11:25:00.328554: Found 21602 load_today datapoints going back 27 days 2026-08-14 11:25:00.328724: Using load_power data to fill gaps in load_today data 2026-08-14 11:25:01.082588: Processing 721 30-minute periods for power integration 2026-08-14 11:25:01.271604: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 11:25:01.271739: Car charging hold False, threshold 6.0kWh 2026-08-14 11:25:01.271802: Current data so far today: load 11.4kWh, import 11.5kWh, export 0.0kWh, PV 0kWh 2026-08-14 11:25:01.290192: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 11:25:01.291231: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 11:25:01.291350: Standing charge is set to 49.98p 2026-08-14 11:25:01.349359: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 11:25:01.349496: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 11:25:01.349782: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 50.0 minutes 2026-08-14 11:25:01.350390: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 50.0 minutes 2026-08-14 11:25:01.357314: Loaded 95 datapoints of futurerate analysis 2026-08-14 11:25:01.438012: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68'] 2026-08-14 11:25:01.485203: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 11:25:01.489642: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 11:25:01.490016: Import rates: min 14.97p, max 53.39p, average 27.28p 2026-08-14 11:25:01.524915: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 11:25:01.525044: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 11:25:01.526079: High export rate found rates in range 99p to -99p 2026-08-14 11:25:01.619471: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 11:25:01.619626: Car 0 charging is not planned as it is not plugged in 2026-08-14 11:25:01.632221: Battery level now 1.46kWh, -1hr ago 1.65kWh, at midnight 2.43kWh, battery value change in the last hour -2.47p, change today -12.55p, rate_forward 12.86p 2026-08-14 11:25:01.632585: Last hour: net energy 0.8kWh, import 0.8kWh, export 0.0kWh, car 0kWh, load 1.5kWh, net cost 18.22p, import 18.22p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 11:25:01.690561: Today's energy total net 11.5kWh, import 11.5kWh, export 0.0kWh, cost 336.97p, import 286.99p, export 0.0p, carbon 0.0kg 2026-08-14 11:25:01.690722: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 11:25:01.775913: Using weighted-bucket historical load forecast over 14 days 2026-08-14 11:25:01.804590: Today's load divergence 125.25%, in-day adjustment 135.95%, damping 0.95x, yesterday 146.81% today 123.99% blend 52.43% 2026-08-14 11:25:01.804700: Today's predicted so far 6.37kWh with 0.0kWh car/iBoost excluded, 4.05kWh import ignored, and 6.37kWh forecast extra. 2026-08-14 11:25:01.804733: Today's actual load so far 11.27kWh with 0.0kWh car/iBoost excluded, and 4.05kWh import ignored. 2026-08-14 11:25:01.841502: Inverter 0: Type SK Sunsynk 2026-08-14 11:25:01.841594: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 11:25:01.841790: Reserve min: 7%, battery_min: 7% 2026-08-14 11:25:01.841870: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 11:25:01.842126: Inverter 0 SoC: 1.77kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power -4513W, current battery voltage 51.2V, grid power -5945W, load power 949W, PV Power 0W 2026-08-14 11:25:01.842299: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:25:01.842385: Inverter 0 scheduled charge enable is False 2026-08-14 11:25:01.842415: Inverter 0 charge windows currently [] 2026-08-14 11:25:01.842441: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 11:25:01.842552: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:25:01.842587: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:25:01.842623: Inverter 0 scheduled discharge enable is False 2026-08-14 11:25:01.842745: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:25:01.842782: Inverter 0 discharge windows currently [] 2026-08-14 11:25:01.842805: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:25:01.842845: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:25:01.842869: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:25:01.906676: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 11:25:01.906784: Plan was last updated on 2026-08-14 11:15:00+01:00 and is now 10.0 minutes old 2026-08-14 11:25:01.907045: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 11:25:01.907091: Best export window [ ] 2026-08-14 11:25:01.907946: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 11:25:01.911104: Load divergence over 8.0 hours mean 403.2W, min 247.2W, max 1439.4W, std dev 192.29W, divergence 23.85% 2026-08-14 11:25:01.930392: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 11:25:01.930507: LoadML is_calculating False 2026-08-14 11:25:01.930571: Creating pool of 12 processes to match your CPU count 2026-08-14 11:25:02.043614: predict base end_record 08-15 13:10:00, final soc 1.12kWh, metric 911.22p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:50:00, load 30.64kWh, PV 0.0kWh 2026-08-14 11:25:02.189207: Battery has 0.42 hours left - now at 1.77kWh 2026-08-14 11:25:02.233078: predict base10 end_record 08-15 13:10:00, final soc 1.12kWh, metric 936.84p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:45:00, load 31.56kWh, PV 0.0kWh 2026-08-14 11:25:02.314617: predict best10 end_record 08-15 13:10:00, final soc 1.77kWh, metric 855.21p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:45:00, load 31.56kWh, PV 0.0kWh 2026-08-14 11:25:02.389732: predict best end_record 08-15 13:10:00, final soc 1.9kWh, metric 834.71p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:50:00, load 30.64kWh, PV 0.0kWh 2026-08-14 11:25:02.389811: Saving plan best values to HA entities 2026-08-14 11:25:02.555474: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 11:25:02.560627: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 11:25:02.565704: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.64kWh, house 5.46kWh, export 0.0kWh, metric 834.71p, metric10 855.21p 2026-08-14 11:25:02.642583: Marginal costs baseline metric (no standing charge): 784.7238 2026-08-14 11:25:02.917805: Marginal energy costs matrix computed: min=21.75 max=37.48 2026-08-14 11:25:02.989356: Rate array import [{'start': 685, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2230, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 685, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 11:25:02.990043: - Your estimated bill for today is £6.84 and tomorrow is £5.93 2026-08-14 11:25:02.990089: - Import rates are cheap (21.7p - 22.6p) for the next 4 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 11:25:02.990113: - The battery is currently at 11% and is in eco mode for the next 1 and a half hours. 2026-08-14 11:25:02.990145: - For the next 48 hours there will be no solar generation. 2026-08-14 11:25:02.990171: - You will run out of battery in 25 minutes. 2026-08-14 11:25:02.990189: - Your next charge slot will be in 1 and a half hours where import rates will be cheap (21.9p). 2026-08-14 11:25:02.990229: 2026-08-14 11:25:03.045093: Plan calculation took 1.14 seconds 2026-08-14 11:25:03.050715: No high rate period found 2026-08-14 11:25:03.108127: Import threshold used for optimisation was 25.52p 2026-08-14 11:25:03.172155: Low import rate windows [0: 08-14 11:00:00 - 08-14 11:30:00 @ 22.55, 1: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 2: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 3: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 4: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 5: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 6: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 7: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 8: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 9: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 10: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 11: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 12: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 13: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 14: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 15: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 16: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 17: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 18: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 19: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 20: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 21: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 22: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 23: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 24: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 25: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 26: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 27: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 28: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 29: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 30: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 31: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 32: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 33: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 34: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 35: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 36: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 37: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 38: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 39: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 40: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 41: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 42: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 43: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 44: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 45: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 46: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 47: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 48: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 49: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 50: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 51: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 52: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 53: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 54: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 55: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 56: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 57: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 58: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 59: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 60: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 61: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 62: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 63: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 64: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 65: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 66: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 67: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 68: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 69: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 70: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 71: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 72: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 73: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 74: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 75: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 76: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 77: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 78: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 79: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 80: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 81: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 82: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 83: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 84: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 85: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 86: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 87: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 88: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 89: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 90: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 91: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 92: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 93: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 94: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 95: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81] 2026-08-14 11:25:03.179553: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 11:25:03.179674: Inverter 0 disabled charge window while waiting for schedule (now 08-14 11:25:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 11:25:03.179758: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:25:03.179966: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:25:03.180039: No export window planned 2026-08-14 11:25:03.180145: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 11:25:03.180171: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:25:03.180276: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:25:03.180415: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 11:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 11:25:03.180471: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 11:25:03.180520: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 11:25:03.180592: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:25:03.180624: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:25:03.180646: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:25:03.180667: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:25:03.180687: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:25:03.180708: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:25:03.180728: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:25:03.180781: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:25:03.180804: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:25:03.180824: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:25:03.180843: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:25:03.180864: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:25:03.180882: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:25:03.180903: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:25:03.180920: Inverter 0 count register writes 0 2026-08-14 11:25:03.197286: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 11:25:03.197477: Recompute is saving previous plan... 2026-08-14 11:25:03.202209: Best charge window [ 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 0% ] 2026-08-14 11:25:03.202364: Best export window [ ] 2026-08-14 11:25:03.203254: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 11:25:03.206516: Load divergence over 8.0 hours mean 403.2W, min 247.2W, max 1439.4W, std dev 192.29W, divergence 23.85% 2026-08-14 11:25:03.227270: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 11:25:03.227379: LoadML is_calculating False 2026-08-14 11:25:03.227463: Creating pool of 12 processes to match your CPU count 2026-08-14 11:25:03.306475: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 11:25:03.308181: Optimise levels pass started at 2026-08-14 11:25:03 2026-08-14 11:25:03.308228: Optimise all windows, total charge 95 export 1 2026-08-14 11:25:04.235036: >> Region optimisation pass width 960 gives best_metric 999.72p, best_cost 1006.9p, best_cycle 47.21kWh, best_import 35.25kWh 2026-08-14 11:25:04.647201: >> Region optimisation pass width 480 gives best_metric 999.72p, best_cost 1006.9p, best_cycle 47.21kWh, best_import 35.25kWh 2026-08-14 11:25:05.138031: >> Region optimisation pass width 240 gives best_metric 999.72p, best_cost 1006.9p, best_cycle 47.21kWh, best_import 35.25kWh 2026-08-14 11:25:06.235633: >> Region optimisation pass width 120 gives best_metric 999.72p, best_cost 1006.9p, best_cycle 47.21kWh, best_import 35.25kWh 2026-08-14 11:25:06.235997: Calculated end_record as 08-15 13:00:00 based on best_price 22.02p, next_charge_start 08-14 13:00:00, max_windows 51 2026-08-14 11:25:06.236073: Optimise levels pass ended at 2026-08-14 11:25:06, duration 2.9 seconds tried 291 combinations 2026-08-14 11:25:06.236152: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 999.72p, best_keep 0kWh, best_cycle 47.21kWh, best_carbon 0kg, best_import 35.25kWh 2026-08-14 11:25:06.256519: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 11:25:10.124389: Tweak plan optimisation started metric 758.64p, cost 769.72p 2026-08-14 11:25:10.414995: Tweak optimisation finished metric 758.64p, cost 769.72p, metric_keep 0kWh, cycle 24.06kWh, carbon 0kg, import 20.18kWh, changed 8 window(s) 2026-08-14 11:25:10.436717: Swap charge optimisation started metric 758.64p, cost 769.72p, min_improvement_swap 0.1p 2026-08-14 11:25:12.708176: Swap charge optimisation finished metric 758.64p, cost 769.72p 2026-08-14 11:25:12.783721: Pruned 1 dead plan slot(s) in 7 trial(s), nominal metric 755.32p -> 755.32p, plan now metric 758.65p, cost 769.72p, cycle 24.06kWh, import 20.18kWh 2026-08-14 11:25:12.793544: Raw charge windows [ 14-08 11:00:00 - 14-08 11:30:00 @ 22.55p 0%, 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100% ] reserve 1.12 2026-08-14 11:25:12.794035: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 16-08 11:30:00 @ 18.91p 100% ] reserve 1.12 2026-08-14 11:25:12.794215: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 16-08 11:30:00 @ 18.91p 100% ] reserve 1.12 2026-08-14 11:25:12.794358: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 16-08 11:30:00 @ 18.91p 100% ] reserve 1.12 2026-08-14 11:25:12.825763: Previous plan best metric is 758.68 (cost 769.7) and new plan best metric is 758.64 (cost 769.72) 2026-08-14 11:25:12.825961: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 11:25:12.826099: Plan valid is now true after recompute was False 2026-08-14 11:25:12.852474: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 909.19p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:50:00, load 30.51kWh, PV 0.0kWh 2026-08-14 11:25:12.953231: Battery has 0.42 hours left - now at 1.77kWh 2026-08-14 11:25:12.993005: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 934.71p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:45:00, load 31.42kWh, PV 0.0kWh 2026-08-14 11:25:13.065810: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 842.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:45:00, load 31.42kWh, PV 0.0kWh 2026-08-14 11:25:13.140465: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 819.69p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:50:00, load 30.51kWh, PV 0.0kWh 2026-08-14 11:25:13.140543: Saving plan best values to HA entities 2026-08-14 11:25:13.280008: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 11:25:13.285085: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 11:25:13.289904: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 14.67kWh, house 5.46kWh, export 0.0kWh, metric 819.69p, metric10 842.25p 2026-08-14 11:25:13.356293: Marginal costs baseline metric (no standing charge): 769.7038 2026-08-14 11:25:13.591694: Marginal energy costs matrix computed: min=21.75 max=37.48 2026-08-14 11:25:13.649497: Rate array import [{'start': 685, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 685, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 11:25:13.650042: - Your estimated bill for today is £6.84 and tomorrow is £5.93 2026-08-14 11:25:13.650084: - Import rates are cheap (21.7p - 22.6p) for the next 4 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 11:25:13.650118: - The battery is currently at 11% and is in eco mode for the next 1 and a half hours. 2026-08-14 11:25:13.650147: - For the next 48 hours there will be no solar generation. 2026-08-14 11:25:13.650168: - You will run out of battery in 25 minutes. 2026-08-14 11:25:13.650183: - Your next charge slot will be in 1 and a half hours where import rates will be cheap (21.9p). 2026-08-14 11:25:13.650197: 2026-08-14 11:25:13.695116: Plan calculation took 10.50 seconds 2026-08-14 11:25:13.695516: Inverter 0: Type SK Sunsynk 2026-08-14 11:25:13.695559: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 11:25:13.695784: Reserve min: 7%, battery_min: 7% 2026-08-14 11:25:13.695865: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 11:25:13.696200: Inverter 0 SoC: 1.77kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power -4513W, current battery voltage 51.2V, grid power -5945W, load power 949W, PV Power 0W 2026-08-14 11:25:13.696460: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:25:13.696573: Inverter 0 scheduled charge enable is False 2026-08-14 11:25:13.696609: Inverter 0 charge windows currently [] 2026-08-14 11:25:13.696636: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 11:25:13.696745: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:25:13.696781: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:25:13.696817: Inverter 0 scheduled discharge enable is False 2026-08-14 11:25:13.696970: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:25:13.697013: Inverter 0 discharge windows currently [] 2026-08-14 11:25:13.697040: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:25:13.697066: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:25:13.697084: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:25:13.753210: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 11:25:13.753359: Inverter 0 disabled charge window while waiting for schedule (now 08-14 11:25:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 11:25:13.753431: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:25:13.753610: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:25:13.753697: No export window planned 2026-08-14 11:25:13.753855: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 11:25:13.753902: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:25:13.754073: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:25:13.754258: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 11:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 11:25:13.754318: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 11:25:13.754367: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 11:25:13.754452: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:25:13.754485: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:25:13.754512: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:25:13.754569: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:25:13.754598: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:25:13.754623: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:25:13.754648: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:25:13.754719: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:25:13.754756: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:25:13.754781: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:25:13.754807: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:25:13.754831: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:25:13.754854: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:25:13.754878: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:25:13.754905: Inverter 0 count register writes 0 2026-08-14 11:25:13.776928: Total inverter register writes now 806 2026-08-14 11:25:13.809848: Info: Completed run status Demand 2026-08-14 11:25:13.816859: Info: record_status Demand 2026-08-14 11:25:13.824338: Saved current settings to /config/predbat_config.json 2026-08-14 11:25:13.824636: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 11:25:43.920614: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:25:43.920901: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:25:43.920983: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:25:43.921153: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:25:43.921194: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:25:43.921216: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:25:43.921249: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:27:44.139730: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:27:44.139965: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:27:44.140000: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:27:44.140154: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:27:44.140187: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:27:44.140207: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:27:44.140225: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:29:44.361459: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:29:44.361708: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:29:44.361744: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:29:44.361898: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:29:44.361937: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:29:44.361959: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:29:44.362022: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:30:00.467724: --------------- PredBat - update at 2026-08-14 11:30:00+01:00 with clock skew 0 minutes, minutes now 690 2026-08-14 11:30:00.468510: Saved current settings to /config/predbat_config.json 2026-08-14 11:30:00.468642: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 115.0 minutes 2026-08-14 11:30:00.468728: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 11:30:00.468850: Autoupdate: Currently up to date 2026-08-14 11:30:00.490699: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 11:30:00.490822: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 11:30:00.491010: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 11:30:00.491532: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 11:30:00.491654: Predbat mode is set to Control charge & discharge 2026-08-14 11:30:00.705013: Found 21602 load_today datapoints going back 28 days 2026-08-14 11:30:00.705171: Using load_power data to fill gaps in load_today data 2026-08-14 11:30:01.484884: Processing 721 30-minute periods for power integration 2026-08-14 11:30:01.685465: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 11:30:01.685590: Car charging hold False, threshold 6.0kWh 2026-08-14 11:30:01.685630: Current data so far today: load 11.55kWh, import 12.2kWh, export 0.0kWh, PV 0kWh 2026-08-14 11:30:01.699572: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 11:30:01.700341: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 11:30:01.700412: Standing charge is set to 49.98p 2026-08-14 11:30:01.751721: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 11:30:01.751832: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 11:30:01.752054: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 55.0 minutes 2026-08-14 11:30:01.752463: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 55.0 minutes 2026-08-14 11:30:01.759549: Loaded 95 datapoints of futurerate analysis 2026-08-14 11:30:01.855392: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68'] 2026-08-14 11:30:01.918456: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 11:30:01.924688: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 11:30:01.925159: Import rates: min 14.97p, max 53.39p, average 27.27p 2026-08-14 11:30:01.969774: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 11:30:01.969908: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 11:30:01.971252: High export rate found rates in range 99p to -99p 2026-08-14 11:30:02.069630: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 11:30:02.069779: Car 0 charging is not planned as it is not plugged in 2026-08-14 11:30:02.083387: Battery level now 1.77kWh, -1hr ago 1.65kWh, at midnight 2.43kWh, battery value change in the last hour 1.54p, change today -8.54p, rate_forward 12.86p 2026-08-14 11:30:02.083757: Last hour: net energy 1.42kWh, import 1.42kWh, export 0.0kWh, car 0kWh, load 1.55kWh, net cost 32.22p, import 32.22p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 11:30:02.150530: Today's energy total net 12.2kWh, import 12.2kWh, export 0.0kWh, cost 352.76p, import 302.77p, export 0.0p, carbon 0.0kg 2026-08-14 11:30:02.150669: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 11:30:02.219607: Using weighted-bucket historical load forecast over 14 days 2026-08-14 11:30:02.240611: Today's load divergence 125.91%, in-day adjustment 136.17%, damping 0.95x, yesterday 146.81% today 124.61% blend 52.08% 2026-08-14 11:30:02.240686: Today's predicted so far 6.51kWh with 0.0kWh car/iBoost excluded, 4.4kWh import ignored, and 6.51kWh forecast extra. 2026-08-14 11:30:02.240713: Today's actual load so far 11.57kWh with 0.0kWh car/iBoost excluded, and 4.4kWh import ignored. 2026-08-14 11:30:02.276428: Inverter 0: Type SK Sunsynk 2026-08-14 11:30:02.276510: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 11:30:02.276668: Reserve min: 7%, battery_min: 7% 2026-08-14 11:30:02.276722: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 11:30:02.276941: Inverter 0 SoC: 1.77kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 1173W, current battery voltage 51.2V, grid power -53W, load power 1233W, PV Power 0W 2026-08-14 11:30:02.277141: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:30:02.277209: Inverter 0 scheduled charge enable is False 2026-08-14 11:30:02.277233: Inverter 0 charge windows currently [] 2026-08-14 11:30:02.277255: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 11:30:02.277346: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:30:02.277376: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:30:02.277407: Inverter 0 scheduled discharge enable is False 2026-08-14 11:30:02.277512: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:30:02.277543: Inverter 0 discharge windows currently [] 2026-08-14 11:30:02.277562: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:30:02.277576: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:30:02.277590: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:30:02.337190: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 11:30:02.337341: Plan was last updated on 2026-08-14 11:25:00+01:00 and is now 5.0 minutes old 2026-08-14 11:30:02.337680: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 11:30:02.337744: Best export window [ ] 2026-08-14 11:30:02.338645: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 11:30:02.342034: Load divergence over 8.0 hours mean 399.99W, min 239.4W, max 1403.4W, std dev 182.57W, divergence 22.82% 2026-08-14 11:30:02.361434: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 11:30:02.361552: LoadML is_calculating False 2026-08-14 11:30:02.361619: Creating pool of 12 processes to match your CPU count 2026-08-14 11:30:02.479808: predict base end_record 08-15 13:05:00, final soc 1.12kWh, metric 923.56p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:55:00, load 30.62kWh, PV 0.0kWh 2026-08-14 11:30:02.606412: Battery has 0.42 hours left - now at 1.77kWh 2026-08-14 11:30:02.647472: predict base10 end_record 08-15 13:05:00, final soc 1.12kWh, metric 949.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:50:00, load 31.53kWh, PV 0.0kWh 2026-08-14 11:30:02.728367: predict best10 end_record 08-15 13:05:00, final soc 1.44kWh, metric 861.85p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:50:00, load 31.53kWh, PV 0.0kWh 2026-08-14 11:30:02.808553: predict best end_record 08-15 13:05:00, final soc 1.51kWh, metric 840.52p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 11:55:00, load 30.62kWh, PV 0.0kWh 2026-08-14 11:30:02.808634: Saving plan best values to HA entities 2026-08-14 11:30:02.973484: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 11:30:02.978647: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 11:30:02.983668: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.14kWh, house 5.36kWh, export 0.0kWh, metric 840.52p, metric10 861.85p 2026-08-14 11:30:03.052610: Marginal costs baseline metric (no standing charge): 790.5342 2026-08-14 11:30:03.290360: Marginal energy costs matrix computed: min=21.73 max=37.8 2026-08-14 11:30:03.368075: Rate array import [{'start': 690, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2225, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 690, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 11:30:03.368660: - Your estimated bill for today is £6.98 and tomorrow is £5.91 2026-08-14 11:30:03.368704: - Import rates are cheap (21.7p - 22.2p) for the next 4 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 11:30:03.368723: - The battery is currently at 11% and is in eco mode for the next 1 and a half hours. 2026-08-14 11:30:03.368746: - For the next 48 hours there will be no solar generation. 2026-08-14 11:30:03.368761: - You will run out of battery in 25 minutes. 2026-08-14 11:30:03.368776: - Your next charge slot will be in 1 and a half hours where import rates will be cheap (21.9p). 2026-08-14 11:30:03.368790: 2026-08-14 11:30:03.421084: Plan calculation took 1.08 seconds 2026-08-14 11:30:03.424457: No high rate period found 2026-08-14 11:30:03.476527: Import threshold used for optimisation was 25.52p 2026-08-14 11:30:03.535940: Low import rate windows [0: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 1: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 2: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 3: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 4: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 5: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 6: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 7: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 8: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 9: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 10: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 11: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 12: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 13: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 14: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 15: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 16: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 17: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 18: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 19: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 20: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 21: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 22: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 23: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 24: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 25: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 26: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 27: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 28: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 29: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 30: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 31: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 32: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 33: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 34: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 35: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 36: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 37: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 38: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 39: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 40: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 41: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 42: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 43: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 44: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 45: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 46: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 47: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 48: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 49: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 50: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 51: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 52: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 53: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 54: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 55: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 56: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 57: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 58: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 59: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 60: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 61: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 62: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 63: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 64: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 65: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 66: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 67: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 68: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 69: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 70: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 71: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 72: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 73: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 74: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 75: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 76: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 77: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 78: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 79: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 80: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 81: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 82: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 83: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 84: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 85: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 86: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 87: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 88: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 89: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 90: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 91: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 92: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 93: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 94: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81] 2026-08-14 11:30:03.543485: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 11:30:03.543612: Inverter 0 disabled charge window while waiting for schedule (now 08-14 11:30:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 11:30:03.543736: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:30:03.544051: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:30:03.544154: No export window planned 2026-08-14 11:30:03.544308: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 11:30:03.544345: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:30:03.544506: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:30:03.544722: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 11:30:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 11:30:03.544793: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 11:30:03.544877: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 11:30:03.545019: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:30:03.545065: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:30:03.545101: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:30:03.545143: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:30:03.545168: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:30:03.545196: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:30:03.545237: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:30:03.545333: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:30:03.545374: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:30:03.545399: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:30:03.545441: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:30:03.545480: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:30:03.545502: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:30:03.545542: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:30:03.545579: Inverter 0 count register writes 0 2026-08-14 11:30:03.561359: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 11:30:03.566348: Total inverter register writes now 806 2026-08-14 11:30:03.595260: Info: Completed run status Demand 2026-08-14 11:30:03.601336: Info: record_status Demand 2026-08-14 11:30:03.608174: Saved current settings to /config/predbat_config.json 2026-08-14 11:30:03.608462: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 11:30:43.726891: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:30:43.727217: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:30:43.727270: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:30:43.727490: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:30:43.727540: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:30:43.727562: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:30:43.727581: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:32:43.949689: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:32:43.950053: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:32:43.950122: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:32:43.950356: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:32:43.950419: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:32:43.950451: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:32:43.950487: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:34:44.168258: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:34:44.168455: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:34:44.168484: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:34:44.168591: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:34:44.168616: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:34:44.168632: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:34:44.168647: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:35:00.259955: --------------- PredBat - update at 2026-08-14 11:35:00+01:00 with clock skew 0 minutes, minutes now 695 2026-08-14 11:35:00.260642: Saved current settings to /config/predbat_config.json 2026-08-14 11:35:00.260742: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 120.0 minutes 2026-08-14 11:35:00.260807: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 11:35:00.260898: Autoupdate: Currently up to date 2026-08-14 11:35:00.279158: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 11:35:00.279421: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 11:35:00.279605: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 11:35:00.280202: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 11:35:00.280366: Predbat mode is set to Control charge & discharge 2026-08-14 11:35:00.446256: Found 21602 load_today datapoints going back 28 days 2026-08-14 11:35:00.446381: Using load_power data to fill gaps in load_today data 2026-08-14 11:35:01.259309: Processing 721 30-minute periods for power integration 2026-08-14 11:35:01.447926: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 11:35:01.448055: Car charging hold False, threshold 6.0kWh 2026-08-14 11:35:01.448137: Current data so far today: load 11.7kWh, import 12.2kWh, export 0.0kWh, PV 0kWh 2026-08-14 11:35:01.463720: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 11:35:01.464605: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 11:35:01.464692: Standing charge is set to 49.98p 2026-08-14 11:35:01.513101: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 11:35:01.513211: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 11:35:01.513414: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 60.0 minutes 2026-08-14 11:35:01.513797: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 60.0 minutes 2026-08-14 11:35:01.519666: Loaded 95 datapoints of futurerate analysis 2026-08-14 11:35:01.618374: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68'] 2026-08-14 11:35:01.676423: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 11:35:01.681982: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 11:35:01.682442: Import rates: min 14.97p, max 53.39p, average 27.26p 2026-08-14 11:35:01.727140: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 11:35:01.727275: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 11:35:01.728463: High export rate found rates in range 99p to -99p 2026-08-14 11:35:01.822598: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 11:35:01.822736: Car 0 charging is not planned as it is not plugged in 2026-08-14 11:35:01.835545: Battery level now 1.77kWh, -1hr ago 1.58kWh, at midnight 2.43kWh, battery value change in the last hour 2.37p, change today -8.54p, rate_forward 12.86p 2026-08-14 11:35:01.836032: Last hour: net energy 1.35kWh, import 1.35kWh, export 0.0kWh, car 0kWh, load 1.6kWh, net cost 30.52p, import 30.52p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 11:35:01.892575: Today's energy total net 12.2kWh, import 12.2kWh, export 0.0kWh, cost 352.76p, import 302.77p, export 0.0p, carbon 0.0kg 2026-08-14 11:35:01.892755: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 11:35:01.981347: Using weighted-bucket historical load forecast over 14 days 2026-08-14 11:35:02.008046: Today's load divergence 126.31%, in-day adjustment 136.28%, damping 0.95x, yesterday 146.81% today 124.99% blend 51.74% 2026-08-14 11:35:02.008159: Today's predicted so far 6.62kWh with 0.0kWh car/iBoost excluded, 4.35kWh import ignored, and 6.62kWh forecast extra. 2026-08-14 11:35:02.008194: Today's actual load so far 11.79kWh with 0.0kWh car/iBoost excluded, and 4.35kWh import ignored. 2026-08-14 11:35:02.040795: Inverter 0: Type SK Sunsynk 2026-08-14 11:35:02.040900: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 11:35:02.041149: Reserve min: 7%, battery_min: 7% 2026-08-14 11:35:02.041235: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 11:35:02.041498: Inverter 0 SoC: 2.0kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power 993W, current battery voltage 51.2V, grid power -52W, load power 1047W, PV Power 0W 2026-08-14 11:35:02.041651: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:35:02.041736: Inverter 0 scheduled charge enable is False 2026-08-14 11:35:02.041765: Inverter 0 charge windows currently [] 2026-08-14 11:35:02.041792: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 11:35:02.041932: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:35:02.041973: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:35:02.042010: Inverter 0 scheduled discharge enable is False 2026-08-14 11:35:02.042141: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:35:02.042178: Inverter 0 discharge windows currently [] 2026-08-14 11:35:02.042201: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:35:02.042219: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:35:02.042238: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:35:02.098523: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 11:35:02.098678: Plan was last updated on 2026-08-14 11:25:00+01:00 and is now 10.0 minutes old 2026-08-14 11:35:02.098996: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 11:35:02.099048: Best export window [ ] 2026-08-14 11:35:02.099897: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 11:35:02.103044: Load divergence over 8.0 hours mean 396.72W, min 230.4W, max 1260.0W, std dev 177.8W, divergence 22.41% 2026-08-14 11:35:02.118513: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 11:35:02.118602: LoadML is_calculating False 2026-08-14 11:35:02.118656: Creating pool of 12 processes to match your CPU count 2026-08-14 11:35:02.223591: predict base end_record 08-15 13:10:00, final soc 1.12kWh, metric 917.03p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:10:00, load 30.71kWh, PV 0.0kWh 2026-08-14 11:35:02.338385: Battery has 0.58 hours left - now at 2.0kWh 2026-08-14 11:35:02.384603: predict base10 end_record 08-15 13:10:00, final soc 1.12kWh, metric 942.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:05:00, load 31.61kWh, PV 0.0kWh 2026-08-14 11:35:02.470978: predict best10 end_record 08-15 13:10:00, final soc 1.77kWh, metric 860.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:05:00, load 31.61kWh, PV 0.0kWh 2026-08-14 11:35:02.562306: predict best end_record 08-15 13:10:00, final soc 1.9kWh, metric 840.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:10:00, load 30.71kWh, PV 0.0kWh 2026-08-14 11:35:02.562443: Saving plan best values to HA entities 2026-08-14 11:35:02.723323: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 11:35:02.728639: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 11:35:02.734647: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.62kWh, house 5.02kWh, export 0.0kWh, metric 840.38p, metric10 860.47p 2026-08-14 11:35:02.802528: Marginal costs baseline metric (no standing charge): 790.3949 2026-08-14 11:35:03.037270: Marginal energy costs matrix computed: min=21.76 max=38.28 2026-08-14 11:35:03.094737: Rate array import [{'start': 695, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2230, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 695, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 11:35:03.095354: - Your estimated bill for today is £6.90 and tomorrow is £5.89 2026-08-14 11:35:03.095404: - Import rates are cheap (21.7p - 22.2p) for the next 4 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 11:35:03.095438: - The battery is currently at 13% and is in eco mode for the next 1 and a half hours. 2026-08-14 11:35:03.095466: - For the next 48 hours there will be no solar generation. 2026-08-14 11:35:03.095500: - You will run out of battery in 35 minutes. 2026-08-14 11:35:03.095529: - Your next charge slot will be in 1 and a half hours where import rates will be cheap (21.9p). 2026-08-14 11:35:03.095557: 2026-08-14 11:35:03.138569: Plan calculation took 1.04 seconds 2026-08-14 11:35:03.141408: No high rate period found 2026-08-14 11:35:03.190575: Import threshold used for optimisation was 25.52p 2026-08-14 11:35:03.238310: Low import rate windows [0: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 1: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 2: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 3: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 4: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 5: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 6: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 7: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 8: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 9: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 10: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 11: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 12: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 13: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 14: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 15: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 16: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 17: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 18: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 19: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 20: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 21: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 22: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 23: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 24: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 25: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 26: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 27: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 28: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 29: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 30: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 31: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 32: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 33: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 34: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 35: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 36: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 37: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 38: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 39: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 40: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 41: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 42: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 43: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 44: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 45: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 46: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 47: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 48: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 49: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 50: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 51: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 52: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 53: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 54: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 55: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 56: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 57: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 58: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 59: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 60: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 61: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 62: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 63: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 64: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 65: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 66: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 67: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 68: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 69: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 70: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 71: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 72: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 73: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 74: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 75: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 76: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 77: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 78: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 79: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 80: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 81: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 82: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 83: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 84: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 85: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 86: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 87: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 88: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 89: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 90: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 91: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 92: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 93: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 94: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 95: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62] 2026-08-14 11:35:03.244935: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-14 11:35:03.245089: Inverter 0 disabled charge window while waiting for schedule (now 08-14 11:35:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 11:35:03.245176: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:35:03.245389: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:35:03.245463: No export window planned 2026-08-14 11:35:03.245559: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 11:35:03.245583: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:35:03.245689: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:35:03.245842: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 11:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 11:35:03.245912: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 11:35:03.245959: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 11:35:03.246037: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:35:03.246065: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:35:03.246110: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:35:03.246132: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:35:03.246157: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:35:03.246177: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:35:03.246196: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:35:03.246248: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:35:03.246277: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:35:03.246298: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:35:03.246317: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:35:03.246342: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:35:03.246361: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:35:03.246384: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:35:03.246401: Inverter 0 count register writes 0 2026-08-14 11:35:03.259821: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 11:35:03.259984: Recompute is saving previous plan... 2026-08-14 11:35:03.262525: Best charge window [ 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 0% ] 2026-08-14 11:35:03.262592: Best export window [ ] 2026-08-14 11:35:03.263288: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 11:35:03.265806: Load divergence over 8.0 hours mean 396.72W, min 230.4W, max 1260.0W, std dev 177.8W, divergence 22.41% 2026-08-14 11:35:03.280440: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 11:35:03.280515: LoadML is_calculating False 2026-08-14 11:35:03.280567: Creating pool of 12 processes to match your CPU count 2026-08-14 11:35:03.347606: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 11:35:03.350356: Optimise levels pass started at 2026-08-14 11:35:03 2026-08-14 11:35:03.350421: Optimise all windows, total charge 95 export 1 2026-08-14 11:35:04.292018: >> Region optimisation pass width 960 gives best_metric 1008.04p, best_cost 1015.25p, best_cycle 47.44kWh, best_import 34.95kWh 2026-08-14 11:35:04.733052: >> Region optimisation pass width 480 gives best_metric 1008.04p, best_cost 1015.25p, best_cycle 47.44kWh, best_import 34.95kWh 2026-08-14 11:35:05.174991: >> Region optimisation pass width 240 gives best_metric 1008.04p, best_cost 1015.25p, best_cycle 47.44kWh, best_import 34.95kWh 2026-08-14 11:35:06.304258: >> Region optimisation pass width 120 gives best_metric 1008.04p, best_cost 1015.25p, best_cycle 47.44kWh, best_import 34.95kWh 2026-08-14 11:35:06.304566: Calculated end_record as 08-15 13:00:00 based on best_price 22.02p, next_charge_start 08-14 13:00:00, max_windows 50 2026-08-14 11:35:06.304674: Optimise levels pass ended at 2026-08-14 11:35:06, duration 3.0 seconds tried 299 combinations 2026-08-14 11:35:06.304754: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1008.04p, best_keep 0kWh, best_cycle 47.44kWh, best_carbon 0kg, best_import 34.95kWh 2026-08-14 11:35:06.324932: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 16.0, 16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 11:35:11.064771: Tweak plan optimisation started metric 764.39p, cost 775.51p 2026-08-14 11:35:11.375011: Tweak optimisation finished metric 764.39p, cost 775.51p, metric_keep 0kWh, cycle 23.62kWh, carbon 0kg, import 19.69kWh, changed 8 window(s) 2026-08-14 11:35:11.391372: Swap charge optimisation started metric 764.39p, cost 775.51p, min_improvement_swap 0.1p 2026-08-14 11:35:13.694249: Swap charge optimisation finished metric 764.39p, cost 775.51p 2026-08-14 11:35:13.784795: Pruned 1 dead plan slot(s) in 7 trial(s), nominal metric 761.11p -> 761.11p, plan now metric 764.4p, cost 775.51p, cycle 23.62kWh, import 19.69kWh 2026-08-14 11:35:13.795050: Raw charge windows [ 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100% ] reserve 1.12 2026-08-14 11:35:13.795543: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:00:00 @ 17.77p 100% ] reserve 1.12 2026-08-14 11:35:13.795736: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:00:00 @ 17.77p 100% ] reserve 1.12 2026-08-14 11:35:13.795892: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:00:00 @ 17.77p 100% ] reserve 1.12 2026-08-14 11:35:13.825938: Previous plan best metric is 764.42 (cost 775.5) and new plan best metric is 764.39 (cost 775.51) 2026-08-14 11:35:13.826121: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 11:35:13.826250: Plan valid is now true after recompute was False 2026-08-14 11:35:13.849546: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 915.13p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:10:00, load 30.58kWh, PV 0.0kWh 2026-08-14 11:35:13.944834: Battery has 0.58 hours left - now at 2.0kWh 2026-08-14 11:35:13.983388: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 940.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:05:00, load 31.48kWh, PV 0.0kWh 2026-08-14 11:35:14.055938: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 847.65p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:05:00, load 31.48kWh, PV 0.0kWh 2026-08-14 11:35:14.126230: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 825.49p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:10:00, load 30.58kWh, PV 0.0kWh 2026-08-14 11:35:14.126311: Saving plan best values to HA entities 2026-08-14 11:35:14.264326: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 11:35:14.269587: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 11:35:14.274813: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 14.67kWh, house 5.02kWh, export 0.0kWh, metric 825.49p, metric10 847.65p 2026-08-14 11:35:14.343086: Marginal costs baseline metric (no standing charge): 775.5044 2026-08-14 11:35:14.568038: Marginal energy costs matrix computed: min=21.76 max=38.28 2026-08-14 11:35:14.630979: Rate array import [{'start': 695, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 695, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 11:35:14.631595: - Your estimated bill for today is £6.90 and tomorrow is £5.89 2026-08-14 11:35:14.631644: - Import rates are cheap (21.7p - 22.2p) for the next 4 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 11:35:14.631668: - The battery is currently at 13% and is in eco mode for the next 1 and a half hours. 2026-08-14 11:35:14.631686: - For the next 48 hours there will be no solar generation. 2026-08-14 11:35:14.631703: - You will run out of battery in 35 minutes. 2026-08-14 11:35:14.631721: - Your next charge slot will be in 1 and a half hours where import rates will be cheap (21.9p). 2026-08-14 11:35:14.631738: 2026-08-14 11:35:14.674917: Plan calculation took 11.41 seconds 2026-08-14 11:35:14.675265: Inverter 0: Type SK Sunsynk 2026-08-14 11:35:14.675308: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 11:35:14.675530: Reserve min: 7%, battery_min: 7% 2026-08-14 11:35:14.675609: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 11:35:14.675939: Inverter 0 SoC: 1.92kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 1002W, current battery voltage 51.2V, grid power -56W, load power 1065W, PV Power 0W 2026-08-14 11:35:14.676204: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:35:14.676319: Inverter 0 scheduled charge enable is False 2026-08-14 11:35:14.676356: Inverter 0 charge windows currently [] 2026-08-14 11:35:14.676384: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 11:35:14.676495: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:35:14.676531: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:35:14.676567: Inverter 0 scheduled discharge enable is False 2026-08-14 11:35:14.676686: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:35:14.676723: Inverter 0 discharge windows currently [] 2026-08-14 11:35:14.676751: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:35:14.676796: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:35:14.676816: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:35:14.730050: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 11:35:14.730199: Inverter 0 disabled charge window while waiting for schedule (now 08-14 11:35:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 11:35:14.730273: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:35:14.730482: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:35:14.730576: No export window planned 2026-08-14 11:35:14.730680: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 11:35:14.730716: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:35:14.730852: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:35:14.731030: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 11:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 11:35:14.731089: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 11:35:14.731141: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 11:35:14.731227: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:35:14.731271: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:35:14.731300: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:35:14.731325: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:35:14.731355: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:35:14.731379: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:35:14.731405: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:35:14.731470: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:35:14.731505: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:35:14.731531: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:35:14.731556: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:35:14.731579: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:35:14.731602: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:35:14.731625: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:35:14.731647: Inverter 0 count register writes 0 2026-08-14 11:35:14.752043: Total inverter register writes now 806 2026-08-14 11:35:14.787290: Info: Completed run status Demand 2026-08-14 11:35:14.793682: Info: record_status Demand 2026-08-14 11:35:14.800291: Saved current settings to /config/predbat_config.json 2026-08-14 11:35:14.800562: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 11:35:58.912219: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:35:58.912438: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:35:58.912466: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:35:58.912576: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:35:58.912660: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:35:58.912676: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:35:58.912691: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:37:59.128273: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:37:59.128587: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:37:59.128646: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:37:59.128838: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:37:59.128909: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:37:59.128934: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:37:59.129004: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:39:59.343173: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:39:59.343417: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:39:59.343460: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:39:59.343593: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:39:59.343631: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:39:59.343652: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:39:59.343670: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:40:00.420903: --------------- PredBat - update at 2026-08-14 11:40:00+01:00 with clock skew 0 minutes, minutes now 700 2026-08-14 11:40:00.421961: Saved current settings to /config/predbat_config.json 2026-08-14 11:40:00.674728: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 11:40:00.674901: Autoupdate: Currently up to date 2026-08-14 11:40:00.695429: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 11:40:00.695562: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 11:40:00.695744: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 11:40:00.696292: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 11:40:00.696417: Predbat mode is set to Control charge & discharge 2026-08-14 11:40:00.902461: Found 21602 load_today datapoints going back 28 days 2026-08-14 11:40:00.902855: Using load_power data to fill gaps in load_today data 2026-08-14 11:40:01.792868: Processing 721 30-minute periods for power integration 2026-08-14 11:40:01.979325: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 11:40:01.979465: Car charging hold False, threshold 6.0kWh 2026-08-14 11:40:01.979516: Current data so far today: load 11.7kWh, import 12.5kWh, export 0.0kWh, PV 0kWh 2026-08-14 11:40:01.995064: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 11:40:01.995697: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 11:40:01.995783: Standing charge is set to 49.98p 2026-08-14 11:40:02.048764: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 11:40:02.048897: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 11:40:02.049172: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 65.0 minutes 2026-08-14 11:40:02.049564: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 65.0 minutes 2026-08-14 11:40:02.056670: Loaded 95 datapoints of futurerate analysis 2026-08-14 11:40:02.158861: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68'] 2026-08-14 11:40:02.223944: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 11:40:02.229949: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 11:40:02.230525: Import rates: min 14.97p, max 53.39p, average 27.25p 2026-08-14 11:40:02.279470: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 11:40:02.279647: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 11:40:02.281055: High export rate found rates in range 99p to -99p 2026-08-14 11:40:02.381964: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 11:40:02.382105: Car 0 charging is not planned as it is not plugged in 2026-08-14 11:40:02.398515: Battery level now 2.0kWh, -1hr ago 1.42kWh, at midnight 2.43kWh, battery value change in the last hour 7.51p, change today -5.56p, rate_forward 12.86p 2026-08-14 11:40:02.398973: Last hour: net energy 1.57kWh, import 1.57kWh, export 0.0kWh, car 0kWh, load 1.45kWh, net cost 35.52p, import 35.52p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 11:40:02.488705: Today's energy total net 12.5kWh, import 12.5kWh, export 0.0kWh, cost 359.47p, import 309.48p, export 0.0p, carbon 0.0kg 2026-08-14 11:40:02.488892: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 11:40:02.586605: Using weighted-bucket historical load forecast over 14 days 2026-08-14 11:40:02.614308: Today's load divergence 125.96%, in-day adjustment 136.04%, damping 0.95x, yesterday 146.81% today 124.66% blend 51.39% 2026-08-14 11:40:02.615330: Today's predicted so far 6.68kWh with 0.0kWh car/iBoost excluded, 4.41kWh import ignored, and 6.68kWh forecast extra. 2026-08-14 11:40:02.617030: Today's actual load so far 11.75kWh with 0.0kWh car/iBoost excluded, and 4.41kWh import ignored. 2026-08-14 11:40:02.665612: Inverter 0: Type SK Sunsynk 2026-08-14 11:40:02.665716: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 11:40:02.665992: Reserve min: 7%, battery_min: 7% 2026-08-14 11:40:02.666095: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 11:40:02.666413: Inverter 0 SoC: 1.92kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 1046W, current battery voltage 51.2V, grid power -59W, load power 1118W, PV Power 0W 2026-08-14 11:40:02.666618: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:40:02.666752: Inverter 0 scheduled charge enable is False 2026-08-14 11:40:02.666801: Inverter 0 charge windows currently [] 2026-08-14 11:40:02.666870: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 11:40:02.667048: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:40:02.667095: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:40:02.667150: Inverter 0 scheduled discharge enable is False 2026-08-14 11:40:02.667344: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:40:02.667390: Inverter 0 discharge windows currently [] 2026-08-14 11:40:02.667425: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:40:02.667469: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:40:02.667495: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:40:02.727280: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 11:40:02.727412: Plan was last updated on 2026-08-14 11:35:00+01:00 and is now 5.0 minutes old 2026-08-14 11:40:02.727768: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 11:40:02.727821: Best export window [ ] 2026-08-14 11:40:02.729317: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 11:40:02.732530: Load divergence over 8.0 hours mean 392.19W, min 240.6W, max 1225.8W, std dev 163.66W, divergence 20.86% 2026-08-14 11:40:02.751425: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 11:40:02.751533: LoadML is_calculating False 2026-08-14 11:40:02.751595: Creating pool of 12 processes to match your CPU count 2026-08-14 11:40:02.866205: predict base end_record 08-15 13:05:00, final soc 1.12kWh, metric 921.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:15:00, load 30.5kWh, PV 0.0kWh 2026-08-14 11:40:03.007497: Battery has 0.58 hours left - now at 1.92kWh 2026-08-14 11:40:03.055428: predict base10 end_record 08-15 13:05:00, final soc 1.12kWh, metric 946.23p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:10:00, load 31.39kWh, PV 0.0kWh 2026-08-14 11:40:03.153631: predict best10 end_record 08-15 13:05:00, final soc 1.44kWh, metric 858.99p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:10:00, load 31.39kWh, PV 0.0kWh 2026-08-14 11:40:03.231493: predict best end_record 08-15 13:05:00, final soc 1.51kWh, metric 838.04p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:15:00, load 30.5kWh, PV 0.0kWh 2026-08-14 11:40:03.231573: Saving plan best values to HA entities 2026-08-14 11:40:03.384213: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 11:40:03.389060: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 11:40:03.393928: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.15kWh, house 4.94kWh, export 0.0kWh, metric 838.04p, metric10 858.99p 2026-08-14 11:40:03.467235: Marginal costs baseline metric (no standing charge): 788.0553 2026-08-14 11:40:03.691181: Marginal energy costs matrix computed: min=21.78 max=38.63 2026-08-14 11:40:03.756530: Rate array import [{'start': 700, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2225, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 700, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 11:40:03.757174: - Your estimated bill for today is £6.95 and tomorrow is £5.90 2026-08-14 11:40:03.757223: - Import rates are cheap (21.7p - 22.2p) for the next 4 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 11:40:03.757244: - The battery is currently at 12% and is in eco mode for the next 1 and a quarter hours. 2026-08-14 11:40:03.757259: - For the next 48 hours there will be no solar generation. 2026-08-14 11:40:03.757272: - You will run out of battery in 35 minutes. 2026-08-14 11:40:03.757286: - Your next charge slot will be in 1 and a quarter hours where import rates will be cheap (21.9p). 2026-08-14 11:40:03.757300: 2026-08-14 11:40:03.806966: Plan calculation took 1.08 seconds 2026-08-14 11:40:03.810649: No high rate period found 2026-08-14 11:40:03.865885: Import threshold used for optimisation was 25.52p 2026-08-14 11:40:03.921865: Low import rate windows [0: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 1: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 2: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 3: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 4: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 5: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 6: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 7: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 8: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 9: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 10: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 11: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 12: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 13: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 14: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 15: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 16: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 17: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 18: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 19: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 20: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 21: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 22: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 23: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 24: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 25: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 26: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 27: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 28: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 29: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 30: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 31: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 32: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 33: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 34: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 35: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 36: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 37: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 38: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 39: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 40: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 41: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 42: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 43: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 44: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 45: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 46: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 47: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 48: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 49: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 50: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 51: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 52: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 53: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 54: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 55: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 56: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 57: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 58: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 59: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 60: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 61: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 62: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 63: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 64: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 65: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 66: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 67: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 68: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 69: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 70: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 71: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 72: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 73: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 74: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 75: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 76: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 77: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 78: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 79: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 80: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 81: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 82: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 83: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 84: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 85: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 86: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 87: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 88: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 89: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 90: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 91: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 92: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 93: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 94: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 95: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62] 2026-08-14 11:40:03.929655: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 11:40:03.929800: Inverter 0 disabled charge window while waiting for schedule (now 08-14 11:40:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 11:40:03.929925: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:40:03.930194: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:40:03.930280: No export window planned 2026-08-14 11:40:03.930399: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 11:40:03.930436: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:40:03.930571: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:40:03.930757: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 11:40:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 11:40:03.930825: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 11:40:03.930935: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 11:40:03.931036: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:40:03.931078: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:40:03.931106: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:40:03.931137: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:40:03.931162: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:40:03.931215: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:40:03.931251: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:40:03.931319: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:40:03.931355: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:40:03.931382: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:40:03.931406: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:40:03.931435: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:40:03.931459: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:40:03.931485: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:40:03.931505: Inverter 0 count register writes 0 2026-08-14 11:40:03.947523: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 11:40:03.952907: Total inverter register writes now 806 2026-08-14 11:40:03.989995: Info: Completed run status Demand 2026-08-14 11:40:03.997788: Info: record_status Demand 2026-08-14 11:40:04.006337: Saved current settings to /config/predbat_config.json 2026-08-14 11:40:04.006734: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 11:40:44.116974: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:40:44.117306: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:40:44.117359: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:40:44.117541: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:40:44.117595: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:40:44.117625: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:40:44.117669: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:42:44.344244: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:42:44.344469: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:42:44.344511: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:42:44.344642: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:42:44.344680: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:42:44.344701: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:42:44.344719: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:44:58.581107: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:44:58.581358: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:44:58.581393: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:44:58.581591: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:44:58.581651: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:44:58.581677: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:44:58.581705: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:45:00.663262: --------------- PredBat - update at 2026-08-14 11:45:00+01:00 with clock skew 0 minutes, minutes now 705 2026-08-14 11:45:00.664074: Saved current settings to /config/predbat_config.json 2026-08-14 11:45:00.664215: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 5.0 minutes 2026-08-14 11:45:00.664294: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 11:45:00.664380: Autoupdate: Currently up to date 2026-08-14 11:45:00.683927: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 11:45:00.684090: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 11:45:00.684282: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 11:45:00.684758: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 11:45:00.684902: Predbat mode is set to Control charge & discharge 2026-08-14 11:45:00.845506: Found 21602 load_today datapoints going back 28 days 2026-08-14 11:45:00.845644: Using load_power data to fill gaps in load_today data 2026-08-14 11:45:01.564695: Processing 721 30-minute periods for power integration 2026-08-14 11:45:01.746563: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 11:45:01.746693: Car charging hold False, threshold 6.0kWh 2026-08-14 11:45:01.746741: Current data so far today: load 11.8kWh, import 12.5kWh, export 0.0kWh, PV 0kWh 2026-08-14 11:45:01.762965: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 11:45:01.763799: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 11:45:01.763893: Standing charge is set to 49.98p 2026-08-14 11:45:01.811791: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 11:45:01.811921: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 11:45:01.812124: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 70.0 minutes 2026-08-14 11:45:01.812502: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 70.0 minutes 2026-08-14 11:45:01.818378: Loaded 95 datapoints of futurerate analysis 2026-08-14 11:45:01.914649: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68'] 2026-08-14 11:45:01.974776: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 11:45:01.980172: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 11:45:01.980580: Import rates: min 14.97p, max 53.39p, average 27.24p 2026-08-14 11:45:02.026019: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 11:45:02.026198: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 11:45:02.027892: High export rate found rates in range 99p to -99p 2026-08-14 11:45:02.109189: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 11:45:02.109337: Car 0 charging is not planned as it is not plugged in 2026-08-14 11:45:02.121777: Battery level now 1.92kWh, -1hr ago 1.65kWh, at midnight 2.43kWh, battery value change in the last hour 3.5p, change today -6.58p, rate_forward 12.86p 2026-08-14 11:45:02.122170: Last hour: net energy 1.5kWh, import 1.5kWh, export 0.0kWh, car 0kWh, load 1.4kWh, net cost 33.82p, import 33.82p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 11:45:02.177452: Today's energy total net 12.5kWh, import 12.5kWh, export 0.0kWh, cost 359.47p, import 309.48p, export 0.0p, carbon 0.0kg 2026-08-14 11:45:02.177673: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 11:45:02.251603: Using weighted-bucket historical load forecast over 14 days 2026-08-14 11:45:02.273033: Today's load divergence 126.05%, in-day adjustment 136.01%, damping 0.95x, yesterday 146.81% today 124.75% blend 51.04% 2026-08-14 11:45:02.273139: Today's predicted so far 6.74kWh with 0.0kWh car/iBoost excluded, 4.41kWh import ignored, and 6.74kWh forecast extra. 2026-08-14 11:45:02.273183: Today's actual load so far 11.83kWh with 0.0kWh car/iBoost excluded, and 4.41kWh import ignored. 2026-08-14 11:45:02.310602: Inverter 0: Type SK Sunsynk 2026-08-14 11:45:02.310690: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 11:45:02.310958: Reserve min: 7%, battery_min: 7% 2026-08-14 11:45:02.311054: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 11:45:02.311317: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 709W, current battery voltage 51.2V, grid power -56W, load power 784W, PV Power 0W 2026-08-14 11:45:02.311521: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:45:02.311626: Inverter 0 scheduled charge enable is False 2026-08-14 11:45:02.311662: Inverter 0 charge windows currently [] 2026-08-14 11:45:02.311690: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 11:45:02.311803: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:45:02.311858: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:45:02.311898: Inverter 0 scheduled discharge enable is False 2026-08-14 11:45:02.312038: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:45:02.312075: Inverter 0 discharge windows currently [] 2026-08-14 11:45:02.312099: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:45:02.312118: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:45:02.312136: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:45:02.371196: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 11:45:02.371326: Plan was last updated on 2026-08-14 11:35:00+01:00 and is now 10.0 minutes old 2026-08-14 11:45:02.371588: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 11:45:02.371649: Best export window [ ] 2026-08-14 11:45:02.372567: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 11:45:02.375897: Load divergence over 8.0 hours mean 389.2W, min 220.2W, max 1101.0W, std dev 149.17W, divergence 19.16% 2026-08-14 11:45:02.392143: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 11:45:02.392243: LoadML is_calculating False 2026-08-14 11:45:02.392297: Creating pool of 12 processes to match your CPU count 2026-08-14 11:45:02.495733: predict base end_record 08-15 13:10:00, final soc 1.12kWh, metric 923.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:10:00, load 30.54kWh, PV 0.0kWh 2026-08-14 11:45:02.622812: Battery has 0.42 hours left - now at 1.76kWh 2026-08-14 11:45:02.661242: predict base10 end_record 08-15 13:10:00, final soc 1.12kWh, metric 948.14p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:10:00, load 31.43kWh, PV 0.0kWh 2026-08-14 11:45:02.732130: predict best10 end_record 08-15 13:10:00, final soc 1.77kWh, metric 866.22p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:10:00, load 31.43kWh, PV 0.0kWh 2026-08-14 11:45:02.802798: predict best end_record 08-15 13:10:00, final soc 1.9kWh, metric 846.26p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:10:00, load 30.54kWh, PV 0.0kWh 2026-08-14 11:45:02.802885: Saving plan best values to HA entities 2026-08-14 11:45:02.958456: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 11:45:02.963393: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 11:45:02.968412: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.62kWh, house 4.98kWh, export 0.0kWh, metric 846.26p, metric10 866.22p 2026-08-14 11:45:03.034480: Marginal costs baseline metric (no standing charge): 796.2803 2026-08-14 11:45:03.264406: Marginal energy costs matrix computed: min=21.8 max=38.93 2026-08-14 11:45:03.324686: Rate array import [{'start': 705, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2230, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 705, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 11:45:03.325275: - Your estimated bill for today is £6.96 and tomorrow is £5.92 2026-08-14 11:45:03.325324: - Import rates are cheap (21.7p - 22.2p) for the next 4 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 11:45:03.325344: - The battery is currently at 11% and is in eco mode for the next 1 and a quarter hours. 2026-08-14 11:45:03.325359: - For the next 48 hours there will be no solar generation. 2026-08-14 11:45:03.325373: - You will run out of battery in 25 minutes. 2026-08-14 11:45:03.325387: - Your next charge slot will be in 1 and a quarter hours where import rates will be cheap (21.9p). 2026-08-14 11:45:03.325405: 2026-08-14 11:45:03.370445: Plan calculation took 1.00 seconds 2026-08-14 11:45:03.373717: No high rate period found 2026-08-14 11:45:03.427964: Import threshold used for optimisation was 25.52p 2026-08-14 11:45:03.478237: Low import rate windows [0: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 1: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 2: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 3: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 4: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 5: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 6: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 7: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 8: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 9: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 10: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 11: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 12: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 13: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 14: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 15: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 16: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 17: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 18: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 19: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 20: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 21: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 22: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 23: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 24: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 25: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 26: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 27: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 28: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 29: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 30: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 31: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 32: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 33: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 34: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 35: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 36: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 37: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 38: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 39: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 40: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 41: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 42: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 43: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 44: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 45: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 46: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 47: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 48: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 49: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 50: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 51: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 52: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 53: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 54: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 55: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 56: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 57: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 58: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 59: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 60: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 61: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 62: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 63: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 64: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 65: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 66: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 67: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 68: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 69: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 70: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 71: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 72: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 73: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 74: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 75: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 76: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 77: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 78: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 79: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 80: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 81: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 82: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 83: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 84: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 85: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 86: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 87: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 88: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 89: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 90: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 91: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 92: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 93: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 94: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 95: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62] 2026-08-14 11:45:03.485864: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 11:45:03.485983: Inverter 0 disabled charge window while waiting for schedule (now 08-14 11:45:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 11:45:03.486076: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:45:03.486292: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:45:03.486363: No export window planned 2026-08-14 11:45:03.486457: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 11:45:03.486486: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:45:03.486597: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:45:03.486750: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 11:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 11:45:03.486806: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 11:45:03.486867: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 11:45:03.486953: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:45:03.486982: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:45:03.487004: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:45:03.487026: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:45:03.487055: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:45:03.487076: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:45:03.487095: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:45:03.487153: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:45:03.487181: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:45:03.487201: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:45:03.487220: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:45:03.487243: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:45:03.487262: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:45:03.487288: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:45:03.487308: Inverter 0 count register writes 0 2026-08-14 11:45:03.502587: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 11:45:03.502743: Recompute is saving previous plan... 2026-08-14 11:45:03.505344: Best charge window [ 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 0% ] 2026-08-14 11:45:03.505428: Best export window [ ] 2026-08-14 11:45:03.506084: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 11:45:03.508651: Load divergence over 8.0 hours mean 389.2W, min 220.2W, max 1101.0W, std dev 149.17W, divergence 19.16% 2026-08-14 11:45:03.524179: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 11:45:03.524282: LoadML is_calculating False 2026-08-14 11:45:03.524365: Creating pool of 12 processes to match your CPU count 2026-08-14 11:45:03.596624: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 11:45:03.598752: Optimise levels pass started at 2026-08-14 11:45:03 2026-08-14 11:45:03.598812: Optimise all windows, total charge 95 export 1 2026-08-14 11:45:04.538902: >> Region optimisation pass width 960 gives best_metric 1017.08p, best_cost 1024.3p, best_cycle 47.2kWh, best_import 35.1kWh 2026-08-14 11:45:04.944047: >> Region optimisation pass width 480 gives best_metric 1017.08p, best_cost 1024.3p, best_cycle 47.2kWh, best_import 35.1kWh 2026-08-14 11:45:05.386092: >> Region optimisation pass width 240 gives best_metric 1017.08p, best_cost 1024.3p, best_cycle 47.2kWh, best_import 35.1kWh 2026-08-14 11:45:06.492555: >> Region optimisation pass width 120 gives best_metric 1017.08p, best_cost 1024.3p, best_cycle 47.2kWh, best_import 35.1kWh 2026-08-14 11:45:06.493008: Calculated end_record as 08-15 13:00:00 based on best_price 22.02p, next_charge_start 08-14 13:00:00, max_windows 50 2026-08-14 11:45:06.493117: Optimise levels pass ended at 2026-08-14 11:45:06, duration 2.9 seconds tried 299 combinations 2026-08-14 11:45:06.493231: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1017.08p, best_keep 0kWh, best_cycle 47.2kWh, best_carbon 0kg, best_import 35.1kWh 2026-08-14 11:45:06.513817: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 16.0, 16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 11:45:10.229665: Tweak plan optimisation started metric 770.28p, cost 781.43p 2026-08-14 11:45:10.562960: Tweak optimisation finished metric 770.28p, cost 781.43p, metric_keep 0kWh, cycle 24.05kWh, carbon 0kg, import 19.69kWh, changed 8 window(s) 2026-08-14 11:45:10.582423: Swap charge optimisation started metric 770.28p, cost 781.43p, min_improvement_swap 0.1p 2026-08-14 11:45:12.835381: Swap charge optimisation finished metric 770.28p, cost 781.43p 2026-08-14 11:45:12.912431: Pruned 1 dead plan slot(s) in 7 trial(s), nominal metric 767.03p -> 767.03p, plan now metric 770.29p, cost 781.43p, cycle 24.05kWh, import 19.69kWh 2026-08-14 11:45:12.923339: Raw charge windows [ 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100% ] reserve 1.12 2026-08-14 11:45:12.923875: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 16-08 12:00:00 @ 17.77p 100% ] reserve 1.12 2026-08-14 11:45:12.924037: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 16-08 12:00:00 @ 17.77p 100% ] reserve 1.12 2026-08-14 11:45:12.924176: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 13:00:00 - 16-08 12:00:00 @ 17.77p 100% ] reserve 1.12 2026-08-14 11:45:12.955555: Previous plan best metric is 770.32 (cost 781.41) and new plan best metric is 770.28 (cost 781.43) 2026-08-14 11:45:12.955740: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 11:45:12.955935: Plan valid is now true after recompute was False 2026-08-14 11:45:12.980247: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 921.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:10:00, load 30.42kWh, PV 0.0kWh 2026-08-14 11:45:13.080651: Battery has 0.42 hours left - now at 1.76kWh 2026-08-14 11:45:13.132520: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 946.18p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:10:00, load 31.31kWh, PV 0.0kWh 2026-08-14 11:45:13.201090: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 853.43p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:10:00, load 31.31kWh, PV 0.0kWh 2026-08-14 11:45:13.281456: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 831.4p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:10:00, load 30.42kWh, PV 0.0kWh 2026-08-14 11:45:13.281550: Saving plan best values to HA entities 2026-08-14 11:45:13.422286: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 11:45:13.427580: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 11:45:13.436208: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 14.67kWh, house 4.98kWh, export 0.0kWh, metric 831.4p, metric10 853.43p 2026-08-14 11:45:13.504586: Marginal costs baseline metric (no standing charge): 781.4147 2026-08-14 11:45:13.726854: Marginal energy costs matrix computed: min=21.8 max=38.93 2026-08-14 11:45:13.787481: Rate array import [{'start': 705, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 705, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 11:45:13.788018: - Your estimated bill for today is £6.96 and tomorrow is £5.92 2026-08-14 11:45:13.788056: - Import rates are cheap (21.7p - 22.2p) for the next 4 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 11:45:13.788075: - The battery is currently at 11% and is in eco mode for the next 1 and a quarter hours. 2026-08-14 11:45:13.788090: - For the next 48 hours there will be no solar generation. 2026-08-14 11:45:13.788103: - You will run out of battery in 25 minutes. 2026-08-14 11:45:13.788135: - Your next charge slot will be in 1 and a quarter hours where import rates will be cheap (21.9p). 2026-08-14 11:45:13.788150: 2026-08-14 11:45:13.833227: Plan calculation took 10.33 seconds 2026-08-14 11:45:13.833615: Inverter 0: Type SK Sunsynk 2026-08-14 11:45:13.833667: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 11:45:13.833951: Reserve min: 7%, battery_min: 7% 2026-08-14 11:45:13.834043: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 11:45:13.834398: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 788W, current battery voltage 51.2V, grid power -56W, load power 859W, PV Power 0W 2026-08-14 11:45:13.834688: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:45:13.834825: Inverter 0 scheduled charge enable is False 2026-08-14 11:45:13.834889: Inverter 0 charge windows currently [] 2026-08-14 11:45:13.834925: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 11:45:13.835093: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:45:13.835136: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:45:13.835185: Inverter 0 scheduled discharge enable is False 2026-08-14 11:45:13.835363: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:45:13.835407: Inverter 0 discharge windows currently [] 2026-08-14 11:45:13.835443: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:45:13.835481: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:45:13.835522: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:45:13.897965: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 11:45:13.898155: Inverter 0 disabled charge window while waiting for schedule (now 08-14 11:45:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 11:45:13.898266: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:45:13.898561: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:45:13.898683: No export window planned 2026-08-14 11:45:13.898895: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 11:45:13.898957: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:45:13.899185: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:45:13.899436: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 11:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 11:45:13.899520: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 11:45:13.899612: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 11:45:13.899726: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:45:13.899761: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:45:13.899795: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:45:13.899821: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:45:13.899868: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:45:13.899923: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:45:13.899950: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:45:13.900017: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:45:13.900046: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:45:13.900082: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:45:13.900107: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:45:13.900131: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:45:13.900155: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:45:13.900179: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:45:13.900204: Inverter 0 count register writes 0 2026-08-14 11:45:13.921313: Total inverter register writes now 806 2026-08-14 11:45:13.953160: Info: Completed run status Demand 2026-08-14 11:45:13.959232: Info: record_status Demand 2026-08-14 11:45:13.965909: Saved current settings to /config/predbat_config.json 2026-08-14 11:45:13.966148: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 11:45:44.061114: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:45:44.061341: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:45:44.061376: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:45:44.061551: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:45:44.061590: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:45:44.061612: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:45:44.061630: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:47:44.285160: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:47:44.285503: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:47:44.285558: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:47:44.285715: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:47:44.285777: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:47:44.285824: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:47:44.285881: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:48:11.407294: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 11:48:12.464496: Processing 1345 30-minute periods for power integration 2026-08-14 11:48:12.579450: ML Component: Car charging hold False, car energy reported load False 2026-08-14 11:48:12.682071: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 11:48:12.787457: ML Temperature data points: 49696 2026-08-14 11:48:13.085093: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 11:48:13.120992: ML Component: Data fetch completed, load data age 55.0 days, 16118 data points 2026-08-14 11:48:13.121114: ML Component: No training needed, model age is 1.93 hours 2026-08-14 11:48:13.121180: ML Component: Generating predictions load data age 55.0 days, 16118 data points 2026-08-14 11:48:13.259799: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0627 max_dow {0: 0.10500312496256084, 1: 0.10763750054407865, 2: 0.11822499983031302, 3: 0.1251781244263053, 4: 0.1736281253574416, 5: 0.10149375002831221, 6: 0.10796875073947013} 2026-08-14 11:48:13.767644: ML Component: Generated 576 predictions (total 38.55 kWh over 48h) 2026-08-14 11:48:13.807250: ML Component: Prediction cycle completed 2026-08-14 11:48:13.921065: ML Component: Saved 16118 steps (55 days) of history to /config/predbat_ml_history.npz 2026-08-14 11:49:59.128679: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:49:59.128936: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:49:59.129026: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:49:59.129192: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:49:59.129250: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:49:59.129273: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:49:59.129290: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:50:00.216037: --------------- PredBat - update at 2026-08-14 11:50:00+01:00 with clock skew 0 minutes, minutes now 710 2026-08-14 11:50:00.217182: Saved current settings to /config/predbat_config.json 2026-08-14 11:50:00.217410: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 10.0 minutes 2026-08-14 11:50:00.217565: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 11:50:00.217758: Autoupdate: Currently up to date 2026-08-14 11:50:00.237251: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 11:50:00.237377: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 11:50:00.237553: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 11:50:00.238107: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 11:50:00.238236: Predbat mode is set to Control charge & discharge 2026-08-14 11:50:00.447529: Found 21602 load_today datapoints going back 28 days 2026-08-14 11:50:00.447673: Using load_power data to fill gaps in load_today data 2026-08-14 11:50:01.268800: Processing 721 30-minute periods for power integration 2026-08-14 11:50:01.471444: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 11:50:01.471581: Car charging hold False, threshold 6.0kWh 2026-08-14 11:50:01.471629: Current data so far today: load 11.75kWh, import 12.5kWh, export 0.0kWh, PV 0kWh 2026-08-14 11:50:01.487999: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 11:50:01.488815: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 11:50:01.488908: Standing charge is set to 49.98p 2026-08-14 11:50:01.539802: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 11:50:01.539967: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 11:50:01.540201: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 75.0 minutes 2026-08-14 11:50:01.540791: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 75.0 minutes 2026-08-14 11:50:01.548300: Loaded 95 datapoints of futurerate analysis 2026-08-14 11:50:01.637786: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68'] 2026-08-14 11:50:01.693802: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 11:50:01.699390: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 11:50:01.699711: Import rates: min 14.97p, max 53.39p, average 27.23p 2026-08-14 11:50:01.740318: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 11:50:01.740436: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 11:50:01.741558: High export rate found rates in range 99p to -99p 2026-08-14 11:50:01.816009: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 11:50:01.816132: Car 0 charging is not planned as it is not plugged in 2026-08-14 11:50:01.827124: Battery level now 1.76kWh, -1hr ago 1.65kWh, at midnight 2.43kWh, battery value change in the last hour 1.44p, change today -8.64p, rate_forward 12.86p 2026-08-14 11:50:01.827488: Last hour: net energy 1.3kWh, import 1.3kWh, export 0.0kWh, car 0kWh, load 1.25kWh, net cost 29.28p, import 29.28p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 11:50:01.875250: Today's energy total net 12.5kWh, import 12.5kWh, export 0.0kWh, cost 359.47p, import 309.48p, export 0.0p, carbon 0.0kg 2026-08-14 11:50:01.875389: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 11:50:01.948230: Using weighted-bucket historical load forecast over 14 days 2026-08-14 11:50:01.969422: Today's load divergence 125.46%, in-day adjustment 135.66%, damping 0.95x, yesterday 146.81% today 124.19% blend 50.69% 2026-08-14 11:50:01.969493: Today's predicted so far 6.8kWh with 0.0kWh car/iBoost excluded, 4.48kWh import ignored, and 6.8kWh forecast extra. 2026-08-14 11:50:01.969519: Today's actual load so far 11.74kWh with 0.0kWh car/iBoost excluded, and 4.48kWh import ignored. 2026-08-14 11:50:01.999555: Inverter 0: Type SK Sunsynk 2026-08-14 11:50:01.999641: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 11:50:01.999814: Reserve min: 7%, battery_min: 7% 2026-08-14 11:50:01.999911: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 11:50:02.000189: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 508W, current battery voltage 51.2V, grid power -54W, load power 575W, PV Power 0W 2026-08-14 11:50:02.000379: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:50:02.000465: Inverter 0 scheduled charge enable is False 2026-08-14 11:50:02.000517: Inverter 0 charge windows currently [] 2026-08-14 11:50:02.000553: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 11:50:02.000697: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:50:02.000740: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:50:02.000773: Inverter 0 scheduled discharge enable is False 2026-08-14 11:50:02.000931: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:50:02.001001: Inverter 0 discharge windows currently [] 2026-08-14 11:50:02.001027: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:50:02.001043: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:50:02.001066: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:50:02.057178: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 11:50:02.057314: Plan was last updated on 2026-08-14 11:45:00+01:00 and is now 5.0 minutes old 2026-08-14 11:50:02.057562: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 11:50:02.057607: Best export window [ ] 2026-08-14 11:50:02.058310: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 11:50:02.060849: Load divergence over 8.0 hours mean 385.96W, min 235.2W, max 1260.6W, std dev 158.67W, divergence 20.55% 2026-08-14 11:50:02.076776: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 11:50:02.076865: LoadML is_calculating False 2026-08-14 11:50:02.076923: Creating pool of 12 processes to match your CPU count 2026-08-14 11:50:02.181118: predict base end_record 08-15 13:05:00, final soc 1.12kWh, metric 919.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:20:00, load 30.32kWh, PV 0.0kWh 2026-08-14 11:50:02.318505: Battery has 0.5 hours left - now at 1.76kWh 2026-08-14 11:50:02.357090: predict base10 end_record 08-15 13:05:00, final soc 1.12kWh, metric 944.01p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:15:00, load 31.2kWh, PV 0.0kWh 2026-08-14 11:50:02.424229: predict best10 end_record 08-15 13:05:00, final soc 1.44kWh, metric 857.01p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:15:00, load 31.2kWh, PV 0.0kWh 2026-08-14 11:50:02.492054: predict best end_record 08-15 13:05:00, final soc 1.51kWh, metric 836.23p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:20:00, load 30.32kWh, PV 0.0kWh 2026-08-14 11:50:02.492131: Saving plan best values to HA entities 2026-08-14 11:50:02.654428: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 11:50:02.660064: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 11:50:02.665831: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.14kWh, house 4.87kWh, export 0.0kWh, metric 836.23p, metric10 857.01p 2026-08-14 11:50:02.735860: Marginal costs baseline metric (no standing charge): 786.2418 2026-08-14 11:50:02.974985: Marginal energy costs matrix computed: min=21.82 max=39.21 2026-08-14 11:50:03.034433: Rate array import [{'start': 710, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2225, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 710, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 11:50:03.035017: - Your estimated bill for today is £6.93 and tomorrow is £5.92 2026-08-14 11:50:03.035059: - Import rates are cheap (21.7p - 22.2p) for the next 4 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 11:50:03.035079: - The battery is currently at 11% and is in eco mode for the next 1 and a quarter hours. 2026-08-14 11:50:03.035094: - For the next 48 hours there will be no solar generation. 2026-08-14 11:50:03.035108: - You will run out of battery in 30 minutes. 2026-08-14 11:50:03.035122: - Your next charge slot will be in 1 and a quarter hours where import rates will be cheap (21.9p). 2026-08-14 11:50:03.035135: 2026-08-14 11:50:03.081456: Plan calculation took 1.02 seconds 2026-08-14 11:50:03.084317: No high rate period found 2026-08-14 11:50:03.133804: Import threshold used for optimisation was 25.52p 2026-08-14 11:50:03.178914: Low import rate windows [0: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 1: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 2: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 3: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 4: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 5: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 6: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 7: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 8: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 9: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 10: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 11: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 12: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 13: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 14: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 15: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 16: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 17: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 18: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 19: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 20: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 21: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 22: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 23: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 24: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 25: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 26: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 27: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 28: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 29: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 30: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 31: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 32: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 33: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 34: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 35: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 36: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 37: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 38: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 39: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 40: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 41: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 42: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 43: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 44: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 45: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 46: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 47: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 48: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 49: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 50: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 51: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 52: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 53: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 54: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 55: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 56: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 57: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 58: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 59: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 60: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 61: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 62: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 63: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 64: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 65: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 66: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 67: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 68: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 69: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 70: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 71: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 72: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 73: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 74: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 75: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 76: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 77: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 78: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 79: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 80: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 81: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 82: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 83: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 84: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 85: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 86: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 87: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 88: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 89: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 90: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 91: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 92: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 93: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 94: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 95: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62] 2026-08-14 11:50:03.185541: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 11:50:03.185660: Inverter 0 disabled charge window while waiting for schedule (now 08-14 11:50:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 11:50:03.185749: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:50:03.185979: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:50:03.186053: No export window planned 2026-08-14 11:50:03.186143: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 11:50:03.186172: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:50:03.186280: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:50:03.186434: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 11:50:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 11:50:03.186488: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 11:50:03.186539: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 11:50:03.186619: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:50:03.186651: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:50:03.186674: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:50:03.186694: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:50:03.186713: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:50:03.186732: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:50:03.186751: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:50:03.186805: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:50:03.186828: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:50:03.186891: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:50:03.186915: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:50:03.186934: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:50:03.186955: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:50:03.186975: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:50:03.186997: Inverter 0 count register writes 0 2026-08-14 11:50:03.200487: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 11:50:03.205012: Total inverter register writes now 806 2026-08-14 11:50:03.232981: Info: Completed run status Demand 2026-08-14 11:50:03.239031: Info: record_status Demand 2026-08-14 11:50:03.245733: Saved current settings to /config/predbat_config.json 2026-08-14 11:50:03.246088: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 11:50:14.115350: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 11:50:15.089307: Processing 1345 30-minute periods for power integration 2026-08-14 11:50:15.179639: ML Component: Car charging hold False, car energy reported load False 2026-08-14 11:50:15.274222: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 11:50:15.360957: ML Temperature data points: 49691 2026-08-14 11:50:15.615959: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 11:50:15.653459: ML Component: Data fetch completed, load data age 55.0 days, 16119 data points 2026-08-14 11:50:15.653577: ML Component: Starting fine-tune training (2h interval), model age is 2.0119534369444443 hours 2026-08-14 11:50:15.653605: ML Component: Doing training... 2026-08-14 11:50:15.668981: ML Predictor: Curriculum training - capped to last 4 intermediate passes (starting at window=52.0 days) 2026-08-14 11:50:15.669332: ML Predictor: Curriculum training - 5 passes, window 52.0→55.0 days + final full pass (56.0 days) 2026-08-14 11:50:15.708267: ML Predictor: Curriculum pass 1/5: window=52.0 days (1248 hours of data) 2026-08-14 11:50:15.708861: ML Predictor: Starting initial training with 30 epochs 2026-08-14 11:50:16.190911: ML Predictor: Creating dataset with 1248 hours of training data, 48 hours validation 2026-08-14 11:50:20.284541: ML Predictor: Created 14688 training samples, 576 validation samples 2026-08-14 11:50:20.329483: ML Predictor: Normalization stats [fit] target(mean=0.0588 std=0.0471) load(mean=0.0587 std=0.0469) pv(mean=0.0000 std=0.0100) temp(mean=19.5284 std=4.4108) import_rate(mean=24.2360 std=1.9826) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1938 std=0.5220) 2026-08-14 11:50:32.749353: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0103 val_mae=0.0030 kWh val_bias=+0.0008 kWh (+1.2%) combined=0.0030 kWh ema_combined=0.0030 kWh 2026-08-14 11:50:43.575861: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0147 val_mae=0.0034 kWh val_bias=-0.0008 kWh (-1.2%) combined=0.0023 kWh ema_combined=0.0028 kWh 2026-08-14 11:50:44.349741: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:50:44.350155: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:50:44.350289: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:50:44.350515: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:50:44.350646: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:50:44.350735: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:50:44.350862: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:50:54.352381: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0256 val_mae=0.0047 kWh val_bias=-0.0019 kWh (-2.9%) combined=0.0026 kWh ema_combined=0.0027 kWh 2026-08-14 11:51:05.510675: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0220 val_mae=0.0032 kWh val_bias=-0.0010 kWh (-1.5%) combined=0.0021 kWh ema_combined=0.0025 kWh 2026-08-14 11:51:18.460298: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0193 val_mae=0.0032 kWh val_bias=-0.0007 kWh (-1.0%) combined=0.0022 kWh ema_combined=0.0024 kWh 2026-08-14 11:51:29.832549: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0141 val_mae=0.0031 kWh val_bias=-0.0005 kWh (-0.8%) combined=0.0019 kWh ema_combined=0.0023 kWh 2026-08-14 11:51:44.500056: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0136 val_mae=0.0028 kWh val_bias=-0.0003 kWh (-0.4%) combined=0.0017 kWh ema_combined=0.0021 kWh 2026-08-14 11:51:55.543986: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0120 val_mae=0.0022 kWh val_bias=-0.0004 kWh (-0.7%) combined=0.0012 kWh ema_combined=0.0018 kWh 2026-08-14 11:52:08.888757: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0104 val_mae=0.0022 kWh val_bias=+0.0004 kWh (+0.5%) combined=0.0016 kWh ema_combined=0.0017 kWh 2026-08-14 11:52:24.226908: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0098 val_mae=0.0022 kWh val_bias=-0.0008 kWh (-1.3%) combined=0.0015 kWh ema_combined=0.0017 kWh 2026-08-14 11:52:39.761364: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0098 val_mae=0.0022 kWh val_bias=-0.0006 kWh (-0.9%) combined=0.0013 kWh ema_combined=0.0016 kWh 2026-08-14 11:52:56.339423: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0083 val_mae=0.0020 kWh val_bias=+0.0003 kWh (+0.5%) combined=0.0015 kWh ema_combined=0.0015 kWh 2026-08-14 11:52:58.711674: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:52:58.712373: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:52:58.712453: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:52:58.712759: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:52:58.712824: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:52:58.712925: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:52:58.713045: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:53:13.619417: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0074 val_mae=0.0019 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0016 kWh ema_combined=0.0015 kWh 2026-08-14 11:53:26.481102: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0078 val_mae=0.0018 kWh val_bias=-0.0005 kWh (-0.7%) combined=0.0010 kWh ema_combined=0.0014 kWh 2026-08-14 11:53:40.427234: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0069 val_mae=0.0018 kWh val_bias=-0.0002 kWh (-0.3%) combined=0.0013 kWh ema_combined=0.0014 kWh 2026-08-14 11:53:52.903653: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0065 val_mae=0.0018 kWh val_bias=+0.0001 kWh (+0.1%) combined=0.0014 kWh ema_combined=0.0014 kWh 2026-08-14 11:54:07.743201: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0071 val_mae=0.0016 kWh val_bias=-0.0000 kWh (-0.0%) combined=0.0008 kWh ema_combined=0.0012 kWh 2026-08-14 11:54:21.353018: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0062 val_mae=0.0016 kWh val_bias=-0.0006 kWh (-0.9%) combined=0.0012 kWh ema_combined=0.0012 kWh 2026-08-14 11:54:33.699233: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0054 val_mae=0.0014 kWh val_bias=-0.0002 kWh (-0.3%) combined=0.0009 kWh ema_combined=0.0011 kWh 2026-08-14 11:54:45.641900: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0057 val_mae=0.0017 kWh val_bias=-0.0008 kWh (-1.2%) combined=0.0012 kWh ema_combined=0.0011 kWh 2026-08-14 11:54:58.642681: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0056 val_mae=0.0014 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0008 kWh ema_combined=0.0010 kWh 2026-08-14 11:54:59.101547: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:54:59.101819: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:54:59.101891: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:54:59.102062: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:54:59.102109: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:54:59.102136: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:54:59.102171: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:55:00.269526: --------------- PredBat - update at 2026-08-14 11:55:00+01:00 with clock skew 0 minutes, minutes now 715 2026-08-14 11:55:00.270531: Saved current settings to /config/predbat_config.json 2026-08-14 11:55:00.270667: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 15.0 minutes 2026-08-14 11:55:00.270810: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 11:55:00.271423: Autoupdate: Currently up to date 2026-08-14 11:55:00.313971: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 11:55:00.314132: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 11:55:00.314380: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 11:55:00.315055: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 11:55:00.315213: Predbat mode is set to Control charge & discharge 2026-08-14 11:55:00.737381: Found 21602 load_today datapoints going back 28 days 2026-08-14 11:55:00.737658: Using load_power data to fill gaps in load_today data 2026-08-14 11:55:01.943437: Processing 721 30-minute periods for power integration 2026-08-14 11:55:02.135376: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 11:55:02.135520: Car charging hold False, threshold 6.0kWh 2026-08-14 11:55:02.135564: Current data so far today: load 11.8kWh, import 12.5kWh, export 0.0kWh, PV 0kWh 2026-08-14 11:55:02.155858: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 11:55:02.157583: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 11:55:02.157856: Standing charge is set to 49.98p 2026-08-14 11:55:02.320204: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 11:55:02.320383: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 11:55:02.320730: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 80.0 minutes 2026-08-14 11:55:02.321485: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 80.0 minutes 2026-08-14 11:55:02.347053: Loaded 95 datapoints of futurerate analysis 2026-08-14 11:55:02.451652: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68'] 2026-08-14 11:55:02.506086: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 11:55:02.511972: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 11:55:02.512448: Import rates: min 14.97p, max 53.39p, average 27.22p 2026-08-14 11:55:02.591754: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 11:55:02.591930: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 11:55:02.593814: High export rate found rates in range 99p to -99p 2026-08-14 11:55:02.789432: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 11:55:02.790137: Car 0 charging is not planned as it is not plugged in 2026-08-14 11:55:02.808013: Battery level now 1.76kWh, -1hr ago 2.0kWh, at midnight 2.43kWh, battery value change in the last hour -3.09p, change today -8.64p, rate_forward 12.86p 2026-08-14 11:55:02.808539: Last hour: net energy 1.1kWh, import 1.1kWh, export 0.0kWh, car 0kWh, load 1.2kWh, net cost 24.75p, import 24.75p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 11:55:02.938108: Today's energy total net 12.5kWh, import 12.5kWh, export 0.0kWh, cost 359.47p, import 309.48p, export 0.0p, carbon 0.0kg 2026-08-14 11:55:02.938328: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 11:55:03.066651: Using weighted-bucket historical load forecast over 14 days 2026-08-14 11:55:03.094712: Today's load divergence 125.16%, in-day adjustment 135.44%, damping 0.95x, yesterday 146.81% today 123.9% blend 50.35% 2026-08-14 11:55:03.094943: Today's predicted so far 6.86kWh with 0.0kWh car/iBoost excluded, 4.57kWh import ignored, and 6.86kWh forecast extra. 2026-08-14 11:55:03.095003: Today's actual load so far 11.72kWh with 0.0kWh car/iBoost excluded, and 4.57kWh import ignored. 2026-08-14 11:55:03.144186: Inverter 0: Type SK Sunsynk 2026-08-14 11:55:03.144285: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 11:55:03.144555: Reserve min: 7%, battery_min: 7% 2026-08-14 11:55:03.144657: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 11:55:03.145070: Inverter 0 SoC: 1.74kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 1168W, current battery voltage 51.2V, grid power -56W, load power 1234W, PV Power 0W 2026-08-14 11:55:03.145268: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:55:03.145377: Inverter 0 scheduled charge enable is False 2026-08-14 11:55:03.145422: Inverter 0 charge windows currently [] 2026-08-14 11:55:03.145466: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 11:55:03.145597: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:55:03.145666: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:55:03.145712: Inverter 0 scheduled discharge enable is False 2026-08-14 11:55:03.145899: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:55:03.145948: Inverter 0 discharge windows currently [] 2026-08-14 11:55:03.145978: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:55:03.146010: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:55:03.146034: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:55:03.240292: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 11:55:03.240429: Plan was last updated on 2026-08-14 11:45:00+01:00 and is now 10.0 minutes old 2026-08-14 11:55:03.240801: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 11:55:03.240879: Best export window [ ] 2026-08-14 11:55:03.242179: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 11:55:03.245363: Load divergence over 8.0 hours mean 384.68W, min 247.2W, max 1439.4W, std dev 178.84W, divergence 23.25% 2026-08-14 11:55:03.269853: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 11:55:03.270003: LoadML is_calculating True 2026-08-14 11:55:03.270042: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 11:55:03.322731: predict base end_record 08-15 13:10:00, final soc 1.12kWh, metric 917.86p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:25:00, load 30.32kWh, PV 0.0kWh 2026-08-14 11:55:03.531865: Battery has 0.5 hours left - now at 1.74kWh 2026-08-14 11:55:03.604657: predict base10 end_record 08-15 13:10:00, final soc 1.12kWh, metric 942.68p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:20:00, load 31.2kWh, PV 0.0kWh 2026-08-14 11:55:03.777879: predict best10 end_record 08-15 13:10:00, final soc 1.77kWh, metric 861.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:20:00, load 31.2kWh, PV 0.0kWh 2026-08-14 11:55:03.922938: predict best end_record 08-15 13:10:00, final soc 1.9kWh, metric 841.66p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:25:00, load 30.32kWh, PV 0.0kWh 2026-08-14 11:55:03.937183: Saving plan best values to HA entities 2026-08-14 11:55:04.311113: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 11:55:04.331461: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 11:55:04.341535: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.63kWh, house 4.77kWh, export 0.0kWh, metric 841.66p, metric10 861.27p 2026-08-14 11:55:04.520602: Marginal costs baseline metric (no standing charge): 791.6753 2026-08-14 11:55:04.822371: Marginal energy costs matrix computed: min=21.84 max=39.47 2026-08-14 11:55:04.902909: Rate array import [{'start': 715, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2230, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 715, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 11:55:04.903651: - Your estimated bill for today is £6.91 and tomorrow is £5.92 2026-08-14 11:55:04.903840: - Import rates are cheap (21.7p - 22.2p) for the next 4 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 11:55:04.904088: - The battery is currently at 11% and is in eco mode for the next 1 hour. 2026-08-14 11:55:04.904333: - For the next 48 hours there will be no solar generation. 2026-08-14 11:55:04.904549: - You will run out of battery in 30 minutes. 2026-08-14 11:55:04.904842: - Your next charge slot will be in 1 hour where import rates will be cheap (21.9p). 2026-08-14 11:55:04.905145: 2026-08-14 11:55:04.966943: Plan calculation took 1.73 seconds 2026-08-14 11:55:04.971957: No high rate period found 2026-08-14 11:55:05.075520: Import threshold used for optimisation was 25.52p 2026-08-14 11:55:05.187179: Low import rate windows [0: 08-14 11:30:00 - 08-14 12:00:00 @ 22.19, 1: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 2: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 3: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 4: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 5: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 6: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 7: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 8: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 9: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 10: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 11: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 12: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 13: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 14: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 15: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 16: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 17: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 18: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 19: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 20: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 21: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 22: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 23: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 24: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 25: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 26: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 27: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 28: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 29: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 30: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 31: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 32: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 33: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 34: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 35: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 36: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 37: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 38: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 39: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 40: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 41: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 42: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 43: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 44: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 45: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 46: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 47: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 48: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 49: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 50: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 51: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 52: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 53: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 54: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 55: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 56: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 57: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 58: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 59: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 60: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 61: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 62: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 63: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 64: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 65: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 66: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 67: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 68: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 69: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 70: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 71: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 72: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 73: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 74: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 75: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 76: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 77: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 78: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 79: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 80: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 81: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 82: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 83: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 84: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 85: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 86: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 87: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 88: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 89: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 90: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 91: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 92: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 93: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 94: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 95: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62] 2026-08-14 11:55:05.211905: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 11:55:05.212068: Inverter 0 disabled charge window while waiting for schedule (now 08-14 11:55:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 11:55:05.212140: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:55:05.212423: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:55:05.212540: No export window planned 2026-08-14 11:55:05.212708: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 11:55:05.212754: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:55:05.212976: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:55:05.213221: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 11:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 11:55:05.213383: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 11:55:05.213512: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 11:55:05.213640: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:55:05.213691: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:55:05.213757: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:55:05.213870: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:55:05.213917: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:55:05.213997: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:55:05.214039: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:55:05.214141: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:55:05.214246: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:55:05.214366: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:55:05.214472: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:55:05.214589: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:55:05.214714: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:55:05.214846: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:55:05.214944: Inverter 0 count register writes 0 2026-08-14 11:55:05.258663: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 11:55:05.258993: Recompute is saving previous plan... 2026-08-14 11:55:05.262758: Best charge window [ 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 0% ] 2026-08-14 11:55:05.262925: Best export window [ ] 2026-08-14 11:55:05.264046: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 11:55:05.267866: Load divergence over 8.0 hours mean 384.68W, min 247.2W, max 1439.4W, std dev 178.84W, divergence 23.25% 2026-08-14 11:55:05.307087: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 11:55:05.321215: LoadML is_calculating True 2026-08-14 11:55:05.321312: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 11:55:05.332435: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 11:55:05.334279: Optimise levels pass started at 2026-08-14 11:55:05 2026-08-14 11:55:05.342466: Optimise all windows, total charge 95 export 1 2026-08-14 11:55:10.131908: >> Region optimisation pass width 960 gives best_metric 1015.1p, best_cost 1022.33p, best_cycle 47.18kWh, best_import 35.06kWh 2026-08-14 11:55:11.264169: >> Region optimisation pass width 480 gives best_metric 1015.1p, best_cost 1022.33p, best_cycle 47.18kWh, best_import 35.06kWh 2026-08-14 11:55:12.123557: >> Region optimisation pass width 240 gives best_metric 1015.1p, best_cost 1022.33p, best_cycle 47.18kWh, best_import 35.06kWh 2026-08-14 11:55:15.392401: >> Region optimisation pass width 120 gives best_metric 1015.1p, best_cost 1022.33p, best_cycle 47.18kWh, best_import 35.06kWh 2026-08-14 11:55:15.393023: Calculated end_record as 08-15 13:00:00 based on best_price 22.02p, next_charge_start 08-14 13:00:00, max_windows 50 2026-08-14 11:55:15.393296: Optimise levels pass ended at 2026-08-14 11:55:15, duration 10.1 seconds tried 299 combinations 2026-08-14 11:55:15.393652: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1015.1p, best_keep 0kWh, best_cycle 47.18kWh, best_carbon 0kg, best_import 35.06kWh 2026-08-14 11:55:15.416836: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 21.7p with charge limits [0, 0, 0, 16.0, 16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 11:55:36.163451: Tweak plan optimisation started metric 765.47p, cost 776.66p 2026-08-14 11:55:37.034517: Tweak optimisation finished metric 765.47p, cost 776.66p, metric_keep 0kWh, cycle 23.36kWh, carbon 0kg, import 19.44kWh, changed 8 window(s) 2026-08-14 11:55:37.065029: Swap charge optimisation started metric 765.47p, cost 776.66p, min_improvement_swap 0.1p 2026-08-14 11:55:40.934704: Swap charge optimisation finished metric 765.47p, cost 776.66p 2026-08-14 11:55:41.156526: Pruned 1 dead plan slot(s) in 7 trial(s), nominal metric 762.26p -> 762.26p, plan now metric 765.47p, cost 776.66p, cycle 23.36kWh, import 19.44kWh 2026-08-14 11:55:41.185669: Raw charge windows [ 14-08 11:30:00 - 14-08 12:00:00 @ 22.19p 0%, 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100% ] reserve 1.12 2026-08-14 11:55:41.199705: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:00:00 @ 17.77p 100% ] reserve 1.12 2026-08-14 11:55:41.199964: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:00:00 @ 17.77p 100% ] reserve 1.12 2026-08-14 11:55:41.200160: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:00:00 @ 17.77p 100% ] reserve 1.12 2026-08-14 11:55:41.246137: Previous plan best metric is 765.5 (cost 776.66) and new plan best metric is 765.47 (cost 776.66) 2026-08-14 11:55:41.246718: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 11:55:41.246944: Plan valid is now true after recompute was False 2026-08-14 11:55:41.276004: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 915.83p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:25:00, load 30.19kWh, PV 0.0kWh 2026-08-14 11:55:41.442959: Battery has 0.5 hours left - now at 1.74kWh 2026-08-14 11:55:41.536139: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 940.55p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:20:00, load 31.06kWh, PV 0.0kWh 2026-08-14 11:55:41.680911: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 848.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:20:00, load 31.06kWh, PV 0.0kWh 2026-08-14 11:55:41.838660: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 826.64p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:25:00, load 30.19kWh, PV 0.0kWh 2026-08-14 11:55:41.853438: Saving plan best values to HA entities 2026-08-14 11:55:42.165524: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 11:55:42.175260: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 11:55:42.179397: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0054 val_mae=0.0013 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0007 kWh ema_combined=0.0009 kWh 2026-08-14 11:55:42.189381: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 14.66kWh, house 4.77kWh, export 0.0kWh, metric 826.64p, metric10 848.32p 2026-08-14 11:55:42.361110: Marginal costs baseline metric (no standing charge): 776.6554 2026-08-14 11:55:42.792036: Marginal energy costs matrix computed: min=21.84 max=39.47 2026-08-14 11:55:42.891917: Rate array import [{'start': 715, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 715, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 11:55:42.892832: - Your estimated bill for today is £6.91 and tomorrow is £5.92 2026-08-14 11:55:42.892887: - Import rates are cheap (21.7p - 22.2p) for the next 4 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 11:55:42.892916: - The battery is currently at 11% and is in eco mode for the next 1 hour. 2026-08-14 11:55:42.892940: - For the next 48 hours there will be no solar generation. 2026-08-14 11:55:42.893059: - You will run out of battery in 30 minutes. 2026-08-14 11:55:42.893087: - Your next charge slot will be in 1 hour where import rates will be cheap (21.9p). 2026-08-14 11:55:42.893111: 2026-08-14 11:55:42.943298: Plan calculation took 37.68 seconds 2026-08-14 11:55:42.943593: Inverter 0: Type SK Sunsynk 2026-08-14 11:55:42.943646: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 11:55:42.943891: Reserve min: 7%, battery_min: 7% 2026-08-14 11:55:42.943992: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 11:55:42.944341: Inverter 0 SoC: 1.6kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1201W, current battery voltage 51.2V, grid power -56W, load power 1270W, PV Power 0W 2026-08-14 11:55:42.944549: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:55:42.944671: Inverter 0 scheduled charge enable is False 2026-08-14 11:55:42.944722: Inverter 0 charge windows currently [] 2026-08-14 11:55:42.944760: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 11:55:42.944932: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:55:42.945019: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:55:42.945075: Inverter 0 scheduled discharge enable is False 2026-08-14 11:55:42.945349: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:55:42.945406: Inverter 0 discharge windows currently [] 2026-08-14 11:55:42.945521: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:55:42.945566: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:55:42.945634: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:55:43.033415: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 11:55:43.033667: Inverter 0 disabled charge window while waiting for schedule (now 08-14 11:55:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 11:55:43.033898: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:55:43.034207: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:55:43.034365: No export window planned 2026-08-14 11:55:43.034558: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 11:55:43.034613: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 11:55:43.034901: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 11:55:43.035170: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 11:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 11:55:43.035241: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 11:55:43.035443: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 11:55:43.035609: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:55:43.035670: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:55:43.035817: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:55:43.035877: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:55:43.036004: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:55:43.036095: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:55:43.036187: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 11:55:43.036331: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:55:43.036386: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:55:43.036503: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:55:43.036557: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:55:43.036681: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:55:43.036734: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:55:43.036830: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 11:55:43.036974: Inverter 0 count register writes 0 2026-08-14 11:55:43.068037: Total inverter register writes now 806 2026-08-14 11:55:43.112279: Info: Completed run status Demand 2026-08-14 11:55:43.120145: Info: record_status Demand 2026-08-14 11:55:43.129912: Saved current settings to /config/predbat_config.json 2026-08-14 11:55:43.130225: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 11:55:57.594448: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0054 val_mae=0.0014 kWh val_bias=+0.0001 kWh (+0.1%) combined=0.0007 kWh ema_combined=0.0008 kWh 2026-08-14 11:56:12.866172: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0050 val_mae=0.0015 kWh val_bias=+0.0006 kWh (+1.0%) combined=0.0013 kWh ema_combined=0.0010 kWh 2026-08-14 11:56:14.254705: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:56:14.255275: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:56:14.255347: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:56:14.255578: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:56:14.255653: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:56:14.255698: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:56:14.255719: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:56:25.979347: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0055 val_mae=0.0014 kWh val_bias=+0.0002 kWh (+0.2%) combined=0.0007 kWh ema_combined=0.0009 kWh 2026-08-14 11:56:39.771842: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0051 val_mae=0.0014 kWh val_bias=-0.0007 kWh (-1.0%) combined=0.0013 kWh ema_combined=0.0010 kWh 2026-08-14 11:56:53.000069: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0052 val_mae=0.0013 kWh val_bias=+0.0000 kWh (+0.0%) combined=0.0006 kWh ema_combined=0.0009 kWh 2026-08-14 11:57:05.909917: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0048 val_mae=0.0013 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0008 kWh ema_combined=0.0009 kWh 2026-08-14 11:57:18.782874: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0049 val_mae=0.0013 kWh val_bias=-0.0002 kWh (-0.3%) combined=0.0007 kWh ema_combined=0.0008 kWh 2026-08-14 11:57:30.948180: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0054 val_mae=0.0012 kWh val_bias=-0.0003 kWh (-0.4%) combined=0.0008 kWh ema_combined=0.0008 kWh 2026-08-14 11:57:30.956612: ML Predictor: Restored best weights from epoch with val_mae=0.0012 kWh val_bias=-0.0003 kWh (-0.4%) 2026-08-14 11:57:30.957091: ML Predictor: Training complete, final val_mae=0.0012 kWh val_bias=-0.0003 kWh (-0.4%) 2026-08-14 11:57:31.959777: ML Predictor: AR rollout over holdout: ar_mae=0.0013 kWh ar_bias=-0.0003 kWh (-0.5%) [drift vs teacher-forced: +0.0001 kWh] 2026-08-14 11:57:31.968403: ML Predictor: Curriculum pass 1/5 complete, val_mae=0.0012 kWh 2026-08-14 11:57:32.045951: ML Predictor: Curriculum pass 2/5: window=53.0 days (1272 hours of data) 2026-08-14 11:57:32.046212: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 11:57:32.613218: ML Predictor: Creating dataset with 1272 hours of training data, 48 hours validation 2026-08-14 11:57:36.731914: ML Predictor: Created 14976 training samples, 576 validation samples 2026-08-14 11:57:36.780979: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0589 std=0.0472) load(mean=0.0587 std=0.0469) pv(mean=0.0000 std=0.0100) temp(mean=19.5241 std=4.4099) import_rate(mean=24.2363 std=1.9807) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1935 std=0.5221) 2026-08-14 11:57:36.859790: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 11:57:36.872386: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 11:57:36.900337: ML Predictor: Baseline (pre-finetune) val_mae=0.0018 kWh val_bias=-0.0005 kWh 2026-08-14 11:57:48.825305: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0082 val_mae=0.0020 kWh val_bias=+0.0001 kWh (+0.1%) combined=0.0011 kWh ema_combined=0.0011 kWh 2026-08-14 11:58:01.052316: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0090 val_mae=0.0019 kWh val_bias=+0.0005 kWh (+0.8%) combined=0.0012 kWh ema_combined=0.0012 kWh 2026-08-14 11:58:13.977551: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0089 val_mae=0.0017 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0009 kWh ema_combined=0.0011 kWh 2026-08-14 11:58:26.309409: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0081 val_mae=0.0022 kWh val_bias=-0.0007 kWh (-1.1%) combined=0.0013 kWh ema_combined=0.0011 kWh 2026-08-14 11:58:28.744864: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 11:58:28.745485: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 11:58:28.745632: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 11:58:28.746038: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 11:58:28.746164: Note: Inverter does not support discharge freeze - disabled 2026-08-14 11:58:28.746271: Note: Inverter does not support charge freeze - disabled 2026-08-14 11:58:28.746373: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 11:58:38.841189: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0083 val_mae=0.0019 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0012 kWh ema_combined=0.0011 kWh 2026-08-14 11:58:50.911868: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0102 val_mae=0.0023 kWh val_bias=+0.0000 kWh (+0.0%) combined=0.0013 kWh ema_combined=0.0012 kWh 2026-08-14 11:59:04.467347: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0099 val_mae=0.0020 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0011 kWh ema_combined=0.0011 kWh 2026-08-14 11:59:17.569758: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0088 val_mae=0.0018 kWh val_bias=+0.0005 kWh (+0.8%) combined=0.0015 kWh ema_combined=0.0013 kWh 2026-08-14 11:59:30.185945: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0076 val_mae=0.0019 kWh val_bias=-0.0008 kWh (-1.3%) combined=0.0014 kWh ema_combined=0.0013 kWh 2026-08-14 11:59:42.801794: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0067 val_mae=0.0016 kWh val_bias=-0.0007 kWh (-1.2%) combined=0.0012 kWh ema_combined=0.0013 kWh 2026-08-14 11:59:53.676129: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0071 val_mae=0.0020 kWh val_bias=-0.0006 kWh (-1.0%) combined=0.0017 kWh ema_combined=0.0014 kWh 2026-08-14 12:00:00.077800: --------------- PredBat - update at 2026-08-14 12:00:00+01:00 with clock skew 0 minutes, minutes now 720 2026-08-14 12:00:00.081695: Saved current settings to /config/predbat_config.json 2026-08-14 12:00:00.082062: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 20.0 minutes 2026-08-14 12:00:00.082343: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 12:00:00.082566: Autoupdate: Currently up to date 2026-08-14 12:00:00.147085: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 12:00:00.147491: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 12:00:00.147966: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 12:00:00.149048: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 12:00:00.149397: Predbat mode is set to Control charge & discharge 2026-08-14 12:00:00.856045: Found 21602 load_today datapoints going back 28 days 2026-08-14 12:00:00.856909: Using load_power data to fill gaps in load_today data 2026-08-14 12:00:02.369423: Processing 721 30-minute periods for power integration 2026-08-14 12:00:02.614028: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 12:00:02.614280: Car charging hold False, threshold 6.0kWh 2026-08-14 12:00:02.614438: Current data so far today: load 12.0kWh, import 12.5kWh, export 0.0kWh, PV 0kWh 2026-08-14 12:00:02.632503: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 12:00:02.633573: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 12:00:02.633770: Standing charge is set to 49.98p 2026-08-14 12:00:02.870268: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 12:00:02.870555: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 12:00:02.870997: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 85.0 minutes 2026-08-14 12:00:02.871611: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 85.0 minutes 2026-08-14 12:00:02.897652: Loaded 95 datapoints of futurerate analysis 2026-08-14 12:00:03.001400: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45'] 2026-08-14 12:00:03.054900: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 12:00:03.061426: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 12:00:03.062142: Import rates: min 14.97p, max 53.39p, average 27.21p 2026-08-14 12:00:03.106618: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 12:00:03.107003: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 12:00:03.108175: High export rate found rates in range 99p to -99p 2026-08-14 12:00:03.193859: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 12:00:03.194170: Car 0 charging is not planned as it is not plugged in 2026-08-14 12:00:03.220182: Battery level now 1.74kWh, -1hr ago 1.92kWh, at midnight 2.43kWh, battery value change in the last hour -2.37p, change today -8.95p, rate_forward 12.86p 2026-08-14 12:00:03.221035: Last hour: net energy 1.08kWh, import 1.08kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 24.18p, import 24.18p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 12:00:03.372891: Today's energy total net 12.5kWh, import 12.5kWh, export 0.0kWh, cost 359.47p, import 309.48p, export 0.0p, carbon 0.0kg 2026-08-14 12:00:03.373098: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 12:00:03.576142: Using weighted-bucket historical load forecast over 14 days 2026-08-14 12:00:03.625871: Today's load divergence 125.82%, in-day adjustment 135.67%, damping 0.95x, yesterday 146.81% today 124.53% blend 50.0% 2026-08-14 12:00:03.625978: Today's predicted so far 6.99kWh with 0.0kWh car/iBoost excluded, 4.5kWh import ignored, and 6.99kWh forecast extra. 2026-08-14 12:00:03.626008: Today's actual load so far 12.02kWh with 0.0kWh car/iBoost excluded, and 4.5kWh import ignored. 2026-08-14 12:00:03.681135: Inverter 0: Type SK Sunsynk 2026-08-14 12:00:03.681251: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 12:00:03.681485: Reserve min: 7%, battery_min: 7% 2026-08-14 12:00:03.681575: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 12:00:03.681927: Inverter 0 SoC: 1.6kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 970W, current battery voltage 51.2V, grid power -54W, load power 1035W, PV Power 0W 2026-08-14 12:00:03.682123: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:00:03.682234: Inverter 0 scheduled charge enable is False 2026-08-14 12:00:03.682277: Inverter 0 charge windows currently [] 2026-08-14 12:00:03.682311: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 12:00:03.682452: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:00:03.682518: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:00:03.682567: Inverter 0 scheduled discharge enable is False 2026-08-14 12:00:03.682758: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:00:03.682806: Inverter 0 discharge windows currently [] 2026-08-14 12:00:03.682835: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:00:03.682873: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:00:03.682897: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:00:03.788842: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 12:00:03.789040: Plan was last updated on 2026-08-14 11:55:00+01:00 and is now 5.0 minutes old 2026-08-14 12:00:03.789379: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 12:00:03.789435: Best export window [ ] 2026-08-14 12:00:03.790705: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 12:00:03.795497: Load divergence over 8.0 hours mean 381.72W, min 239.4W, max 1403.4W, std dev 171.21W, divergence 22.43% 2026-08-14 12:00:03.829073: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 12:00:03.829230: LoadML is_calculating True 2026-08-14 12:00:03.829264: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 12:00:03.938350: predict base end_record 08-15 13:05:00, final soc 1.12kWh, metric 916.96p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:25:00, load 30.33kWh, PV 0.0kWh 2026-08-14 12:00:04.281331: Battery has 0.42 hours left - now at 1.6kWh 2026-08-14 12:00:04.552334: predict base10 end_record 08-15 13:05:00, final soc 1.12kWh, metric 941.59p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:20:00, load 31.2kWh, PV 0.0kWh 2026-08-14 12:00:04.752863: predict best10 end_record 08-15 13:05:00, final soc 1.44kWh, metric 854.67p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:20:00, load 31.2kWh, PV 0.0kWh 2026-08-14 12:00:04.879513: predict best end_record 08-15 13:05:00, final soc 1.51kWh, metric 834.23p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:25:00, load 30.33kWh, PV 0.0kWh 2026-08-14 12:00:04.879655: Saving plan best values to HA entities 2026-08-14 12:00:05.399078: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 12:00:05.434157: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 12:00:05.443822: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.1kWh, house 4.83kWh, export 0.0kWh, metric 834.23p, metric10 854.67p 2026-08-14 12:00:05.662551: Marginal costs baseline metric (no standing charge): 784.2506 2026-08-14 12:00:06.022636: Marginal energy costs matrix computed: min=21.86 max=39.75 2026-08-14 12:00:06.116136: Rate array import [{'start': 720, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2225, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 720, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 12:00:06.117047: - Your estimated bill for today is £6.92 and tomorrow is £5.90 2026-08-14 12:00:06.117350: - Import rates are cheap (21.7p - 22.2p) for the next 4 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 12:00:06.117500: - The battery is currently at 10% and is in eco mode for the next 1 hour. 2026-08-14 12:00:06.117655: - For the next 48 hours there will be no solar generation. 2026-08-14 12:00:06.117756: - You will run out of battery in 25 minutes. 2026-08-14 12:00:06.117876: - Your next charge slot will be in 1 hour where import rates will be cheap (21.9p). 2026-08-14 12:00:06.117970: 2026-08-14 12:00:06.167332: Plan calculation took 2.38 seconds 2026-08-14 12:00:06.173371: No high rate period found 2026-08-14 12:00:06.331975: Import threshold used for optimisation was 25.52p 2026-08-14 12:00:06.457097: Low import rate windows [0: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 1: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 2: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 3: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 4: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 5: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 6: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 7: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 8: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 9: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 10: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 11: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 12: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 13: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 14: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 15: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 16: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 17: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 18: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 19: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 20: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 21: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 22: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 23: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 24: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 25: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 26: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 27: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 28: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 29: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 30: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 31: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 32: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 33: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 34: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 35: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 36: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 37: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 38: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 39: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 40: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 41: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 42: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 43: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 44: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 45: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 46: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 47: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 48: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 49: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 50: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 51: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 52: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 53: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 54: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 55: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 56: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 57: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 58: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 59: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 60: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 61: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 62: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 63: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 64: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 65: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 66: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 67: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 68: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 69: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 70: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 71: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 72: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 73: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 74: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 75: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 76: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 77: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 78: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 79: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 80: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 81: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 82: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 83: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 84: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 85: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 86: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 87: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 88: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 89: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 90: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 91: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 92: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 93: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 94: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62] 2026-08-14 12:00:06.471432: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 12:00:06.471747: Inverter 0 disabled charge window while waiting for schedule (now 08-14 12:00:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 12:00:06.471924: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:00:06.472281: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 12:00:06.472500: No export window planned 2026-08-14 12:00:06.472751: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 12:00:06.472863: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:00:06.473147: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 12:00:06.473393: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 12:00:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 12:00:06.473542: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 12:00:06.473687: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 12:00:06.473824: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:00:06.473975: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:00:06.474023: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:00:06.474086: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:00:06.474158: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:00:06.474232: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:00:06.474420: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:00:06.474605: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:00:06.474728: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:00:06.474867: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:00:06.474981: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:00:06.475107: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:00:06.475219: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:00:06.475344: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:00:06.475462: Inverter 0 count register writes 0 2026-08-14 12:00:06.503364: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 12:00:06.512468: Total inverter register writes now 806 2026-08-14 12:00:06.606862: Info: Completed run status Demand 2026-08-14 12:00:06.621430: Info: record_status Demand 2026-08-14 12:00:06.636865: Saved current settings to /config/predbat_config.json 2026-08-14 12:00:06.637381: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 12:00:20.699315: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0073 val_mae=0.0017 kWh val_bias=-0.0005 kWh (-0.8%) combined=0.0013 kWh ema_combined=0.0014 kWh 2026-08-14 12:00:43.892688: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:00:43.892901: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:00:43.892942: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:00:43.893083: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:00:43.893118: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:00:43.893135: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:00:43.893149: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:00:48.087872: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0071 val_mae=0.0016 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0012 kWh ema_combined=0.0013 kWh 2026-08-14 12:00:48.088186: ML Predictor: Early stopping at epoch 13 2026-08-14 12:00:48.089641: ML Predictor: Restored best weights from epoch with val_mae=0.0017 kWh val_bias=-0.0001 kWh (-0.1%) 2026-08-14 12:00:48.089943: ML Predictor: Training complete, final val_mae=0.0017 kWh val_bias=-0.0001 kWh (-0.1%) 2026-08-14 12:00:50.145562: ML Predictor: AR rollout over holdout: ar_mae=0.0019 kWh ar_bias=-0.0000 kWh (-0.1%) [drift vs teacher-forced: +0.0002 kWh] 2026-08-14 12:00:50.160162: ML Predictor: Curriculum pass 2/5 complete, val_mae=0.0017 kWh 2026-08-14 12:00:50.249502: ML Predictor: Curriculum pass 3/5: window=54.0 days (1296 hours of data) 2026-08-14 12:00:50.249646: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 12:00:50.841796: ML Predictor: Creating dataset with 1296 hours of training data, 48 hours validation 2026-08-14 12:00:55.937357: ML Predictor: Created 15264 training samples, 576 validation samples 2026-08-14 12:00:55.994998: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0589 std=0.0472) load(mean=0.0587 std=0.0469) pv(mean=0.0000 std=0.0100) temp(mean=19.5217 std=4.4105) import_rate(mean=24.2370 std=1.9772) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1930 std=0.5224) 2026-08-14 12:00:56.083662: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 12:00:56.102892: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 12:00:56.214718: ML Predictor: Baseline (pre-finetune) val_mae=0.0027 kWh val_bias=+0.0000 kWh 2026-08-14 12:01:17.619484: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0093 val_mae=0.0028 kWh val_bias=-0.0011 kWh (-2.2%) combined=0.0017 kWh ema_combined=0.0017 kWh 2026-08-14 12:01:33.412532: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0090 val_mae=0.0024 kWh val_bias=-0.0000 kWh (-0.0%) combined=0.0013 kWh ema_combined=0.0015 kWh 2026-08-14 12:01:46.913254: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0099 val_mae=0.0023 kWh val_bias=+0.0005 kWh (+0.9%) combined=0.0015 kWh ema_combined=0.0015 kWh 2026-08-14 12:02:01.622209: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0092 val_mae=0.0023 kWh val_bias=+0.0002 kWh (+0.5%) combined=0.0014 kWh ema_combined=0.0015 kWh 2026-08-14 12:02:15.721855: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0086 val_mae=0.0024 kWh val_bias=-0.0004 kWh (-0.7%) combined=0.0012 kWh ema_combined=0.0014 kWh 2026-08-14 12:02:31.022312: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0086 val_mae=0.0032 kWh val_bias=-0.0024 kWh (-4.7%) combined=0.0030 kWh ema_combined=0.0019 kWh 2026-08-14 12:02:46.809488: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0094 val_mae=0.0020 kWh val_bias=-0.0000 kWh (-0.1%) combined=0.0013 kWh ema_combined=0.0017 kWh 2026-08-14 12:02:58.732116: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:02:58.732555: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:02:58.732624: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:02:58.732834: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:02:58.732892: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:02:58.732926: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:02:58.732982: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:03:01.176105: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0105 val_mae=0.0022 kWh val_bias=+0.0003 kWh (+0.5%) combined=0.0016 kWh ema_combined=0.0017 kWh 2026-08-14 12:03:15.168009: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0082 val_mae=0.0023 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0017 kWh ema_combined=0.0017 kWh 2026-08-14 12:03:35.066288: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0082 val_mae=0.0023 kWh val_bias=-0.0011 kWh (-2.1%) combined=0.0019 kWh ema_combined=0.0018 kWh 2026-08-14 12:03:35.066588: ML Predictor: Early stopping at epoch 10 2026-08-14 12:03:35.067560: ML Predictor: Restored best weights from epoch with val_mae=0.0027 kWh val_bias=+0.0000 kWh (+0.1%) 2026-08-14 12:03:35.067800: ML Predictor: Training complete, final val_mae=0.0027 kWh val_bias=+0.0000 kWh (+0.1%) 2026-08-14 12:03:36.160824: ML Predictor: AR rollout over holdout: ar_mae=0.0130 kWh ar_bias=+0.0097 kWh (+18.7%) [drift vs teacher-forced: +0.0104 kWh] 2026-08-14 12:03:36.173209: ML Predictor: Curriculum pass 3/5 complete, val_mae=0.0027 kWh 2026-08-14 12:03:36.250219: ML Predictor: Curriculum pass 4/5: window=55.0 days (1320 hours of data) 2026-08-14 12:03:36.250491: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 12:03:36.817560: ML Predictor: Creating dataset with 1320 hours of training data, 48 hours validation 2026-08-14 12:03:41.192895: ML Predictor: Created 15552 training samples, 576 validation samples 2026-08-14 12:03:41.246660: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0589 std=0.0472) load(mean=0.0587 std=0.0469) pv(mean=0.0000 std=0.0100) temp(mean=19.5290 std=4.4171) import_rate(mean=24.2381 std=1.9725) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1926 std=0.5227) 2026-08-14 12:03:41.336205: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 12:03:41.355084: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 12:03:41.401022: ML Predictor: Baseline (pre-finetune) val_mae=0.0060 kWh val_bias=-0.0002 kWh 2026-08-14 12:03:56.619657: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0104 val_mae=0.0042 kWh val_bias=-0.0016 kWh (-2.2%) combined=0.0031 kWh ema_combined=0.0031 kWh 2026-08-14 12:04:10.285752: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0097 val_mae=0.0038 kWh val_bias=-0.0003 kWh (-0.4%) combined=0.0025 kWh ema_combined=0.0030 kWh 2026-08-14 12:04:24.959751: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0106 val_mae=0.0039 kWh val_bias=-0.0003 kWh (-0.4%) combined=0.0022 kWh ema_combined=0.0027 kWh 2026-08-14 12:04:39.488278: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0109 val_mae=0.0032 kWh val_bias=-0.0010 kWh (-1.4%) combined=0.0028 kWh ema_combined=0.0028 kWh 2026-08-14 12:04:52.649961: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0107 val_mae=0.0046 kWh val_bias=-0.0023 kWh (-3.3%) combined=0.0031 kWh ema_combined=0.0029 kWh 2026-08-14 12:04:59.251092: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:04:59.251440: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:04:59.251636: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:04:59.251920: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:04:59.251976: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:04:59.252057: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:04:59.252091: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:05:00.411976: --------------- PredBat - update at 2026-08-14 12:05:00+01:00 with clock skew 0 minutes, minutes now 725 2026-08-14 12:05:00.413321: Saved current settings to /config/predbat_config.json 2026-08-14 12:05:00.413566: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 25.0 minutes 2026-08-14 12:05:00.413769: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 12:05:00.413935: Autoupdate: Currently up to date 2026-08-14 12:05:00.458599: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 12:05:00.458911: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 12:05:00.459268: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 12:05:00.460022: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 12:05:00.460329: Predbat mode is set to Control charge & discharge 2026-08-14 12:05:00.745915: Found 21602 load_today datapoints going back 28 days 2026-08-14 12:05:00.746226: Using load_power data to fill gaps in load_today data 2026-08-14 12:05:02.068354: Processing 721 30-minute periods for power integration 2026-08-14 12:05:02.350237: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 12:05:02.351303: Car charging hold False, threshold 6.0kWh 2026-08-14 12:05:02.351430: Current data so far today: load 12.1kWh, import 12.5kWh, export 0.0kWh, PV 0kWh 2026-08-14 12:05:02.374671: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 12:05:02.375807: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 12:05:02.375914: Standing charge is set to 49.98p 2026-08-14 12:05:02.547973: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 12:05:02.548097: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 12:05:02.548370: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 90.0 minutes 2026-08-14 12:05:02.548853: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 90.0 minutes 2026-08-14 12:05:02.555663: Loaded 95 datapoints of futurerate analysis 2026-08-14 12:05:02.659719: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45'] 2026-08-14 12:05:02.747118: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 12:05:02.755553: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 12:05:02.755990: Import rates: min 14.97p, max 53.39p, average 27.2p 2026-08-14 12:05:02.816683: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 12:05:02.817031: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 12:05:02.818581: High export rate found rates in range 99p to -99p 2026-08-14 12:05:02.960893: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 12:05:02.961240: Car 0 charging is not planned as it is not plugged in 2026-08-14 12:05:02.982009: Battery level now 1.6kWh, -1hr ago 1.83kWh, at midnight 2.43kWh, battery value change in the last hour -2.98p, change today -10.7p, rate_forward 12.86p 2026-08-14 12:05:02.982782: Last hour: net energy 1.05kWh, import 1.05kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 23.62p, import 23.62p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 12:05:03.079916: Today's energy total net 12.5kWh, import 12.5kWh, export 0.0kWh, cost 359.47p, import 309.48p, export 0.0p, carbon 0.0kg 2026-08-14 12:05:03.080245: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 12:05:03.244120: Using weighted-bucket historical load forecast over 14 days 2026-08-14 12:05:03.280889: Today's load divergence 126.06%, in-day adjustment 135.71%, damping 0.95x, yesterday 146.81% today 124.76% blend 49.65% 2026-08-14 12:05:03.281124: Today's predicted so far 7.12kWh with 0.0kWh car/iBoost excluded, 4.45kWh import ignored, and 7.12kWh forecast extra. 2026-08-14 12:05:03.281186: Today's actual load so far 12.21kWh with 0.0kWh car/iBoost excluded, and 4.45kWh import ignored. 2026-08-14 12:05:03.328579: Inverter 0: Type SK Sunsynk 2026-08-14 12:05:03.328690: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 12:05:03.328907: Reserve min: 7%, battery_min: 7% 2026-08-14 12:05:03.329045: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 12:05:03.329397: Inverter 0 SoC: 1.57kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1136W, current battery voltage 51.2V, grid power -56W, load power 1198W, PV Power 0W 2026-08-14 12:05:03.329618: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:05:03.329734: Inverter 0 scheduled charge enable is False 2026-08-14 12:05:03.329779: Inverter 0 charge windows currently [] 2026-08-14 12:05:03.329813: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 12:05:03.329955: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:05:03.330028: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:05:03.330075: Inverter 0 scheduled discharge enable is False 2026-08-14 12:05:03.330357: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:05:03.330423: Inverter 0 discharge windows currently [] 2026-08-14 12:05:03.330466: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:05:03.330519: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:05:03.330544: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:05:03.423934: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 12:05:03.424065: Plan was last updated on 2026-08-14 11:55:00+01:00 and is now 10.0 minutes old 2026-08-14 12:05:03.424382: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 12:05:03.424443: Best export window [ ] 2026-08-14 12:05:03.425782: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 12:05:03.430396: Load divergence over 8.0 hours mean 375.45W, min 230.4W, max 1260.0W, std dev 162.7W, divergence 21.67% 2026-08-14 12:05:03.456336: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 12:05:03.456771: LoadML is_calculating True 2026-08-14 12:05:03.456837: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 12:05:03.508584: predict base end_record 08-15 13:10:00, final soc 1.12kWh, metric 915.52p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:30:00, load 30.35kWh, PV 0.0kWh 2026-08-14 12:05:03.743016: Battery has 0.42 hours left - now at 1.57kWh 2026-08-14 12:05:03.871359: predict base10 end_record 08-15 13:10:00, final soc 1.12kWh, metric 940.06p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:25:00, load 31.22kWh, PV 0.0kWh 2026-08-14 12:05:04.025326: predict best10 end_record 08-15 13:10:00, final soc 1.77kWh, metric 858.41p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:25:00, load 31.22kWh, PV 0.0kWh 2026-08-14 12:05:04.156617: predict best end_record 08-15 13:10:00, final soc 1.9kWh, metric 839.22p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:30:00, load 30.35kWh, PV 0.0kWh 2026-08-14 12:05:04.156859: Saving plan best values to HA entities 2026-08-14 12:05:04.597165: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 12:05:04.605385: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 12:05:04.626743: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.58kWh, house 4.71kWh, export 0.0kWh, metric 839.22p, metric10 858.41p 2026-08-14 12:05:04.814960: Marginal costs baseline metric (no standing charge): 789.2415 2026-08-14 12:05:05.288006: Marginal energy costs matrix computed: min=21.9 max=39.29 2026-08-14 12:05:05.464046: Rate array import [{'start': 725, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2230, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 725, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 12:05:05.465002: - Your estimated bill for today is £6.90 and tomorrow is £5.89 2026-08-14 12:05:05.465089: - Import rates are cheap (21.7p - 22.2p) for the next 3 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 12:05:05.465116: - The battery is currently at 10% and is in eco mode for the next 55 minutes. 2026-08-14 12:05:05.465136: - For the next 48 hours there will be no solar generation. 2026-08-14 12:05:05.465168: - You will run out of battery in 25 minutes. 2026-08-14 12:05:05.465210: - Your next charge slot will be in 55 minutes where import rates will be cheap (21.9p). 2026-08-14 12:05:05.465247: 2026-08-14 12:05:05.522532: Plan calculation took 2.10 seconds 2026-08-14 12:05:05.527703: No high rate period found 2026-08-14 12:05:05.644329: Import threshold used for optimisation was 25.52p 2026-08-14 12:05:05.771994: Low import rate windows [0: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 1: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 2: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 3: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 4: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 5: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 6: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 7: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 8: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 9: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 10: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 11: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 12: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 13: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 14: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 15: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 16: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 17: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 18: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 19: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 20: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 21: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 22: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 23: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 24: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 25: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 26: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 27: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 28: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 29: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 30: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 31: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 32: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 33: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 34: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 35: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 36: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 37: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 38: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 39: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 40: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 41: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 42: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 43: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 44: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 45: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 46: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 47: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 48: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 49: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 50: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 51: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 52: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 53: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 54: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 55: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 56: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 57: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 58: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 59: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 60: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 61: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 62: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 63: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 64: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 65: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 66: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 67: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 68: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 69: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 70: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 71: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 72: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 73: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 74: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 75: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 76: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 77: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 78: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 79: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 80: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 81: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 82: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 83: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 84: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 85: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 86: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 87: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 88: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 89: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 90: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 91: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 92: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 93: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 94: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 95: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19] 2026-08-14 12:05:05.784430: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 12:05:05.784860: Inverter 0 disabled charge window while waiting for schedule (now 08-14 12:05:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 12:05:05.785087: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:05:05.785318: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 12:05:05.785604: No export window planned 2026-08-14 12:05:05.785908: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 12:05:05.786815: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:05:05.802686: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 12:05:05.804423: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 12:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 12:05:05.804539: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 12:05:05.804597: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 12:05:05.804687: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:05:05.804730: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:05:05.804758: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:05:05.804791: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:05:05.804816: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:05:05.804848: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:05:05.804874: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:05:05.804933: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:05:05.805048: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:05:05.805084: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:05:05.805119: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:05:05.805144: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:05:05.805198: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:05:05.805225: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:05:05.805253: Inverter 0 count register writes 0 2026-08-14 12:05:05.838152: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 12:05:05.838540: Recompute is saving previous plan... 2026-08-14 12:05:05.842515: Best charge window [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 0% ] 2026-08-14 12:05:05.842712: Best export window [ ] 2026-08-14 12:05:05.843730: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 12:05:05.859231: Load divergence over 8.0 hours mean 375.45W, min 230.4W, max 1260.0W, std dev 162.7W, divergence 21.67% 2026-08-14 12:05:05.905842: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 12:05:05.906108: LoadML is_calculating True 2026-08-14 12:05:05.906232: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 12:05:05.924146: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 12:05:05.926279: Optimise levels pass started at 2026-08-14 12:05:05 2026-08-14 12:05:05.926680: Optimise all windows, total charge 95 export 1 2026-08-14 12:05:10.673637: >> Region optimisation pass width 960 gives best_metric 1012.93p, best_cost 1021.74p, best_cycle 49.0kWh, best_import 35.26kWh 2026-08-14 12:05:11.766337: >> Region optimisation pass width 480 gives best_metric 1012.93p, best_cost 1021.74p, best_cycle 49.0kWh, best_import 35.26kWh 2026-08-14 12:05:12.677769: >> Region optimisation pass width 240 gives best_metric 1012.93p, best_cost 1021.74p, best_cycle 49.0kWh, best_import 35.26kWh 2026-08-14 12:05:15.752018: >> Region optimisation pass width 120 gives best_metric 1012.93p, best_cost 1021.74p, best_cycle 49.0kWh, best_import 35.26kWh 2026-08-14 12:05:15.752384: Calculated end_record as 08-15 13:00:00 based on best_price 22.02p, next_charge_start 08-14 13:00:00, max_windows 49 2026-08-14 12:05:15.752447: Optimise levels pass ended at 2026-08-14 12:05:15, duration 9.8 seconds tried 307 combinations 2026-08-14 12:05:15.752506: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1012.93p, best_keep 0kWh, best_cycle 49.0kWh, best_carbon 0kg, best_import 35.26kWh 2026-08-14 12:05:15.779074: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 15.78p with charge limits [0, 0, 16.0, 16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.75, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 12:05:27.185029: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0108 val_mae=0.0031 kWh val_bias=-0.0007 kWh (-1.0%) combined=0.0019 kWh ema_combined=0.0026 kWh 2026-08-14 12:05:38.357618: Tweak plan optimisation started metric 763.12p, cost 774.35p 2026-08-14 12:05:39.270750: Tweak optimisation finished metric 763.12p, cost 774.35p, metric_keep 0kWh, cycle 23.2kWh, carbon 0kg, import 19.34kWh, changed 8 window(s) 2026-08-14 12:05:39.289283: Swap charge optimisation started metric 763.12p, cost 774.35p, min_improvement_swap 0.1p 2026-08-14 12:05:42.744360: Swap charge optimisation finished metric 763.12p, cost 774.35p 2026-08-14 12:05:42.907920: Pruned 1 dead plan slot(s) in 7 trial(s), nominal metric 759.95p -> 759.95p, plan now metric 763.12p, cost 774.35p, cycle 23.2kWh, import 19.34kWh 2026-08-14 12:05:42.922235: Raw charge windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100% ] reserve 1.12 2026-08-14 12:05:42.922845: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:30:00 @ 16.98p 100% ] reserve 1.12 2026-08-14 12:05:42.923042: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:30:00 @ 16.98p 100% ] reserve 1.12 2026-08-14 12:05:42.923212: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:30:00 @ 16.98p 100% ] reserve 1.12 2026-08-14 12:05:42.963820: Previous plan best metric is 763.14 (cost 774.35) and new plan best metric is 763.12 (cost 774.35) 2026-08-14 12:05:42.964066: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 12:05:42.964184: Plan valid is now true after recompute was False 2026-08-14 12:05:42.995551: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 913.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:30:00, load 30.23kWh, PV 0.0kWh 2026-08-14 12:05:43.166449: Battery has 0.42 hours left - now at 1.57kWh 2026-08-14 12:05:43.287704: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 938.07p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:25:00, load 31.09kWh, PV 0.0kWh 2026-08-14 12:05:43.420000: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 845.6p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:25:00, load 31.09kWh, PV 0.0kWh 2026-08-14 12:05:43.595995: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 824.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:30:00, load 30.23kWh, PV 0.0kWh 2026-08-14 12:05:43.596161: Saving plan best values to HA entities 2026-08-14 12:05:43.855102: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 12:05:43.865415: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 12:05:43.878264: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 14.62kWh, house 4.71kWh, export 0.0kWh, metric 824.33p, metric10 845.6p 2026-08-14 12:05:44.029447: Marginal costs baseline metric (no standing charge): 774.351 2026-08-14 12:05:44.409300: Marginal energy costs matrix computed: min=21.9 max=39.29 2026-08-14 12:05:44.525856: Rate array import [{'start': 725, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 725, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 12:05:44.526360: - Your estimated bill for today is £6.90 and tomorrow is £5.89 2026-08-14 12:05:44.526395: - Import rates are cheap (21.7p - 22.2p) for the next 3 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 12:05:44.526414: - The battery is currently at 10% and is in eco mode for the next 55 minutes. 2026-08-14 12:05:44.526429: - For the next 48 hours there will be no solar generation. 2026-08-14 12:05:44.526443: - You will run out of battery in 25 minutes. 2026-08-14 12:05:44.526457: - Your next charge slot will be in 55 minutes where import rates will be cheap (21.9p). 2026-08-14 12:05:44.526489: 2026-08-14 12:05:44.556626: Plan calculation took 38.72 seconds 2026-08-14 12:05:44.556896: Inverter 0: Type SK Sunsynk 2026-08-14 12:05:44.556969: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 12:05:44.557179: Reserve min: 7%, battery_min: 7% 2026-08-14 12:05:44.557265: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 12:05:44.557573: Inverter 0 SoC: 1.44kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power 1101W, current battery voltage 51.2V, grid power -56W, load power 1194W, PV Power 0W 2026-08-14 12:05:44.557758: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:05:44.557865: Inverter 0 scheduled charge enable is False 2026-08-14 12:05:44.557909: Inverter 0 charge windows currently [] 2026-08-14 12:05:44.557943: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 12:05:44.558075: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:05:44.558120: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:05:44.558166: Inverter 0 scheduled discharge enable is False 2026-08-14 12:05:44.558323: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:05:44.558365: Inverter 0 discharge windows currently [] 2026-08-14 12:05:44.558393: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:05:44.558425: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:05:44.558444: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:05:44.627616: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-14 12:05:44.627793: Inverter 0 disabled charge window while waiting for schedule (now 08-14 12:05:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 12:05:44.628007: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:05:44.628450: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 12:05:44.628740: No export window planned 2026-08-14 12:05:44.629023: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 12:05:44.629087: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:05:44.629378: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 12:05:44.630056: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 12:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 12:05:44.630176: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 12:05:44.630357: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 12:05:44.630600: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:05:44.630697: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:05:44.630793: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:05:44.630888: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:05:44.630980: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:05:44.631072: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:05:44.631166: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:05:44.631347: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:05:44.631437: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:05:44.631551: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:05:44.631650: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:05:44.631740: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:05:44.631831: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:05:44.631923: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:05:44.632005: Inverter 0 count register writes 0 2026-08-14 12:05:44.664428: Total inverter register writes now 806 2026-08-14 12:05:44.713608: Info: Completed run status Demand 2026-08-14 12:05:44.724542: Info: record_status Demand 2026-08-14 12:05:44.735893: Saved current settings to /config/predbat_config.json 2026-08-14 12:05:44.736271: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 12:05:58.939715: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0098 val_mae=0.0029 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0015 kWh ema_combined=0.0022 kWh 2026-08-14 12:06:27.117419: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0092 val_mae=0.0032 kWh val_bias=-0.0015 kWh (-2.2%) combined=0.0027 kWh ema_combined=0.0024 kWh 2026-08-14 12:06:28.937529: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:06:28.937828: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:06:28.937885: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:06:28.938125: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:06:28.938196: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:06:28.938230: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:06:28.938351: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:06:54.430764: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0080 val_mae=0.0037 kWh val_bias=+0.0016 kWh (+2.3%) combined=0.0021 kWh ema_combined=0.0023 kWh 2026-08-14 12:07:08.065457: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0091 val_mae=0.0031 kWh val_bias=-0.0002 kWh (-0.2%) combined=0.0016 kWh ema_combined=0.0021 kWh 2026-08-14 12:07:22.306411: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0082 val_mae=0.0030 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0016 kWh ema_combined=0.0019 kWh 2026-08-14 12:07:35.800056: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0082 val_mae=0.0033 kWh val_bias=-0.0012 kWh (-1.7%) combined=0.0018 kWh ema_combined=0.0019 kWh 2026-08-14 12:07:50.499172: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0071 val_mae=0.0032 kWh val_bias=-0.0013 kWh (-1.8%) combined=0.0019 kWh ema_combined=0.0019 kWh 2026-08-14 12:08:04.721446: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0072 val_mae=0.0026 kWh val_bias=-0.0012 kWh (-1.8%) combined=0.0023 kWh ema_combined=0.0020 kWh 2026-08-14 12:08:19.466490: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0075 val_mae=0.0031 kWh val_bias=+0.0005 kWh (+0.7%) combined=0.0022 kWh ema_combined=0.0021 kWh 2026-08-14 12:08:29.346795: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:08:29.347202: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:08:29.347264: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:08:29.347567: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:08:29.347627: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:08:29.347768: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:08:29.347812: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:08:33.579705: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0073 val_mae=0.0024 kWh val_bias=-0.0002 kWh (-0.3%) combined=0.0015 kWh ema_combined=0.0019 kWh 2026-08-14 12:08:46.718164: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0064 val_mae=0.0022 kWh val_bias=-0.0005 kWh (-0.7%) combined=0.0013 kWh ema_combined=0.0017 kWh 2026-08-14 12:08:59.871070: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0062 val_mae=0.0021 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0012 kWh ema_combined=0.0016 kWh 2026-08-14 12:09:15.111108: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0064 val_mae=0.0023 kWh val_bias=-0.0008 kWh (-1.1%) combined=0.0014 kWh ema_combined=0.0015 kWh 2026-08-14 12:09:29.510802: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0057 val_mae=0.0019 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0011 kWh ema_combined=0.0014 kWh 2026-08-14 12:09:44.688073: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0056 val_mae=0.0025 kWh val_bias=-0.0014 kWh (-1.9%) combined=0.0020 kWh ema_combined=0.0016 kWh 2026-08-14 12:09:57.461704: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0058 val_mae=0.0022 kWh val_bias=+0.0008 kWh (+1.2%) combined=0.0015 kWh ema_combined=0.0016 kWh 2026-08-14 12:10:00.677794: --------------- PredBat - update at 2026-08-14 12:10:00+01:00 with clock skew 0 minutes, minutes now 730 2026-08-14 12:10:00.678601: Saved current settings to /config/predbat_config.json 2026-08-14 12:10:00.678716: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 30.0 minutes 2026-08-14 12:10:00.678788: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 12:10:00.678930: Autoupdate: Currently up to date 2026-08-14 12:10:00.705258: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 12:10:00.705553: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 12:10:00.705838: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 12:10:00.706464: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 12:10:00.706709: Predbat mode is set to Control charge & discharge 2026-08-14 12:10:00.926246: Found 21602 load_today datapoints going back 28 days 2026-08-14 12:10:00.926706: Using load_power data to fill gaps in load_today data 2026-08-14 12:10:02.112449: Processing 721 30-minute periods for power integration 2026-08-14 12:10:02.392239: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 12:10:02.392379: Car charging hold False, threshold 6.0kWh 2026-08-14 12:10:02.392535: Current data so far today: load 12.05kWh, import 12.5kWh, export 0.0kWh, PV 0kWh 2026-08-14 12:10:02.407363: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 12:10:02.408167: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 12:10:02.408439: Standing charge is set to 49.98p 2026-08-14 12:10:02.534116: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 12:10:02.534313: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 12:10:02.534757: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 95.0 minutes 2026-08-14 12:10:02.535495: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 95.0 minutes 2026-08-14 12:10:02.542052: Loaded 95 datapoints of futurerate analysis 2026-08-14 12:10:02.675237: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45'] 2026-08-14 12:10:02.741885: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 12:10:02.750562: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 12:10:02.751078: Import rates: min 14.97p, max 53.39p, average 27.19p 2026-08-14 12:10:02.833090: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 12:10:02.833333: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 12:10:02.835328: High export rate found rates in range 99p to -99p 2026-08-14 12:10:02.967143: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 12:10:02.967274: Car 0 charging is not planned as it is not plugged in 2026-08-14 12:10:02.980635: Battery level now 1.57kWh, -1hr ago 1.6kWh, at midnight 2.43kWh, battery value change in the last hour -0.41p, change today -11.11p, rate_forward 12.86p 2026-08-14 12:10:02.981107: Last hour: net energy 1.03kWh, import 1.03kWh, export 0.0kWh, car 0kWh, load 1.1kWh, net cost 23.05p, import 23.05p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 12:10:03.102622: Today's energy total net 12.5kWh, import 12.5kWh, export 0.0kWh, cost 359.47p, import 309.48p, export 0.0p, carbon 0.0kg 2026-08-14 12:10:03.102773: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 12:10:03.267821: Using weighted-bucket historical load forecast over 14 days 2026-08-14 12:10:03.295266: Today's load divergence 125.65%, in-day adjustment 135.43%, damping 0.95x, yesterday 146.81% today 124.37% blend 49.31% 2026-08-14 12:10:03.295473: Today's predicted so far 7.14kWh with 0.0kWh car/iBoost excluded, 4.45kWh import ignored, and 7.14kWh forecast extra. 2026-08-14 12:10:03.295521: Today's actual load so far 12.12kWh with 0.0kWh car/iBoost excluded, and 4.45kWh import ignored. 2026-08-14 12:10:03.343828: Inverter 0: Type SK Sunsynk 2026-08-14 12:10:03.344055: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 12:10:03.344345: Reserve min: 7%, battery_min: 7% 2026-08-14 12:10:03.344510: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 12:10:03.344896: Inverter 0 SoC: 1.44kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4513W, current battery voltage 51.2V, grid power -5567W, load power 493W, PV Power 0W 2026-08-14 12:10:03.345174: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:10:03.345335: Inverter 0 scheduled charge enable is False 2026-08-14 12:10:03.345390: Inverter 0 charge windows currently [] 2026-08-14 12:10:03.345515: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 12:10:03.345732: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:10:03.345787: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:10:03.345919: Inverter 0 scheduled discharge enable is False 2026-08-14 12:10:03.346143: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:10:03.346199: Inverter 0 discharge windows currently [] 2026-08-14 12:10:03.346300: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:10:03.346346: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:10:03.346429: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:10:03.434950: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 12:10:03.435081: Plan was last updated on 2026-08-14 12:05:00+01:00 and is now 5.0 minutes old 2026-08-14 12:10:03.435544: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 12:10:03.435608: Best export window [ ] 2026-08-14 12:10:03.436992: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 12:10:03.441937: Load divergence over 8.0 hours mean 372.3W, min 240.6W, max 1225.8W, std dev 149.2W, divergence 20.04% 2026-08-14 12:10:03.472694: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 12:10:03.472939: LoadML is_calculating True 2026-08-14 12:10:03.473147: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 12:10:03.518547: predict base end_record 08-15 13:05:00, final soc 1.12kWh, metric 914.92p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:25:00, load 30.14kWh, PV 0.0kWh 2026-08-14 12:10:03.741458: Battery has 0.25 hours left - now at 1.44kWh 2026-08-14 12:10:03.890670: predict base10 end_record 08-15 13:05:00, final soc 1.12kWh, metric 939.3p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:25:00, load 31.0kWh, PV 0.0kWh 2026-08-14 12:10:04.048504: predict best10 end_record 08-15 13:05:00, final soc 1.44kWh, metric 852.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:25:00, load 31.0kWh, PV 0.0kWh 2026-08-14 12:10:04.262080: predict best end_record 08-15 13:05:00, final soc 1.51kWh, metric 832.22p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:25:00, load 30.14kWh, PV 0.0kWh 2026-08-14 12:10:04.262200: Saving plan best values to HA entities 2026-08-14 12:10:04.623997: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 12:10:04.630575: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 12:10:04.637155: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.1kWh, house 4.73kWh, export 0.0kWh, metric 832.22p, metric10 852.32p 2026-08-14 12:10:04.774542: Marginal costs baseline metric (no standing charge): 782.2382 2026-08-14 12:10:05.136344: Marginal energy costs matrix computed: min=21.95 max=38.79 2026-08-14 12:10:05.221035: Rate array import [{'start': 730, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2225, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 730, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 12:10:05.221991: - Your estimated bill for today is £6.90 and tomorrow is £5.90 2026-08-14 12:10:05.222124: - Import rates are cheap (21.7p - 22.2p) for the next 3 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 12:10:05.222219: - The battery is currently at 9% and is in eco mode for the next 50 minutes. 2026-08-14 12:10:05.222303: - For the next 48 hours there will be no solar generation. 2026-08-14 12:10:05.222476: - You will run out of battery in 15 minutes. 2026-08-14 12:10:05.222581: - Your next charge slot will be in 50 minutes where import rates will be cheap (21.9p). 2026-08-14 12:10:05.222669: 2026-08-14 12:10:05.308083: Plan calculation took 1.87 seconds 2026-08-14 12:10:05.312003: No high rate period found 2026-08-14 12:10:05.409277: Import threshold used for optimisation was 25.52p 2026-08-14 12:10:05.487066: Low import rate windows [0: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 1: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 2: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 3: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 4: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 5: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 6: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 7: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 8: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 9: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 10: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 11: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 12: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 13: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 14: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 15: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 16: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 17: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 18: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 19: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 20: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 21: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 22: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 23: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 24: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 25: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 26: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 27: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 28: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 29: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 30: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 31: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 32: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 33: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 34: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 35: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 36: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 37: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 38: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 39: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 40: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 41: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 42: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 43: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 44: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 45: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 46: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 47: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 48: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 49: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 50: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 51: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 52: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 53: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 54: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 55: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 56: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 57: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 58: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 59: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 60: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 61: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 62: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 63: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 64: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 65: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 66: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 67: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 68: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 69: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 70: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 71: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 72: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 73: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 74: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 75: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 76: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 77: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 78: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 79: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 80: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 81: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 82: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 83: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 84: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 85: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 86: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 87: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 88: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 89: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 90: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 91: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 92: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 93: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 94: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 95: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19] 2026-08-14 12:10:05.498096: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-14 12:10:05.498253: Inverter 0 disabled charge window while waiting for schedule (now 08-14 12:10:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 12:10:05.498339: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:10:05.498574: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 12:10:05.498668: No export window planned 2026-08-14 12:10:05.498794: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 12:10:05.498920: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:10:05.499184: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 12:10:05.499454: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 12:10:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 12:10:05.499597: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 12:10:05.499723: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 12:10:05.499880: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:10:05.499941: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:10:05.500076: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:10:05.500130: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:10:05.500258: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:10:05.500312: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:10:05.500461: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:10:05.500610: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:10:05.500666: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:10:05.500799: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:10:05.500852: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:10:05.501048: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:10:05.501115: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:10:05.501200: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:10:05.501247: Inverter 0 count register writes 0 2026-08-14 12:10:05.524603: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 12:10:05.532385: Total inverter register writes now 806 2026-08-14 12:10:05.628439: Info: Completed run status Demand 2026-08-14 12:10:05.645670: Info: record_status Demand 2026-08-14 12:10:05.654254: Saved current settings to /config/predbat_config.json 2026-08-14 12:10:05.654489: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 12:10:14.063104: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0051 val_mae=0.0020 kWh val_bias=-0.0005 kWh (-0.7%) combined=0.0015 kWh ema_combined=0.0015 kWh 2026-08-14 12:10:29.497301: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0056 val_mae=0.0020 kWh val_bias=-0.0005 kWh (-0.8%) combined=0.0012 kWh ema_combined=0.0014 kWh 2026-08-14 12:10:43.561258: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0056 val_mae=0.0020 kWh val_bias=-0.0004 kWh (-0.6%) combined=0.0011 kWh ema_combined=0.0013 kWh 2026-08-14 12:10:43.798288: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:10:43.798887: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:10:43.799107: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:10:43.799531: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:10:43.799697: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:10:43.799833: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:10:43.799958: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:10:57.840909: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0053 val_mae=0.0018 kWh val_bias=-0.0003 kWh (-0.4%) combined=0.0011 kWh ema_combined=0.0013 kWh 2026-08-14 12:11:11.856176: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0051 val_mae=0.0018 kWh val_bias=-0.0003 kWh (-0.4%) combined=0.0012 kWh ema_combined=0.0012 kWh 2026-08-14 12:11:25.860704: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0052 val_mae=0.0020 kWh val_bias=-0.0006 kWh (-0.9%) combined=0.0013 kWh ema_combined=0.0013 kWh 2026-08-14 12:11:39.022297: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0048 val_mae=0.0019 kWh val_bias=-0.0006 kWh (-0.9%) combined=0.0014 kWh ema_combined=0.0013 kWh 2026-08-14 12:11:52.146947: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0047 val_mae=0.0020 kWh val_bias=-0.0010 kWh (-1.4%) combined=0.0015 kWh ema_combined=0.0014 kWh 2026-08-14 12:11:52.155475: ML Predictor: Restored best weights from epoch with val_mae=0.0018 kWh val_bias=-0.0003 kWh (-0.4%) 2026-08-14 12:11:52.155725: ML Predictor: Training complete, final val_mae=0.0018 kWh val_bias=-0.0003 kWh (-0.4%) 2026-08-14 12:11:53.249525: ML Predictor: AR rollout over holdout: ar_mae=0.0020 kWh ar_bias=-0.0005 kWh (-0.7%) [drift vs teacher-forced: +0.0002 kWh] 2026-08-14 12:11:53.263762: ML Predictor: Curriculum pass 4/5 complete, val_mae=0.0018 kWh 2026-08-14 12:11:53.263904: ML Predictor: Curriculum final pass 5/5: full dataset (56.0 days) 2026-08-14 12:11:53.263964: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 12:11:53.946740: ML Predictor: Creating dataset with 1343 hours of training data, 48 hours validation 2026-08-14 12:11:59.191049: ML Predictor: Created 15830 training samples, 576 validation samples 2026-08-14 12:11:59.251484: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0589 std=0.0472) load(mean=0.0588 std=0.0470) pv(mean=0.0000 std=0.0100) temp(mean=19.5481 std=4.4335) import_rate(mean=24.2490 std=2.0261) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1925 std=0.5231) 2026-08-14 12:11:59.360722: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 12:11:59.379203: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 12:11:59.405941: ML Predictor: Baseline (pre-finetune) val_mae=0.0098 kWh val_bias=-0.0049 kWh 2026-08-14 12:12:13.899673: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0127 val_mae=0.0071 kWh val_bias=-0.0006 kWh (-0.7%) combined=0.0036 kWh ema_combined=0.0036 kWh 2026-08-14 12:12:26.258962: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0124 val_mae=0.0074 kWh val_bias=-0.0019 kWh (-2.2%) combined=0.0046 kWh ema_combined=0.0039 kWh 2026-08-14 12:12:41.265557: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0129 val_mae=0.0081 kWh val_bias=-0.0019 kWh (-2.1%) combined=0.0044 kWh ema_combined=0.0040 kWh 2026-08-14 12:12:44.545764: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:12:44.546059: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:12:44.546113: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:12:44.546281: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:12:44.546329: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:12:44.546357: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:12:44.546791: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:12:56.153903: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0112 val_mae=0.0071 kWh val_bias=+0.0001 kWh (+0.1%) combined=0.0047 kWh ema_combined=0.0042 kWh 2026-08-14 12:13:09.892295: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0110 val_mae=0.0058 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0031 kWh ema_combined=0.0039 kWh 2026-08-14 12:13:25.596598: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0124 val_mae=0.0078 kWh val_bias=-0.0044 kWh (-5.0%) combined=0.0058 kWh ema_combined=0.0045 kWh 2026-08-14 12:13:39.726098: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0114 val_mae=0.0086 kWh val_bias=-0.0038 kWh (-4.4%) combined=0.0049 kWh ema_combined=0.0046 kWh 2026-08-14 12:13:52.395597: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0109 val_mae=0.0077 kWh val_bias=+0.0018 kWh (+2.0%) combined=0.0057 kWh ema_combined=0.0049 kWh 2026-08-14 12:14:10.788760: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0124 val_mae=0.0064 kWh val_bias=-0.0004 kWh (-0.5%) combined=0.0033 kWh ema_combined=0.0044 kWh 2026-08-14 12:14:29.365604: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0120 val_mae=0.0063 kWh val_bias=-0.0006 kWh (-0.7%) combined=0.0032 kWh ema_combined=0.0041 kWh 2026-08-14 12:14:42.777391: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0104 val_mae=0.0062 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0032 kWh ema_combined=0.0038 kWh 2026-08-14 12:14:42.777532: ML Predictor: Early stopping at epoch 11 2026-08-14 12:14:42.778942: ML Predictor: Restored best weights from epoch with val_mae=0.0071 kWh val_bias=-0.0006 kWh (-0.7%) 2026-08-14 12:14:42.779116: ML Predictor: Training complete, final val_mae=0.0071 kWh val_bias=-0.0006 kWh (-0.7%) 2026-08-14 12:14:43.751106: ML Predictor: AR rollout over holdout: ar_mae=0.0075 kWh ar_bias=-0.0008 kWh (-0.9%) [drift vs teacher-forced: +0.0004 kWh] 2026-08-14 12:14:43.754851: ML Predictor: Curriculum training complete, final val_mae=0.0071 kWh 2026-08-14 12:14:43.761386: ML Component: Training successful, val_mae=0.0071 kWh 2026-08-14 12:14:43.916904: ML Predictor: Model saved to /config/predbat_ml_model.npz 2026-08-14 12:14:43.921222: ML Component: Generating predictions load data age 55.0 days, 16119 data points 2026-08-14 12:14:44.051787: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0539 max_dow {0: 0.10336562496256083, 1: 0.1091281248660758, 2: 0.11737499983031302, 3: 0.11972187416721135, 4: 0.17116562535744162, 5: 0.10228437502831222, 6: 0.10759687461592257} 2026-08-14 12:14:44.468441: ML Component: Generated 576 predictions (total 38.76 kWh over 48h) 2026-08-14 12:14:44.502634: ML Component: Prediction cycle completed 2026-08-14 12:14:44.603338: ML Component: Saved 16119 steps (55 days) of history to /config/predbat_ml_history.npz 2026-08-14 12:14:59.069895: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:14:59.070198: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:14:59.070265: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:14:59.070489: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:14:59.070551: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:14:59.070586: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:14:59.070622: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:15:00.156924: --------------- PredBat - update at 2026-08-14 12:15:00+01:00 with clock skew 0 minutes, minutes now 735 2026-08-14 12:15:00.157863: Saved current settings to /config/predbat_config.json 2026-08-14 12:15:00.157996: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 35.0 minutes 2026-08-14 12:15:00.158121: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 12:15:00.158221: Autoupdate: Currently up to date 2026-08-14 12:15:00.178284: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 12:15:00.178447: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 12:15:00.178660: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 12:15:00.179594: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 12:15:00.179732: Predbat mode is set to Control charge & discharge 2026-08-14 12:15:00.364720: Found 21602 load_today datapoints going back 28 days 2026-08-14 12:15:00.364847: Using load_power data to fill gaps in load_today data 2026-08-14 12:15:01.022396: Processing 721 30-minute periods for power integration 2026-08-14 12:15:01.174573: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 12:15:01.174694: Car charging hold False, threshold 6.0kWh 2026-08-14 12:15:01.174731: Current data so far today: load 12.1kWh, import 12.5kWh, export 0.0kWh, PV 0kWh 2026-08-14 12:15:01.186341: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 12:15:01.186991: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 12:15:01.187052: Standing charge is set to 49.98p 2026-08-14 12:15:01.246031: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 12:15:01.246127: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 12:15:01.246300: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 100.0 minutes 2026-08-14 12:15:01.246632: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 100.0 minutes 2026-08-14 12:15:01.251834: Loaded 95 datapoints of futurerate analysis 2026-08-14 12:15:01.333275: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45'] 2026-08-14 12:15:01.386693: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 12:15:01.391503: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 12:15:01.391782: Import rates: min 14.97p, max 53.39p, average 27.18p 2026-08-14 12:15:01.428145: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 12:15:01.428282: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 12:15:01.429659: High export rate found rates in range 99p to -99p 2026-08-14 12:15:01.504993: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 12:15:01.505101: Car 0 charging is not planned as it is not plugged in 2026-08-14 12:15:01.516061: Battery level now 1.44kWh, -1hr ago 1.6kWh, at midnight 2.43kWh, battery value change in the last hour -2.06p, change today -12.76p, rate_forward 12.86p 2026-08-14 12:15:01.516373: Last hour: net energy 1.0kWh, import 1.0kWh, export 0.0kWh, car 0kWh, load 1.0kWh, net cost 22.49p, import 22.49p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 12:15:01.566719: Today's energy total net 12.5kWh, import 12.5kWh, export 0.0kWh, cost 359.47p, import 309.48p, export 0.0p, carbon 0.0kg 2026-08-14 12:15:01.566840: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 12:15:01.647173: Using weighted-bucket historical load forecast over 14 days 2026-08-14 12:15:01.668872: Today's load divergence 125.7%, in-day adjustment 135.38%, damping 0.95x, yesterday 146.81% today 124.41% blend 48.96% 2026-08-14 12:15:01.669287: Today's predicted so far 7.16kWh with 0.0kWh car/iBoost excluded, 4.47kWh import ignored, and 7.16kWh forecast extra. 2026-08-14 12:15:01.669344: Today's actual load so far 12.15kWh with 0.0kWh car/iBoost excluded, and 4.47kWh import ignored. 2026-08-14 12:15:01.709765: Inverter 0: Type SK Sunsynk 2026-08-14 12:15:01.709846: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 12:15:01.710003: Reserve min: 7%, battery_min: 7% 2026-08-14 12:15:01.710084: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 12:15:01.710373: Inverter 0 SoC: 1.41kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4505W, current battery voltage 51.2V, grid power -5491W, load power 494W, PV Power 0W 2026-08-14 12:15:01.710519: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:15:01.710593: Inverter 0 scheduled charge enable is False 2026-08-14 12:15:01.710630: Inverter 0 charge windows currently [] 2026-08-14 12:15:01.710659: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 12:15:01.710767: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:15:01.710808: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:15:01.710842: Inverter 0 scheduled discharge enable is False 2026-08-14 12:15:01.710957: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:15:01.710987: Inverter 0 discharge windows currently [] 2026-08-14 12:15:01.711007: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:15:01.711022: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:15:01.711039: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:15:01.764927: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 12:15:01.765109: Plan was last updated on 2026-08-14 12:05:00+01:00 and is now 10.0 minutes old 2026-08-14 12:15:01.765377: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 12:15:01.765423: Best export window [ ] 2026-08-14 12:15:01.766090: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 12:15:01.768714: Load divergence over 8.0 hours mean 369.24W, min 220.2W, max 1101.0W, std dev 132.4W, divergence 17.93% 2026-08-14 12:15:01.785250: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 12:15:01.785406: LoadML is_calculating False 2026-08-14 12:15:01.785521: Creating pool of 12 processes to match your CPU count 2026-08-14 12:15:01.889019: predict base end_record 08-15 13:10:00, final soc 1.12kWh, metric 915.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:30:00, load 30.19kWh, PV 0.0kWh 2026-08-14 12:15:02.024439: Battery has 0.25 hours left - now at 1.41kWh 2026-08-14 12:15:02.088597: predict base10 end_record 08-15 13:10:00, final soc 1.12kWh, metric 939.65p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:30:00, load 31.05kWh, PV 0.0kWh 2026-08-14 12:15:02.162618: predict best10 end_record 08-15 13:10:00, final soc 1.77kWh, metric 858.02p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:30:00, load 31.05kWh, PV 0.0kWh 2026-08-14 12:15:02.240031: predict best end_record 08-15 13:10:00, final soc 1.9kWh, metric 838.93p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:30:00, load 30.19kWh, PV 0.0kWh 2026-08-14 12:15:02.240110: Saving plan best values to HA entities 2026-08-14 12:15:02.391729: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 12:15:02.398180: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 12:15:02.403210: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.57kWh, house 4.7kWh, export 0.0kWh, metric 838.93p, metric10 858.02p 2026-08-14 12:15:02.469969: Marginal costs baseline metric (no standing charge): 788.9475 2026-08-14 12:15:02.693050: Marginal energy costs matrix computed: min=21.99 max=38.3 2026-08-14 12:15:02.758539: Rate array import [{'start': 735, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2230, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 735, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 12:15:02.759479: - Your estimated bill for today is £6.89 and tomorrow is £5.91 2026-08-14 12:15:02.759612: - Import rates are cheap (21.7p - 22.2p) for the next 3 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 12:15:02.759669: - The battery is currently at 9% and is in eco mode for the next 45 minutes. 2026-08-14 12:15:02.759703: - For the next 48 hours there will be no solar generation. 2026-08-14 12:15:02.759731: - You will run out of battery in 15 minutes. 2026-08-14 12:15:02.759758: - Your next charge slot will be in 45 minutes where import rates will be cheap (21.9p). 2026-08-14 12:15:02.759786: 2026-08-14 12:15:02.814047: Plan calculation took 1.05 seconds 2026-08-14 12:15:02.820606: No high rate period found 2026-08-14 12:15:02.881739: Import threshold used for optimisation was 25.52p 2026-08-14 12:15:02.937626: Low import rate windows [0: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 1: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 2: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 3: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 4: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 5: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 6: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 7: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 8: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 9: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 10: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 11: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 12: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 13: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 14: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 15: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 16: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 17: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 18: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 19: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 20: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 21: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 22: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 23: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 24: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 25: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 26: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 27: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 28: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 29: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 30: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 31: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 32: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 33: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 34: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 35: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 36: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 37: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 38: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 39: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 40: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 41: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 42: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 43: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 44: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 45: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 46: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 47: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 48: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 49: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 50: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 51: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 52: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 53: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 54: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 55: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 56: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 57: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 58: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 59: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 60: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 61: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 62: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 63: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 64: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 65: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 66: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 67: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 68: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 69: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 70: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 71: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 72: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 73: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 74: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 75: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 76: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 77: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 78: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 79: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 80: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 81: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 82: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 83: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 84: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 85: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 86: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 87: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 88: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 89: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 90: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 91: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 92: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 93: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 94: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 95: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19] 2026-08-14 12:15:02.944414: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-14 12:15:02.944602: Inverter 0 disabled charge window while waiting for schedule (now 08-14 12:15:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 12:15:02.944775: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:15:02.945158: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 12:15:02.945294: No export window planned 2026-08-14 12:15:02.945510: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 12:15:02.945587: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:15:02.945798: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 12:15:02.946055: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 12:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 12:15:02.946151: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 12:15:02.946248: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 12:15:02.946417: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:15:02.946489: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:15:02.946549: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:15:02.946611: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:15:02.946666: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:15:02.946724: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:15:02.946782: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:15:02.946909: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:15:02.946980: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:15:02.947037: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:15:02.947089: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:15:02.947133: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:15:02.947184: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:15:02.947235: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:15:02.947266: Inverter 0 count register writes 0 2026-08-14 12:15:02.962444: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 12:15:02.962621: Recompute is saving previous plan... 2026-08-14 12:15:02.965823: Best charge window [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 0% ] 2026-08-14 12:15:02.965906: Best export window [ ] 2026-08-14 12:15:02.966754: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 12:15:02.969817: Load divergence over 8.0 hours mean 369.24W, min 220.2W, max 1101.0W, std dev 132.4W, divergence 17.93% 2026-08-14 12:15:02.987347: Calculating data from yesterday for savings calculation 2026-08-14 12:15:02.999380: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 12:15:03.046339: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 12:15:03.060405: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 869.96p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 12:15:03.083794: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 12:15:03.116734: Yesterday: Predbat disabled was £8.56 (adjusted £8.42) vs £6.21 (adjusted £5.88), saving £2.35 (adjusted £2.53) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 14.4kWh 2026-08-14 12:15:03.200251: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 901.25p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 12:15:03.200414: Yesterday: No Battery/PV system cost predicted was £9.01 (adjusted £9.01) vs £6.21 (adjusted £5.88), saving £2.8 (adjusted £3.13) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 12:15:03.213270: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 12:15:03.213409: LoadML is_calculating False 2026-08-14 12:15:03.213485: Creating pool of 12 processes to match your CPU count 2026-08-14 12:15:03.301024: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 12:15:03.303680: Optimise levels pass started at 2026-08-14 12:15:03 2026-08-14 12:15:03.303749: Optimise all windows, total charge 95 export 1 2026-08-14 12:15:04.207832: >> Region optimisation pass width 960 gives best_metric 1014.57p, best_cost 1023.41p, best_cycle 48.84kWh, best_import 35.37kWh 2026-08-14 12:15:04.641964: >> Region optimisation pass width 480 gives best_metric 1014.57p, best_cost 1023.41p, best_cycle 48.84kWh, best_import 35.37kWh 2026-08-14 12:15:05.096178: >> Region optimisation pass width 240 gives best_metric 1014.57p, best_cost 1023.41p, best_cycle 48.84kWh, best_import 35.37kWh 2026-08-14 12:15:06.171158: >> Region optimisation pass width 120 gives best_metric 1014.57p, best_cost 1023.41p, best_cycle 48.84kWh, best_import 35.37kWh 2026-08-14 12:15:06.171611: Calculated end_record as 08-15 13:00:00 based on best_price 22.02p, next_charge_start 08-14 13:00:00, max_windows 49 2026-08-14 12:15:06.171685: Optimise levels pass ended at 2026-08-14 12:15:06, duration 2.9 seconds tried 307 combinations 2026-08-14 12:15:06.171740: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1014.57p, best_keep 0kWh, best_cycle 48.84kWh, best_carbon 0kg, best_import 35.37kWh 2026-08-14 12:15:06.187440: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 15.78p with charge limits [0, 0, 16.0, 16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.75, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 12:15:10.944964: Tweak plan optimisation started metric 762.83p, cost 774.09p 2026-08-14 12:15:11.246864: Tweak optimisation finished metric 762.83p, cost 774.09p, metric_keep 0kWh, cycle 23.05kWh, carbon 0kg, import 19.32kWh, changed 8 window(s) 2026-08-14 12:15:11.272527: Swap charge optimisation started metric 762.83p, cost 774.09p, min_improvement_swap 0.1p 2026-08-14 12:15:13.956430: Swap charge optimisation finished metric 762.83p, cost 774.09p 2026-08-14 12:15:14.054664: Pruned 2 dead plan slot(s) in 8 trial(s), nominal metric 759.69p -> 759.69p, plan now metric 762.84p, cost 774.09p, cycle 23.05kWh, import 19.32kWh 2026-08-14 12:15:14.066344: Raw charge windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100% ] reserve 1.12 2026-08-14 12:15:14.066929: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:30:00 @ 16.98p 100% ] reserve 1.12 2026-08-14 12:15:14.067121: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:30:00 @ 16.98p 100% ] reserve 1.12 2026-08-14 12:15:14.067291: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:30:00 @ 16.98p 100% ] reserve 1.12 2026-08-14 12:15:14.103265: Previous plan best metric is 762.85 (cost 774.08) and new plan best metric is 762.83 (cost 774.09) 2026-08-14 12:15:14.103526: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 12:15:14.103736: Plan valid is now true after recompute was False 2026-08-14 12:15:14.131380: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 913.41p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:30:00, load 30.07kWh, PV 0.0kWh 2026-08-14 12:15:14.248446: Battery has 0.25 hours left - now at 1.41kWh 2026-08-14 12:15:14.292758: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 937.69p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:30:00, load 30.92kWh, PV 0.0kWh 2026-08-14 12:15:14.367279: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 845.23p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:30:00, load 30.92kWh, PV 0.0kWh 2026-08-14 12:15:14.449248: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 824.07p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:30:00, load 30.07kWh, PV 0.0kWh 2026-08-14 12:15:14.449343: Saving plan best values to HA entities 2026-08-14 12:15:14.602248: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 12:15:14.608085: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 12:15:14.613539: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 14.62kWh, house 4.7kWh, export 0.0kWh, metric 824.07p, metric10 845.23p 2026-08-14 12:15:14.686788: Marginal costs baseline metric (no standing charge): 774.0819 2026-08-14 12:15:14.957813: Marginal energy costs matrix computed: min=21.99 max=38.3 2026-08-14 12:15:15.024144: Rate array import [{'start': 735, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 735, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 12:15:15.025118: - Your estimated bill for today is £6.89 and tomorrow is £5.91 2026-08-14 12:15:15.025178: - Import rates are cheap (21.7p - 22.2p) for the next 3 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 12:15:15.025202: - The battery is currently at 9% and is in eco mode for the next 45 minutes. 2026-08-14 12:15:15.025221: - For the next 48 hours there will be no solar generation. 2026-08-14 12:15:15.025238: - You will run out of battery in 15 minutes. 2026-08-14 12:15:15.025255: - Your next charge slot will be in 45 minutes where import rates will be cheap (21.9p). 2026-08-14 12:15:15.025278: 2026-08-14 12:15:15.072212: Plan calculation took 12.11 seconds 2026-08-14 12:15:15.072589: Inverter 0: Type SK Sunsynk 2026-08-14 12:15:15.072637: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 12:15:15.072876: Reserve min: 7%, battery_min: 7% 2026-08-14 12:15:15.072994: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 12:15:15.073344: Inverter 0 SoC: 1.63kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power -4507W, current battery voltage 51.2V, grid power -5623W, load power 626W, PV Power 0W 2026-08-14 12:15:15.073604: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:15:15.073711: Inverter 0 scheduled charge enable is False 2026-08-14 12:15:15.073747: Inverter 0 charge windows currently [] 2026-08-14 12:15:15.073775: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 12:15:15.073884: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:15:15.073919: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:15:15.073955: Inverter 0 scheduled discharge enable is False 2026-08-14 12:15:15.074079: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:15:15.074116: Inverter 0 discharge windows currently [] 2026-08-14 12:15:15.074145: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:15:15.074164: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:15:15.074181: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:15:15.132108: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 12:15:15.132315: Inverter 0 disabled charge window while waiting for schedule (now 08-14 12:15:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 12:15:15.132449: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:15:15.132653: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 12:15:15.132741: No export window planned 2026-08-14 12:15:15.132844: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 12:15:15.132881: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:15:15.133077: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 12:15:15.133250: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 12:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 12:15:15.133311: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 12:15:15.133386: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 12:15:15.133485: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:15:15.133526: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:15:15.133583: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:15:15.133611: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:15:15.133640: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:15:15.133664: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:15:15.133698: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:15:15.133762: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:15:15.133825: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:15:15.133883: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:15:15.133921: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:15:15.133946: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:15:15.133976: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:15:15.134000: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:15:15.134024: Inverter 0 count register writes 0 2026-08-14 12:15:15.157182: Total inverter register writes now 806 2026-08-14 12:15:15.191478: Info: Completed run status Demand 2026-08-14 12:15:15.198483: Info: record_status Demand 2026-08-14 12:15:15.205640: Saved current settings to /config/predbat_config.json 2026-08-14 12:15:15.205970: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 12:15:59.320022: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:15:59.320418: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:15:59.320475: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:15:59.320622: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:15:59.320663: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:15:59.320685: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:15:59.320704: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:17:58.154716: TemperatureAPI: Using coordinates latitude 53.4, longitude -2.2 2026-08-14 12:17:58.308015: TemperatureAPI: Successfully fetched temperature data from Open-Meteo API 2026-08-14 12:18:12.799471: Info: HAHistory: Pruning history data started. 2026-08-14 12:18:12.802976: Info: HAHistory: Pruning history data completed. 2026-08-14 12:18:13.565435: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:18:13.565775: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:18:13.565846: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:18:13.566100: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:18:13.566168: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:18:13.566209: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:18:13.566250: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:20:00.775195: --------------- PredBat - update at 2026-08-14 12:20:00+01:00 with clock skew 0 minutes, minutes now 740 2026-08-14 12:20:00.776048: Saved current settings to /config/predbat_config.json 2026-08-14 12:20:00.776207: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 40.0 minutes 2026-08-14 12:20:00.776291: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 12:20:00.776393: Autoupdate: Currently up to date 2026-08-14 12:20:00.795355: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 12:20:00.795482: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 12:20:00.795670: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 12:20:00.796242: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 12:20:00.796410: Predbat mode is set to Control charge & discharge 2026-08-14 12:20:00.997492: Found 21602 load_today datapoints going back 27 days 2026-08-14 12:20:00.997647: Using load_power data to fill gaps in load_today data 2026-08-14 12:20:01.844613: Processing 721 30-minute periods for power integration 2026-08-14 12:20:02.016800: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 12:20:02.016927: Car charging hold False, threshold 6.0kWh 2026-08-14 12:20:02.017017: Current data so far today: load 12.3kWh, import 13.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 12:20:02.029209: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 12:20:02.029945: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 12:20:02.030053: Standing charge is set to 49.98p 2026-08-14 12:20:02.069453: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 12:20:02.069547: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 12:20:02.069773: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 105.0 minutes 2026-08-14 12:20:02.070109: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 105.0 minutes 2026-08-14 12:20:02.074865: Loaded 95 datapoints of futurerate analysis 2026-08-14 12:20:02.154434: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45'] 2026-08-14 12:20:02.200542: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 12:20:02.205560: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 12:20:02.205951: Import rates: min 14.97p, max 53.39p, average 27.17p 2026-08-14 12:20:02.240075: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 12:20:02.240159: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 12:20:02.241214: High export rate found rates in range 99p to -99p 2026-08-14 12:20:02.319538: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 12:20:02.319648: Car 0 charging is not planned as it is not plugged in 2026-08-14 12:20:02.331601: Battery level now 1.41kWh, -1hr ago 1.46kWh, at midnight 2.43kWh, battery value change in the last hour -0.62p, change today -13.17p, rate_forward 12.86p 2026-08-14 12:20:02.331974: Last hour: net energy 1.15kWh, import 1.15kWh, export 0.0kWh, car 0kWh, load 1.05kWh, net cost 25.69p, import 25.69p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 12:20:02.389857: Today's energy total net 13.0kWh, import 13.0kWh, export 0.0kWh, cost 370.56p, import 320.58p, export 0.0p, carbon 0.0kg 2026-08-14 12:20:02.390015: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 12:20:02.458167: Using weighted-bucket historical load forecast over 14 days 2026-08-14 12:20:02.479299: Today's load divergence 125.94%, in-day adjustment 135.42%, damping 0.95x, yesterday 146.81% today 124.64% blend 48.61% 2026-08-14 12:20:02.479379: Today's predicted so far 7.2kWh with 0.0kWh car/iBoost excluded, 4.47kWh import ignored, and 7.2kWh forecast extra. 2026-08-14 12:20:02.479405: Today's actual load so far 12.26kWh with 0.0kWh car/iBoost excluded, and 4.47kWh import ignored. 2026-08-14 12:20:02.516348: Inverter 0: Type SK Sunsynk 2026-08-14 12:20:02.516444: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 12:20:02.516631: Reserve min: 7%, battery_min: 7% 2026-08-14 12:20:02.516700: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 12:20:02.517012: Inverter 0 SoC: 1.63kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1185W, current battery voltage 51.2V, grid power -53W, load power 1230W, PV Power 0W 2026-08-14 12:20:02.517186: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:20:02.517278: Inverter 0 scheduled charge enable is False 2026-08-14 12:20:02.517373: Inverter 0 charge windows currently [] 2026-08-14 12:20:02.517450: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 12:20:02.517603: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:20:02.517644: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:20:02.517685: Inverter 0 scheduled discharge enable is False 2026-08-14 12:20:02.517826: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:20:02.517865: Inverter 0 discharge windows currently [] 2026-08-14 12:20:02.517888: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:20:02.517913: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:20:02.517930: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:20:02.582342: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 12:20:02.582450: Plan was last updated on 2026-08-14 12:15:00+01:00 and is now 5.0 minutes old 2026-08-14 12:20:02.582712: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 12:20:02.582755: Best export window [ ] 2026-08-14 12:20:02.583550: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 12:20:02.586573: Load divergence over 8.0 hours mean 368.83W, min 235.2W, max 1260.6W, std dev 143.77W, divergence 19.49% 2026-08-14 12:20:02.605199: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 12:20:02.605310: LoadML is_calculating False 2026-08-14 12:20:02.605419: Creating pool of 12 processes to match your CPU count 2026-08-14 12:20:02.721025: predict base end_record 08-15 13:05:00, final soc 1.12kWh, metric 919.55p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:45:00, load 30.28kWh, PV 0.0kWh 2026-08-14 12:20:02.835936: Battery has 0.42 hours left - now at 1.63kWh 2026-08-14 12:20:02.877623: predict base10 end_record 08-15 13:05:00, final soc 1.12kWh, metric 943.84p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:40:00, load 31.13kWh, PV 0.0kWh 2026-08-14 12:20:02.954014: predict best10 end_record 08-15 13:05:00, final soc 1.44kWh, metric 856.94p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:40:00, load 31.13kWh, PV 0.0kWh 2026-08-14 12:20:03.032760: predict best end_record 08-15 13:05:00, final soc 1.51kWh, metric 836.8p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 12:45:00, load 30.28kWh, PV 0.0kWh 2026-08-14 12:20:03.032858: Saving plan best values to HA entities 2026-08-14 12:20:03.190779: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 12:20:03.196204: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 12:20:03.201007: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.1kWh, house 4.44kWh, export 0.0kWh, metric 836.8p, metric10 856.94p 2026-08-14 12:20:03.267232: Marginal costs baseline metric (no standing charge): 786.8162 2026-08-14 12:20:03.487571: Marginal energy costs matrix computed: min=22.04 max=37.82 2026-08-14 12:20:03.551346: Rate array import [{'start': 740, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2225, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 740, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 12:20:03.551907: - Your estimated bill for today is £6.94 and tomorrow is £5.92 2026-08-14 12:20:03.551952: - Import rates are cheap (21.7p - 22.2p) for the next 3 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 12:20:03.551979: - The battery is currently at 10% and is in eco mode for the next 40 minutes. 2026-08-14 12:20:03.551996: - For the next 48 hours there will be no solar generation. 2026-08-14 12:20:03.552011: - You will run out of battery in 25 minutes. 2026-08-14 12:20:03.552025: - Your next charge slot will be in 40 minutes where import rates will be cheap (21.9p). 2026-08-14 12:20:03.552039: 2026-08-14 12:20:03.595365: Plan calculation took 1.01 seconds 2026-08-14 12:20:03.598659: No high rate period found 2026-08-14 12:20:03.646154: Import threshold used for optimisation was 25.64p 2026-08-14 12:20:03.693271: Low import rate windows [0: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 1: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 2: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 3: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 4: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 5: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 6: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 7: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 8: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 9: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 10: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 11: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 12: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 13: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 14: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 15: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 16: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 17: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 18: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 19: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 20: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 21: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 22: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 23: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 24: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 25: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 26: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 27: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 28: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 29: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 30: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 31: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 32: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 33: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 34: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 35: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 36: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 37: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 38: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 39: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 40: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 41: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 42: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 43: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 44: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 45: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 46: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 47: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 48: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 49: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 50: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 51: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 52: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 53: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 54: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 55: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 56: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 57: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 58: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 59: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 60: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 61: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 62: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 63: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 64: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 65: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 66: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 67: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 68: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 69: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 70: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 71: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 72: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 73: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 74: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 75: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 76: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 77: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 78: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 79: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 80: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 81: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 82: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 83: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 84: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 85: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 86: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 87: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 88: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 89: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 90: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 91: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 92: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 93: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 94: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 95: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19] 2026-08-14 12:20:03.700122: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-14 12:20:03.700240: Inverter 0 disabled charge window while waiting for schedule (now 08-14 12:20:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 12:20:03.700350: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:20:03.700568: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 12:20:03.700646: No export window planned 2026-08-14 12:20:03.700734: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 12:20:03.700764: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:20:03.700871: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 12:20:03.701066: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 12:20:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 12:20:03.701146: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 12:20:03.701230: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 12:20:03.701350: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:20:03.701389: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:20:03.701413: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:20:03.701438: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:20:03.701458: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:20:03.701481: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:20:03.701501: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:20:03.701563: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:20:03.701587: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:20:03.701607: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:20:03.701633: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:20:03.701653: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:20:03.701672: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:20:03.701690: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:20:03.701707: Inverter 0 count register writes 0 2026-08-14 12:20:03.715564: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 12:20:03.720067: Total inverter register writes now 806 2026-08-14 12:20:03.748096: Info: Completed run status Demand 2026-08-14 12:20:03.754874: Info: record_status Demand 2026-08-14 12:20:03.760727: Saved current settings to /config/predbat_config.json 2026-08-14 12:20:03.761021: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 12:20:43.869621: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:20:43.869864: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:20:43.869938: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:20:43.870117: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:20:43.870168: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:20:43.870191: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:20:43.870209: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:22:44.106256: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:22:44.106549: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:22:44.106620: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:22:44.106772: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:22:44.106837: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:22:44.106858: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:22:44.106876: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:24:44.328998: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:24:44.329329: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:24:44.329379: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:24:44.329522: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:24:44.329577: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:24:44.329613: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:24:44.329638: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:25:00.425194: --------------- PredBat - update at 2026-08-14 12:25:00+01:00 with clock skew 0 minutes, minutes now 745 2026-08-14 12:25:00.425978: Saved current settings to /config/predbat_config.json 2026-08-14 12:25:00.426126: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 45.0 minutes 2026-08-14 12:25:00.426220: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 12:25:00.426331: Autoupdate: Currently up to date 2026-08-14 12:25:00.446305: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 12:25:00.446446: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 12:25:00.446622: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 12:25:00.447130: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 12:25:00.447255: Predbat mode is set to Control charge & discharge 2026-08-14 12:25:00.622504: Found 21602 load_today datapoints going back 27 days 2026-08-14 12:25:00.622642: Using load_power data to fill gaps in load_today data 2026-08-14 12:25:01.453367: Processing 721 30-minute periods for power integration 2026-08-14 12:25:01.650726: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 12:25:01.650871: Car charging hold False, threshold 6.0kWh 2026-08-14 12:25:01.650939: Current data so far today: load 12.4kWh, import 13.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 12:25:01.666458: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 12:25:01.667357: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 12:25:01.667443: Standing charge is set to 49.98p 2026-08-14 12:25:01.719925: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 12:25:01.720043: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 12:25:01.720252: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 110.0 minutes 2026-08-14 12:25:01.720747: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 110.0 minutes 2026-08-14 12:25:01.727407: Loaded 95 datapoints of futurerate analysis 2026-08-14 12:25:01.827914: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45'] 2026-08-14 12:25:01.890981: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 12:25:01.896800: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 12:25:01.897253: Import rates: min 14.97p, max 53.39p, average 27.16p 2026-08-14 12:25:01.944161: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 12:25:01.944342: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 12:25:01.945627: High export rate found rates in range 99p to -99p 2026-08-14 12:25:02.044572: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 12:25:02.044729: Car 0 charging is not planned as it is not plugged in 2026-08-14 12:25:02.059128: Battery level now 1.63kWh, -1hr ago 1.77kWh, at midnight 2.43kWh, battery value change in the last hour -1.72p, change today -10.26p, rate_forward 12.86p 2026-08-14 12:25:02.059546: Last hour: net energy 0.8kWh, import 0.8kWh, export 0.0kWh, car 0kWh, load 1.0kWh, net cost 17.79p, import 17.79p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 12:25:02.123981: Today's energy total net 13.0kWh, import 13.0kWh, export 0.0kWh, cost 370.56p, import 320.58p, export 0.0p, carbon 0.0kg 2026-08-14 12:25:02.124139: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 12:25:02.202339: Using weighted-bucket historical load forecast over 14 days 2026-08-14 12:25:02.229604: Today's load divergence 125.92%, in-day adjustment 135.33%, damping 0.95x, yesterday 146.81% today 124.62% blend 48.26% 2026-08-14 12:25:02.229732: Today's predicted so far 7.24kWh with 0.0kWh car/iBoost excluded, 4.57kWh import ignored, and 7.24kWh forecast extra. 2026-08-14 12:25:02.229806: Today's actual load so far 12.29kWh with 0.0kWh car/iBoost excluded, and 4.57kWh import ignored. 2026-08-14 12:25:02.280197: Inverter 0: Type SK Sunsynk 2026-08-14 12:25:02.280346: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 12:25:02.280658: Reserve min: 7%, battery_min: 7% 2026-08-14 12:25:02.280802: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 12:25:02.281181: Inverter 0 SoC: 1.99kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 1112W, current battery voltage 51.2V, grid power -53W, load power 1167W, PV Power 0W 2026-08-14 12:25:02.281428: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:25:02.281531: Inverter 0 scheduled charge enable is False 2026-08-14 12:25:02.281582: Inverter 0 charge windows currently [] 2026-08-14 12:25:02.281640: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 12:25:02.281851: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:25:02.281908: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:25:02.281951: Inverter 0 scheduled discharge enable is False 2026-08-14 12:25:02.282166: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:25:02.282223: Inverter 0 discharge windows currently [] 2026-08-14 12:25:02.282265: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:25:02.282325: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:25:02.282361: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:25:02.357547: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 12:25:02.357698: Plan was last updated on 2026-08-14 12:15:00+01:00 and is now 10.0 minutes old 2026-08-14 12:25:02.358135: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 13:00:00 - 16-08 10:00:00 @ 21.87p 100% ] 2026-08-14 12:25:02.358213: Best export window [ ] 2026-08-14 12:25:02.359365: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 12:25:02.362966: Load divergence over 8.0 hours mean 369.13W, min 247.2W, max 1439.4W, std dev 165.81W, divergence 22.46% 2026-08-14 12:25:02.382448: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 12:25:02.382571: LoadML is_calculating False 2026-08-14 12:25:02.382638: Creating pool of 12 processes to match your CPU count 2026-08-14 12:25:02.503789: predict base end_record 08-15 13:10:00, final soc 1.12kWh, metric 911.34p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 13:05:00, load 30.36kWh, PV 0.0kWh 2026-08-14 12:25:02.684617: Battery has 0.67 hours left - now at 1.99kWh 2026-08-14 12:25:02.753136: predict base10 end_record 08-15 13:10:00, final soc 1.12kWh, metric 935.56p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 13:05:00, load 31.22kWh, PV 0.0kWh 2026-08-14 12:25:02.838663: predict best10 end_record 08-15 13:10:00, final soc 1.77kWh, metric 853.67p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:20:00, load 31.22kWh, PV 0.0kWh 2026-08-14 12:25:02.939360: predict best end_record 08-15 13:10:00, final soc 1.9kWh, metric 834.59p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:00:00, load 30.36kWh, PV 0.0kWh 2026-08-14 12:25:02.939462: Saving plan best values to HA entities 2026-08-14 12:25:03.110731: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 12:25:03.116656: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 12:25:03.122001: Best charging limit SoC's [16.0, 10.5, 12.5, 2.0, 16.0]kWh, export []kWh gives import battery 15.39kWh, house 4.19kWh, export 0.0kWh, metric 834.59p, metric10 853.67p 2026-08-14 12:25:03.198763: Marginal costs baseline metric (no standing charge): 784.6067 2026-08-14 12:25:03.479980: Marginal energy costs matrix computed: min=22.08 max=37.4 2026-08-14 12:25:03.552634: Rate array import [{'start': 745, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2230, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 745, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 12:25:03.553391: - Your estimated bill for today is £6.85 and tomorrow is £5.92 2026-08-14 12:25:03.553450: - Import rates are cheap (21.7p - 22.2p) for the next 3 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 12:25:03.553473: - The battery is currently at 12% and is in eco mode for the next 35 minutes. 2026-08-14 12:25:03.553491: - For the next 48 hours there will be no solar generation. 2026-08-14 12:25:03.553510: - You will run out of battery in 17 hours. 2026-08-14 12:25:03.553604: - Your next charge slot will be in 35 minutes where import rates will be cheap (21.9p). 2026-08-14 12:25:03.553641: 2026-08-14 12:25:03.601373: Plan calculation took 1.24 seconds 2026-08-14 12:25:03.605121: No high rate period found 2026-08-14 12:25:03.655938: Import threshold used for optimisation was 25.64p 2026-08-14 12:25:03.711112: Low import rate windows [0: 08-14 12:00:00 - 08-14 12:30:00 @ 22.19, 1: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 2: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 3: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 4: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 5: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 6: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 7: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 8: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 9: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 10: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 11: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 12: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 13: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 14: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 15: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 16: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 17: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 18: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 19: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 20: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 21: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 22: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 23: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 24: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 25: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 26: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 27: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 28: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 29: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 30: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 31: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 32: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 33: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 34: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 35: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 36: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 37: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 38: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 39: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 40: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 41: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 42: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 43: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 44: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 45: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 46: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 47: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 48: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 49: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 50: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 51: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 52: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 53: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 54: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 55: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 56: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 57: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 58: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 59: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 60: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 61: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 62: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 63: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 64: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 65: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 66: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 67: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 68: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 69: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 70: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 71: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 72: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 73: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 74: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 75: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 76: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 77: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 78: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 79: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 80: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 81: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 82: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 83: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 84: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 85: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 86: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 87: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 88: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 89: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 90: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 91: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 92: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 93: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 94: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 95: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19] 2026-08-14 12:25:03.718812: Inverter 0 Charge window will be: 2026-08-14 13:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 12:25:03.718951: Inverter 0 disabled charge window while waiting for schedule (now 08-14 12:25:00 target set_window_minutes 30 charge start time 08-14 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 12:25:03.719081: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:25:03.719442: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 12:25:03.719546: No export window planned 2026-08-14 12:25:03.719665: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 12:25:03.719702: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:25:03.719835: Adjust demand (idle) time computed is 04:50:00-23:59:00 2026-08-14 12:25:03.720018: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 12:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 12:25:03.720082: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 12:25:03.720140: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 12:25:03.720241: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:25:03.720298: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:25:03.720329: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:25:03.720389: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:25:03.720418: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:25:03.720442: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:25:03.720469: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:25:03.720535: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:03.720571: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:03.720597: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:03.720622: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:03.720646: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:03.720679: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:03.720704: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:03.720724: Inverter 0 count register writes 0 2026-08-14 12:25:03.741494: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 12:25:03.741674: Recompute is saving previous plan... 2026-08-14 12:25:03.744802: Best charge window [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 0%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 0%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 0%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 0%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 0%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 0%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 0%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 0% ] 2026-08-14 12:25:03.744881: Best export window [ ] 2026-08-14 12:25:03.745757: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 12:25:03.748802: Load divergence over 8.0 hours mean 369.13W, min 247.2W, max 1439.4W, std dev 165.81W, divergence 22.46% 2026-08-14 12:25:03.768117: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 12:25:03.768941: LoadML is_calculating False 2026-08-14 12:25:03.769111: Creating pool of 12 processes to match your CPU count 2026-08-14 12:25:03.860941: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 12:25:03.863164: Optimise levels pass started at 2026-08-14 12:25:03 2026-08-14 12:25:03.863231: Optimise all windows, total charge 95 export 1 2026-08-14 12:25:04.795625: >> Region optimisation pass width 960 gives best_metric 1012.05p, best_cost 1020.88p, best_cycle 49.41kWh, best_import 34.81kWh 2026-08-14 12:25:05.234876: >> Region optimisation pass width 480 gives best_metric 1012.05p, best_cost 1020.88p, best_cycle 49.41kWh, best_import 34.81kWh 2026-08-14 12:25:05.679802: >> Region optimisation pass width 240 gives best_metric 1012.05p, best_cost 1020.88p, best_cycle 49.41kWh, best_import 34.81kWh 2026-08-14 12:25:06.830868: >> Region optimisation pass width 120 gives best_metric 1012.05p, best_cost 1020.88p, best_cycle 49.41kWh, best_import 34.81kWh 2026-08-14 12:25:06.831371: Calculated end_record as 08-15 13:00:00 based on best_price 22.02p, next_charge_start 08-14 13:00:00, max_windows 49 2026-08-14 12:25:06.831472: Optimise levels pass ended at 2026-08-14 12:25:06, duration 3.0 seconds tried 307 combinations 2026-08-14 12:25:06.831555: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1012.05p, best_keep 0kWh, best_cycle 49.41kWh, best_carbon 0kg, best_import 34.81kWh 2026-08-14 12:25:06.854360: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 15.78p with charge limits [0, 0, 16.0, 16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.75, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 12:25:11.767132: Tweak plan optimisation started metric 756.24p, cost 767.56p 2026-08-14 12:25:12.026706: Tweak optimisation finished metric 756.24p, cost 767.56p, metric_keep 0kWh, cycle 21.87kWh, carbon 0kg, import 18.52kWh, changed 8 window(s) 2026-08-14 12:25:12.042755: Swap charge optimisation started metric 756.24p, cost 767.56p, min_improvement_swap 0.1p 2026-08-14 12:25:14.985808: Swap charge optimisation finished metric 756.24p, cost 767.56p 2026-08-14 12:25:15.093571: Pruned 1 dead plan slot(s) in 9 trial(s), nominal metric 753.15p -> 753.15p, plan now metric 756.25p, cost 767.56p, cycle 21.87kWh, import 18.52kWh 2026-08-14 12:25:15.105492: Raw charge windows [ 14-08 12:00:00 - 14-08 12:30:00 @ 22.19p 13%, 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 66%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100% ] reserve 1.12 2026-08-14 12:25:15.106144: Unclipped charge windows [ 14-08 12:00:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 14:30:00 @ 21.75p 100%, 14-08 14:30:00 - 14-08 15:30:00 @ 22.13p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:30:00 @ 16.98p 100% ] reserve 1.12 2026-08-14 12:25:15.106422: Unfiltered charge windows [ 14-08 12:00:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 14:30:00 @ 21.75p 100%, 14-08 14:30:00 - 14-08 15:30:00 @ 22.13p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:30:00 @ 16.98p 100% ] reserve 1.12 2026-08-14 12:25:15.106679: Filtered charge windows [ 14-08 12:00:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 14:30:00 @ 21.75p 100%, 14-08 14:30:00 - 14-08 15:30:00 @ 22.13p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:30:00 @ 16.98p 100% ] reserve 1.12 2026-08-14 12:25:15.143919: Previous plan best metric is 758.35 (cost 769.59) and new plan best metric is 756.24 (cost 767.56) 2026-08-14 12:25:15.144381: New plan metric is significantly better from previous plan, using new plan 2026-08-14 12:25:15.144443: Plan valid is now true after recompute was False 2026-08-14 12:25:15.173230: predict base end_record 08-15 13:00:00, final soc 1.12kWh, metric 909.31p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 13:05:00, load 30.23kWh, PV 0.0kWh 2026-08-14 12:25:15.287954: Battery has 0.67 hours left - now at 1.99kWh 2026-08-14 12:25:15.335217: predict base10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 933.44p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 13:05:00, load 31.08kWh, PV 0.0kWh 2026-08-14 12:25:15.411091: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 838.16p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:50:00, load 31.08kWh, PV 0.0kWh 2026-08-14 12:25:15.497808: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 817.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:50:00, load 30.23kWh, PV 0.0kWh 2026-08-14 12:25:15.497906: Saving plan best values to HA entities 2026-08-14 12:25:15.663913: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 12:25:15.670418: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 12:25:15.684586: Best charging limit SoC's [2.0, 16.0, 10.5, 12.5, 16.0]kWh, export []kWh gives import battery 14.26kWh, house 4.26kWh, export 0.0kWh, metric 817.54p, metric10 838.16p 2026-08-14 12:25:15.778592: Marginal costs baseline metric (no standing charge): 767.5575 2026-08-14 12:25:16.020465: Marginal energy costs matrix computed: min=22.05 max=37.02 2026-08-14 12:25:16.098054: Rate array import [{'start': 745, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 745, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 12:25:16.098547: - Your estimated bill for today is £6.83 and tomorrow is £5.92 2026-08-14 12:25:16.098611: - Import rates are cheap (21.7p - 22.2p) for the next 3 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 12:25:16.098635: - The battery is currently at 12% and is charging to 13% for the next 35 minutes. 2026-08-14 12:25:16.098658: - For the next 48 hours there will be no solar generation. 2026-08-14 12:25:16.098692: - You will run out of battery in 17 hours. 2026-08-14 12:25:16.098722: 2026-08-14 12:25:16.148120: Plan calculation took 12.41 seconds 2026-08-14 12:25:16.148537: Inverter 0: Type SK Sunsynk 2026-08-14 12:25:16.148583: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 12:25:16.148816: Reserve min: 7%, battery_min: 7% 2026-08-14 12:25:16.148894: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 12:25:16.149267: Inverter 0 SoC: 1.94kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 1241W, current battery voltage 51.2V, grid power -55W, load power 1307W, PV Power 0W 2026-08-14 12:25:16.149535: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 12:25:16.149641: Inverter 0 scheduled charge enable is False 2026-08-14 12:25:16.149675: Inverter 0 charge windows currently [] 2026-08-14 12:25:16.149702: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 12:25:16.149807: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:25:16.149843: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:25:16.149877: Inverter 0 scheduled discharge enable is False 2026-08-14 12:25:16.150003: Inverter 0 idle time is 08-14 04:50:00-08-14 23:59:00 2026-08-14 12:25:16.150041: Inverter 0 discharge windows currently [] 2026-08-14 12:25:16.150068: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:25:16.150087: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:25:16.150125: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:25:16.218476: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 13% 2026-08-14 12:25:16.218742: Inverter 0 Target SoC 13%, (this inverter 13%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 12:25:16.218956: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:25:16.219150: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:25:16.219224: Inverter 0 set new demand (idle) start time to 16:00:00 was 04:50:00 2026-08-14 12:25:21.227488: Inverter 0 write_and_poll_value: Wrote 16:00:00 to idle_start_time, successfully now 16:00:00 2026-08-14 12:25:26.236477: Inverter 0 write_and_poll_value: Wrote 12:00:00 to charge_start_time, successfully now 12:00:00 2026-08-14 12:25:31.243963: Inverter 0 write_and_poll_value: Wrote 16:00:00 to charge_end_time, successfully now 16:00:00 2026-08-14 12:25:31.244110: Inverter 0 Updated start and end charge window to 12:00:00 - 16:00:00 (old 00:00:00 - 00:00:00) 2026-08-14 12:25:36.253776: Inverter 0 Wrote scheduled_charge_enable to True successfully and got on 2026-08-14 12:25:36.253907: Inverter 0 Turning on scheduled charge 2026-08-14 12:25:36.254011: No export window planned 2026-08-14 12:25:36.254211: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 12:25:36.254258: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:25:36.254495: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:25:36.254693: Inverter 0 setting charging SoC to 13% as per target 2026-08-14 12:25:36.254790: Inverter 0 adjust target SoC for charge to 13% (2.08kWh/16.0kWh 16.0kWh) based on going from 12% -> 13% total add is 0.14kWh and this battery needs to add 0.14kWh to get to 2.08kWh 2026-08-14 12:25:36.254847: Inverter 0 Current charge limit is 7% and new target is 13% 2026-08-14 12:25:41.335171: Inverter 0 write_and_poll_value: Wrote 13 to charge_limit, successfully now 13.0 2026-08-14 12:25:41.335564: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:41.335667: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:41.335731: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:41.335770: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:41.335796: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:41.335849: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:41.335909: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:41.335991: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog1_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 12:25:41.409265: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog2_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 12:25:41.416096: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog3_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 12:25:41.455012: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog4_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 12:25:41.499608: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog5_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 12:25:41.543200: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog6_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 12:25:41.587096: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_load_limit', 'option': 'Zero Export'} 2026-08-14 12:25:41.641904: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:41.642008: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:41.642046: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:41.642098: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:41.642147: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:41.642181: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:41.642231: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:25:41.642269: Inverter 0 count register writes 1 2026-08-14 12:25:41.667788: Total inverter register writes now 807 2026-08-14 12:25:41.701943: Info: Completed run status Charging 2026-08-14 12:25:42.016833: Info: record_status Charging target 12%-13% 2026-08-14 12:25:42.023800: Saved current settings to /config/predbat_config.json 2026-08-14 12:25:42.024093: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 12:26:14.116203: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:26:14.116519: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:26:14.116564: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:26:14.116700: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:26:14.116739: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:26:14.116760: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:26:14.116778: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:28:14.396693: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:28:14.397011: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:28:14.397059: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:28:14.397219: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:28:14.397258: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:28:14.397303: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:28:14.397322: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:30:00.591311: --------------- PredBat - update at 2026-08-14 12:30:00+01:00 with clock skew 0 minutes, minutes now 750 2026-08-14 12:30:00.592046: Saved current settings to /config/predbat_config.json 2026-08-14 12:30:00.592181: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 50.0 minutes 2026-08-14 12:30:00.592259: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 12:30:00.592382: Autoupdate: Currently up to date 2026-08-14 12:30:00.609587: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 12:30:00.609713: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 12:30:00.609883: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 12:30:00.610414: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 12:30:00.610570: Predbat mode is set to Control charge & discharge 2026-08-14 12:30:00.829104: Found 21602 load_today datapoints going back 28 days 2026-08-14 12:30:00.829274: Using load_power data to fill gaps in load_today data 2026-08-14 12:30:01.626399: Processing 721 30-minute periods for power integration 2026-08-14 12:30:01.779851: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 12:30:01.780056: Car charging hold False, threshold 6.0kWh 2026-08-14 12:30:01.780238: Current data so far today: load 12.35kWh, import 13.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 12:30:01.792333: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 12:30:01.793121: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 12:30:01.793199: Standing charge is set to 49.98p 2026-08-14 12:30:01.831432: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 12:30:01.831548: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 12:30:01.831762: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 115.0 minutes 2026-08-14 12:30:01.832162: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 115.0 minutes 2026-08-14 12:30:01.837997: Loaded 95 datapoints of futurerate analysis 2026-08-14 12:30:01.938958: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45'] 2026-08-14 12:30:02.002348: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 12:30:02.008272: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 12:30:02.008773: Import rates: min 14.97p, max 53.39p, average 27.15p 2026-08-14 12:30:02.054813: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 12:30:02.055288: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 12:30:02.057302: High export rate found rates in range 99p to -99p 2026-08-14 12:30:02.156503: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 12:30:02.157007: Car 0 charging is not planned as it is not plugged in 2026-08-14 12:30:02.170424: Battery level now 1.99kWh, -1hr ago 1.77kWh, at midnight 2.43kWh, battery value change in the last hour 2.84p, change today -5.7p, rate_forward 12.86p 2026-08-14 12:30:02.170865: Last hour: net energy 1.05kWh, import 1.05kWh, export 0.0kWh, car 0kWh, load 0.85kWh, net cost 23.3p, import 23.3p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 12:30:02.234461: Today's energy total net 13.4kWh, import 13.4kWh, export 0.0kWh, cost 379.44p, import 329.45p, export 0.0p, carbon 0.0kg 2026-08-14 12:30:02.234609: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 12:30:02.307769: Using weighted-bucket historical load forecast over 14 days 2026-08-14 12:30:02.329590: Today's load divergence 125.81%, in-day adjustment 135.2%, damping 0.95x, yesterday 146.81% today 124.52% blend 47.92% 2026-08-14 12:30:02.329676: Today's predicted so far 7.36kWh with 0.0kWh car/iBoost excluded, 4.82kWh import ignored, and 7.36kWh forecast extra. 2026-08-14 12:30:02.329706: Today's actual load so far 12.38kWh with 0.0kWh car/iBoost excluded, and 4.82kWh import ignored. 2026-08-14 12:30:02.365642: Inverter 0: Type SK Sunsynk 2026-08-14 12:30:02.365730: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 12:30:02.365913: Reserve min: 7%, battery_min: 7% 2026-08-14 12:30:02.365983: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 12:30:02.366240: Inverter 0 SoC: 2.0kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power -15W, current battery voltage 51.2V, grid power -1324W, load power 1317W, PV Power 0W 2026-08-14 12:30:02.366445: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:30:02.366585: Inverter 0 scheduled charge enable is True 2026-08-14 12:30:02.366657: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 12:30:02.366788: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 13.0%, power 5.0kW 2026-08-14 12:30:02.366969: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:30:02.367020: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:30:02.367063: Inverter 0 scheduled discharge enable is False 2026-08-14 12:30:02.367243: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:30:02.367290: Inverter 0 discharge windows currently [] 2026-08-14 12:30:02.367316: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:30:02.367335: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:30:02.367414: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:30:02.442728: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 12:30:02.442841: Plan was last updated on 2026-08-14 12:25:00+01:00 and is now 5.0 minutes old 2026-08-14 12:30:02.443166: Best charge window [ 14-08 12:00:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 14:30:00 @ 21.75p 100%, 14-08 14:30:00 - 14-08 15:30:00 @ 22.13p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:30:00 @ 16.98p 100% ] 2026-08-14 12:30:02.443245: Best export window [ ] 2026-08-14 12:30:02.444097: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 12:30:02.447327: Load divergence over 8.0 hours mean 366.92W, min 239.4W, max 1403.4W, std dev 158.35W, divergence 21.58% 2026-08-14 12:30:02.466218: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 12:30:02.466315: LoadML is_calculating False 2026-08-14 12:30:02.466393: Creating pool of 12 processes to match your CPU count 2026-08-14 12:30:02.593868: predict base end_record 08-15 13:05:00, final soc 2.08kWh, metric 917.5p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:30:00, load 30.12kWh, PV 0.0kWh 2026-08-14 12:30:02.755153: Battery has 5.0 hours left - now at 2.0kWh 2026-08-14 12:30:02.835143: predict base10 end_record 08-15 13:05:00, final soc 2.08kWh, metric 941.76p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:25:00, load 30.97kWh, PV 0.0kWh 2026-08-14 12:30:02.942716: predict best10 end_record 08-15 13:05:00, final soc 1.44kWh, metric 850.35p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:50:00, load 30.97kWh, PV 0.0kWh 2026-08-14 12:30:03.052845: predict best end_record 08-15 13:05:00, final soc 1.51kWh, metric 830.91p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 30.12kWh, PV 0.0kWh 2026-08-14 12:30:03.052982: Saving plan best values to HA entities 2026-08-14 12:30:03.243134: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 12:30:03.249712: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 12:30:03.255773: Best charging limit SoC's [2.0, 16.0, 10.5, 12.5, 16.0]kWh, export []kWh gives import battery 14.63kWh, house 4.24kWh, export 0.0kWh, metric 830.91p, metric10 850.35p 2026-08-14 12:30:03.340405: Marginal costs baseline metric (no standing charge): 780.9223 2026-08-14 12:30:03.615063: Marginal energy costs matrix computed: min=22.02 max=36.56 2026-08-14 12:30:03.686042: Rate array import [{'start': 750, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2225, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 750, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 12:30:03.686446: - Your estimated bill for today is £6.89 and tomorrow is £5.90 2026-08-14 12:30:03.686491: - Import rates are cheap (21.7p - 22.2p) for the next 3 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 12:30:03.686511: - The battery is currently at 12% and is charging to 13% for the next 30 minutes. 2026-08-14 12:30:03.686525: - For the next 48 hours there will be no solar generation. 2026-08-14 12:30:03.686540: - You will run out of battery in 17 hours. 2026-08-14 12:30:03.686554: 2026-08-14 12:30:03.739895: Plan calculation took 1.30 seconds 2026-08-14 12:30:03.742834: No high rate period found 2026-08-14 12:30:03.797343: Import threshold used for optimisation was 25.52p 2026-08-14 12:30:03.843940: Low import rate windows [0: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 1: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 2: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 3: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 4: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 5: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 6: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 7: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 8: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 9: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 10: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 11: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 12: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 13: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 14: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 15: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 16: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 17: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 18: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 19: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 20: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 21: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 22: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 23: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 24: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 25: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 26: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 27: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 28: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 29: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 30: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 31: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 32: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 33: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 34: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 35: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 36: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 37: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 38: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 39: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 40: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 41: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 42: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 43: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 44: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 45: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 46: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 47: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 48: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 49: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 50: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 51: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 52: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 53: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 54: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 55: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 56: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 57: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 58: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 59: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 60: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 61: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 62: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 63: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 64: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 65: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 66: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 67: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 68: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 69: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 70: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 71: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 72: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 73: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 74: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 75: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 76: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 77: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 78: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 79: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 80: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 81: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 82: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 83: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 84: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 85: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 86: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 87: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 88: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 89: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 90: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 91: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 92: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 93: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 94: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19] 2026-08-14 12:30:03.854378: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 12:00:00 2026-08-14 12:30:03.854486: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 13% 2026-08-14 12:30:03.854691: Inverter 0 Target SoC 13%, (this inverter 13%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 12:30:03.854968: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:30:03.855243: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:30:03.855376: No export window planned 2026-08-14 12:30:03.855542: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 12:30:03.855586: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:30:03.855756: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:30:03.855906: Inverter 0 setting charging SoC to 13% as per target 2026-08-14 12:30:03.856007: Inverter 0 adjust target SoC for charge to 13% (2.08kWh/16.0kWh 16.0kWh) based on going from 12% -> 13% total add is 0.08kWh and this battery needs to add 0.08kWh to get to 2.08kWh 2026-08-14 12:30:03.856092: Inverter 0 Current Target SoC is 13%, already at target 2026-08-14 12:30:03.856239: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.856305: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.856370: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.856425: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.856477: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.856525: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.856552: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.856595: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.856646: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.856709: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.856766: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.856809: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.856850: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.856897: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.857032: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.857078: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.857110: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.857133: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.857160: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.857184: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.857222: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:30:03.857246: Inverter 0 count register writes 0 2026-08-14 12:30:03.873976: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 12:30:03.878781: Total inverter register writes now 807 2026-08-14 12:30:03.911628: Info: Completed run status Charging 2026-08-14 12:30:03.918432: Info: record_status Charging target 12%-13% 2026-08-14 12:30:03.924558: Saved current settings to /config/predbat_config.json 2026-08-14 12:30:03.924852: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 12:30:44.030271: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:30:44.030576: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:30:44.030641: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:30:44.030839: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:30:44.030888: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:30:44.030908: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:30:44.030926: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:32:44.252935: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:32:44.253291: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:32:44.253335: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:32:44.253459: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:32:44.253495: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:32:44.253535: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:32:44.253552: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:34:44.504471: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:34:44.504800: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:34:44.504855: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:34:44.505088: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:34:44.505139: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:34:44.505162: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:34:44.505181: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:35:00.609689: --------------- PredBat - update at 2026-08-14 12:35:00+01:00 with clock skew 0 minutes, minutes now 755 2026-08-14 12:35:00.610537: Saved current settings to /config/predbat_config.json 2026-08-14 12:35:00.610766: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 55.0 minutes 2026-08-14 12:35:00.610896: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 12:35:00.610974: Autoupdate: Currently up to date 2026-08-14 12:35:00.628827: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 12:35:00.628933: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 12:35:00.629119: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 12:35:00.629539: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 12:35:00.629678: Predbat mode is set to Control charge & discharge 2026-08-14 12:35:00.786824: Found 21602 load_today datapoints going back 28 days 2026-08-14 12:35:00.786952: Using load_power data to fill gaps in load_today data 2026-08-14 12:35:01.456091: Processing 721 30-minute periods for power integration 2026-08-14 12:35:01.618628: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 12:35:01.618796: Car charging hold False, threshold 6.0kWh 2026-08-14 12:35:01.618844: Current data so far today: load 12.4kWh, import 13.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 12:35:01.633877: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 12:35:01.634799: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 12:35:01.634883: Standing charge is set to 49.98p 2026-08-14 12:35:01.683010: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 12:35:01.683119: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 12:35:01.683413: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 120.0 minutes 2026-08-14 12:35:01.683968: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 120.0 minutes 2026-08-14 12:35:01.690039: Loaded 95 datapoints of futurerate analysis 2026-08-14 12:35:01.789483: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45'] 2026-08-14 12:35:01.847762: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 12:35:01.853735: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 12:35:01.854241: Import rates: min 14.97p, max 53.39p, average 27.14p 2026-08-14 12:35:01.899431: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 12:35:01.899557: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 12:35:01.901134: High export rate found rates in range 99p to -99p 2026-08-14 12:35:01.978936: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 12:35:01.979079: Car 0 charging is not planned as it is not plugged in 2026-08-14 12:35:01.990343: Battery level now 2.0kWh, -1hr ago 2.0kWh, at midnight 2.43kWh, battery value change in the last hour -0.05p, change today -5.61p, rate_forward 12.86p 2026-08-14 12:35:01.990733: Last hour: net energy 0.9kWh, import 0.9kWh, export 0.0kWh, car 0kWh, load 0.8kWh, net cost 19.97p, import 19.97p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 12:35:02.040438: Today's energy total net 13.4kWh, import 13.4kWh, export 0.0kWh, cost 379.44p, import 329.45p, export 0.0p, carbon 0.0kg 2026-08-14 12:35:02.040568: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 12:35:02.124532: Using weighted-bucket historical load forecast over 14 days 2026-08-14 12:35:02.150883: Today's load divergence 125.95%, in-day adjustment 135.19%, damping 0.95x, yesterday 146.81% today 124.65% blend 47.57% 2026-08-14 12:35:02.150976: Today's predicted so far 7.46kWh with 0.0kWh car/iBoost excluded, 4.79kWh import ignored, and 7.46kWh forecast extra. 2026-08-14 12:35:02.151007: Today's actual load so far 12.51kWh with 0.0kWh car/iBoost excluded, and 4.79kWh import ignored. 2026-08-14 12:35:02.185483: Inverter 0: Type SK Sunsynk 2026-08-14 12:35:02.185576: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 12:35:02.185853: Reserve min: 7%, battery_min: 7% 2026-08-14 12:35:02.185967: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 12:35:02.186286: Inverter 0 SoC: 2.0kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power -15W, current battery voltage 51.2V, grid power -1430W, load power 1388W, PV Power 0W 2026-08-14 12:35:02.186483: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:35:02.186630: Inverter 0 scheduled charge enable is True 2026-08-14 12:35:02.186709: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 12:35:02.186862: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 13.0%, power 5.0kW 2026-08-14 12:35:02.187032: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:35:02.187093: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:35:02.187156: Inverter 0 scheduled discharge enable is False 2026-08-14 12:35:02.187322: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:35:02.187366: Inverter 0 discharge windows currently [] 2026-08-14 12:35:02.187410: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:35:02.187449: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:35:02.187469: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:35:02.250393: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 12:35:02.250939: Plan was last updated on 2026-08-14 12:25:00+01:00 and is now 10.0 minutes old 2026-08-14 12:35:02.251316: Best charge window [ 14-08 12:00:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 14:30:00 @ 21.75p 100%, 14-08 14:30:00 - 14-08 15:30:00 @ 22.13p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:30:00 @ 16.98p 100% ] 2026-08-14 12:35:02.251368: Best export window [ ] 2026-08-14 12:35:02.252251: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 12:35:02.255432: Load divergence over 8.0 hours mean 360.24W, min 230.4W, max 1174.8W, std dev 133.01W, divergence 18.46% 2026-08-14 12:35:02.273901: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 12:35:02.273991: LoadML is_calculating False 2026-08-14 12:35:02.274054: Creating pool of 12 processes to match your CPU count 2026-08-14 12:35:02.385051: predict base end_record 08-15 13:10:00, final soc 2.08kWh, metric 916.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:30:00, load 30.14kWh, PV 0.0kWh 2026-08-14 12:35:02.511423: Battery has 4.92 hours left - now at 2.0kWh 2026-08-14 12:35:02.553343: predict base10 end_record 08-15 13:10:00, final soc 2.08kWh, metric 940.5p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:25:00, load 30.98kWh, PV 0.0kWh 2026-08-14 12:35:02.635989: predict best10 end_record 08-15 13:10:00, final soc 1.77kWh, metric 854.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:55:00, load 30.98kWh, PV 0.0kWh 2026-08-14 12:35:02.713725: predict best end_record 08-15 13:10:00, final soc 1.9kWh, metric 836.18p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 30.14kWh, PV 0.0kWh 2026-08-14 12:35:02.713803: Saving plan best values to HA entities 2026-08-14 12:35:02.894395: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 12:35:02.900510: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 12:35:02.905934: Best charging limit SoC's [2.0, 16.0, 10.5, 12.5, 16.0]kWh, export []kWh gives import battery 15.03kWh, house 4.22kWh, export 0.0kWh, metric 836.18p, metric10 854.51p 2026-08-14 12:35:02.974356: Marginal costs baseline metric (no standing charge): 786.2007 2026-08-14 12:35:03.201201: Marginal energy costs matrix computed: min=21.98 max=36.01 2026-08-14 12:35:03.264394: Rate array import [{'start': 755, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2230, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 755, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 12:35:03.264908: - Your estimated bill for today is £6.87 and tomorrow is £5.88 2026-08-14 12:35:03.264994: - Import rates are cheap (21.7p - 22.2p) for the next 3 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 12:35:03.265033: - The battery is currently at 12% and is charging to 13% for the next 25 minutes. 2026-08-14 12:35:03.265063: - For the next 48 hours there will be no solar generation. 2026-08-14 12:35:03.265111: - You will run out of battery in 17 hours. 2026-08-14 12:35:03.265137: 2026-08-14 12:35:03.311940: Plan calculation took 1.06 seconds 2026-08-14 12:35:03.314873: No high rate period found 2026-08-14 12:35:03.363545: Import threshold used for optimisation was 25.52p 2026-08-14 12:35:03.410938: Low import rate windows [0: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 1: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 2: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 3: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 4: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 5: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 6: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 7: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 8: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 9: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 10: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 11: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 12: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 13: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 14: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 15: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 16: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 17: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 18: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 19: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 20: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 21: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 22: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 23: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 24: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 25: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 26: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 27: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 28: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 29: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 30: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 31: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 32: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 33: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 34: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 35: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 36: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 37: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 38: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 39: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 40: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 41: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 42: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 43: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 44: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 45: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 46: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 47: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 48: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 49: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 50: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 51: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 52: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 53: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 54: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 55: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 56: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 57: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 58: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 59: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 60: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 61: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 62: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 63: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 64: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 65: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 66: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 67: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 68: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 69: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 70: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 71: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 72: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 73: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 74: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 75: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 76: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 77: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 78: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 79: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 80: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 81: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 82: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 83: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 84: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 85: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 86: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 87: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 88: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 89: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 90: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 91: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 92: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 93: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 94: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 95: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78] 2026-08-14 12:35:03.417566: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 12:00:00 2026-08-14 12:35:03.417709: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 12%, target 13% 2026-08-14 12:35:03.417950: Inverter 0 Target SoC 13%, (this inverter 13%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 12:35:03.418188: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:35:03.418434: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:35:03.418525: No export window planned 2026-08-14 12:35:03.418637: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 12:35:03.418670: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:35:03.418783: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:35:03.418928: Inverter 0 setting charging SoC to 13% as per target 2026-08-14 12:35:03.418978: Inverter 0 adjust target SoC for charge to 13% (2.08kWh/16.0kWh 16.0kWh) based on going from 12% -> 13% total add is 0.08kWh and this battery needs to add 0.08kWh to get to 2.08kWh 2026-08-14 12:35:03.419029: Inverter 0 Current Target SoC is 13%, already at target 2026-08-14 12:35:03.419121: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419167: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419192: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419216: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419236: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419257: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419277: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419312: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419342: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419364: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419384: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419404: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419424: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419443: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419493: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419515: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419534: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419553: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419574: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419593: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419631: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:03.419649: Inverter 0 count register writes 0 2026-08-14 12:35:03.434068: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 12:35:03.434209: Recompute is saving previous plan... 2026-08-14 12:35:03.436736: Best charge window [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 13%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 13%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 13%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 13%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 13%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 13%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 13%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 13%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 13%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 13%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 13%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 13%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 13%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 13%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 13%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 13%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 13%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 13%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 13%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 13%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 13%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 13%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 13%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 13%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 13%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 13%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 13%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 13%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 13%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 13%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 13%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 13%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 13%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 13%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 13%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 13%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 13%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 13%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 13%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 13%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 13%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 13%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 13%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 13%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 13%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 13%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 13%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 13%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 13%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 13%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 13%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 13%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 13%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 13%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 13%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 13%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 13%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 13%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 13%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 13%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 13%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 13%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 13%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 13%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 13%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 13%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 13%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 13%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 13%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 13%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 13%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 13%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 13%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 13%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 13%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 13%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 13%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 13%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 13%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 13%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 13%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 13%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 13%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 13%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 13%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 13%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 13%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 13%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 13%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 13%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 13%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 13%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 13% ] 2026-08-14 12:35:03.436807: Best export window [ ] 2026-08-14 12:35:03.437464: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 12:35:03.439863: Load divergence over 8.0 hours mean 360.24W, min 230.4W, max 1174.8W, std dev 133.01W, divergence 18.46% 2026-08-14 12:35:03.454215: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 12:35:03.454290: LoadML is_calculating False 2026-08-14 12:35:03.454344: Creating pool of 12 processes to match your CPU count 2026-08-14 12:35:03.537821: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 12:35:03.540229: Optimise levels pass started at 2026-08-14 12:35:03 2026-08-14 12:35:03.540313: Optimise all windows, total charge 95 export 1 2026-08-14 12:35:04.432643: >> Region optimisation pass width 960 gives best_metric 1017.01p, best_cost 1025.9p, best_cycle 48.99kWh, best_import 34.67kWh 2026-08-14 12:35:05.044585: >> Region optimisation pass width 480 gives best_metric 1015.42p, best_cost 1024.37p, best_cycle 47.98kWh, best_import 34.6kWh 2026-08-14 12:35:05.560818: >> Region optimisation pass width 240 gives best_metric 1015.42p, best_cost 1024.37p, best_cycle 47.98kWh, best_import 34.6kWh 2026-08-14 12:35:06.659531: >> Region optimisation pass width 120 gives best_metric 1015.42p, best_cost 1024.37p, best_cycle 47.98kWh, best_import 34.6kWh 2026-08-14 12:35:06.659978: Calculated end_record as 08-15 13:00:00 based on best_price 22.19p, next_charge_start 08-14 13:00:00, max_windows 48 2026-08-14 12:35:06.660057: Optimise levels pass ended at 2026-08-14 12:35:06, duration 3.1 seconds tried 347 combinations 2026-08-14 12:35:06.660122: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.19p, best_cost_export 0p, best_metric 1015.42p, best_keep 0kWh, best_cycle 47.98kWh, best_carbon 0kg, best_import 34.6kWh 2026-08-14 12:35:06.681636: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.19p, best_price_export 0p. lowest_price_charge 15.78p with charge limits [1.75, 12.5, 12.5, 12.5, 12.5, 0, 12.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.75, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 12:35:10.789014: Tweak plan optimisation started metric 760.03p, cost 771.35p 2026-08-14 12:35:11.130650: Tweak optimisation finished metric 760.03p, cost 771.35p, metric_keep 0kWh, cycle 21.87kWh, carbon 0kg, import 18.3kWh, changed 8 window(s) 2026-08-14 12:35:11.151295: Swap charge optimisation started metric 760.03p, cost 771.35p, min_improvement_swap 0.1p 2026-08-14 12:35:13.058166: Swap charge optimisation finished metric 760.03p, cost 771.35p 2026-08-14 12:35:13.142318: Raw charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100% ] reserve 1.12 2026-08-14 12:35:13.143003: Unclipped charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 13:00:00 @ 16.38p 100% ] reserve 1.12 2026-08-14 12:35:13.143295: Unfiltered charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 13:00:00 @ 16.38p 100% ] reserve 1.12 2026-08-14 12:35:13.143577: Filtered charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 13:00:00 @ 16.38p 100% ] reserve 1.12 2026-08-14 12:35:13.174972: Previous plan best metric is 759.96 (cost 771.31) and new plan best metric is 760.03 (cost 771.35) 2026-08-14 12:35:13.175263: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 12:35:13.175483: Plan valid is now true after recompute was False 2026-08-14 12:35:13.201131: predict base end_record 08-15 13:00:00, final soc 2.08kWh, metric 914.37p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:30:00, load 30.01kWh, PV 0.0kWh 2026-08-14 12:35:13.318242: Battery has 4.92 hours left - now at 2.0kWh 2026-08-14 12:35:13.356214: predict base10 end_record 08-15 13:00:00, final soc 2.08kWh, metric 938.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:25:00, load 30.85kWh, PV 0.0kWh 2026-08-14 12:35:13.421984: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 841.69p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:55:00, load 30.85kWh, PV 0.0kWh 2026-08-14 12:35:13.498555: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 821.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 30.01kWh, PV 0.0kWh 2026-08-14 12:35:13.498657: Saving plan best values to HA entities 2026-08-14 12:35:13.643426: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 12:35:13.648762: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 12:35:13.654242: Best charging limit SoC's [2.0, 16.0, 10.5, 12.5, 16.0]kWh, export []kWh gives import battery 14.07kWh, house 4.22kWh, export 0.0kWh, metric 821.29p, metric10 841.69p 2026-08-14 12:35:13.722798: Marginal costs baseline metric (no standing charge): 771.3102 2026-08-14 12:35:13.938378: Marginal energy costs matrix computed: min=21.98 max=36.01 2026-08-14 12:35:13.996837: Rate array import [{'start': 755, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 755, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 12:35:13.997257: - Your estimated bill for today is £6.87 and tomorrow is £5.88 2026-08-14 12:35:13.997313: - Import rates are cheap (21.7p - 22.2p) for the next 3 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 12:35:13.997334: - The battery is currently at 12% and is charging to 13% for the next 25 minutes. 2026-08-14 12:35:13.997349: - For the next 48 hours there will be no solar generation. 2026-08-14 12:35:13.997364: - You will run out of battery in 17 hours. 2026-08-14 12:35:13.997397: 2026-08-14 12:35:14.047068: Plan calculation took 10.61 seconds 2026-08-14 12:35:14.047438: Inverter 0: Type SK Sunsynk 2026-08-14 12:35:14.047482: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 12:35:14.047731: Reserve min: 7%, battery_min: 7% 2026-08-14 12:35:14.047813: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 12:35:14.048136: Inverter 0 SoC: 2.08kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power -11W, current battery voltage 51.2V, grid power -1398W, load power 1384W, PV Power 0W 2026-08-14 12:35:14.048370: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:35:14.048482: Inverter 0 scheduled charge enable is True 2026-08-14 12:35:14.048536: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 12:35:14.048640: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 13.0%, power 5.0kW 2026-08-14 12:35:14.048767: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:35:14.048803: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:35:14.048845: Inverter 0 scheduled discharge enable is False 2026-08-14 12:35:14.049040: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:35:14.049088: Inverter 0 discharge windows currently [] 2026-08-14 12:35:14.049119: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:35:14.049145: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:35:14.049163: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:35:14.108216: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 12:00:00 2026-08-14 12:35:14.108341: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 13% 2026-08-14 12:35:14.108496: Inverter 0 Target SoC 13%, (this inverter 13%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 12:35:14.108643: Inverter 0 Hold charging as SoC 13% is above target SoC 13% (global soc target 13%) set_discharge_during_charge True 2026-08-14 12:35:14.108807: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:35:14.109034: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:35:14.109146: Inverter 0 current discharge rate is 5000W and new target is 0W 2026-08-14 12:35:19.116281: Inverter 0 write_and_poll_value: Wrote 0 to discharge_rate, successfully now 0.0 2026-08-14 12:35:24.199838: Inverter 0 write_and_poll_value: Wrote 0.0 to timed_discharge_current, successfully now 0.0 2026-08-14 12:35:24.200005: No export window planned 2026-08-14 12:35:24.200216: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 12:35:24.200267: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:35:24.200532: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:35:24.200687: Inverter 0 setting charging SoC to 13% as per target 2026-08-14 12:35:24.200802: Inverter 0 adjust target SoC for charge to 13% (2.08kWh/16.0kWh 16.0kWh) based on going from 13% -> 13% total add is 0.0kWh and this battery needs to add 0.0kWh to get to 2.08kWh 2026-08-14 12:35:24.200898: Inverter 0 Current Target SoC is 13%, already at target 2026-08-14 12:35:24.201126: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.201183: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.201270: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.201333: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.201387: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.201474: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.201530: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.201640: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.201698: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.201752: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.201806: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.201864: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.201907: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.201969: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.202096: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.202171: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.202229: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.202281: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.202315: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.202370: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.202427: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:35:24.202481: Inverter 0 count register writes 1 2026-08-14 12:35:24.231125: Total inverter register writes now 808 2026-08-14 12:35:24.270161: Info: Completed run status Hold charging 2026-08-14 12:35:24.589041: Info: record_status Hold charging target 13%-13% 2026-08-14 12:35:24.595946: Saved current settings to /config/predbat_config.json 2026-08-14 12:35:24.596257: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 12:35:58.697935: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:35:58.698231: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:35:58.698277: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:35:58.698415: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:35:58.698453: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:35:58.698473: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:35:58.698493: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:37:58.918091: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:37:58.918467: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:37:58.918559: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:37:58.918843: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:37:58.918912: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:37:58.918953: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:37:58.918988: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:39:59.147801: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:39:59.148136: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:39:59.148187: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:39:59.148372: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:39:59.148419: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:39:59.148443: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:39:59.148486: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:40:00.244891: --------------- PredBat - update at 2026-08-14 12:40:00+01:00 with clock skew 0 minutes, minutes now 760 2026-08-14 12:40:00.245672: Saved current settings to /config/predbat_config.json 2026-08-14 12:40:00.245826: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 60.0 minutes 2026-08-14 12:40:00.245935: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 12:40:00.246013: Autoupdate: Currently up to date 2026-08-14 12:40:00.267559: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 12:40:00.267697: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 12:40:00.267888: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 12:40:00.268392: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 12:40:00.268516: Predbat mode is set to Control charge & discharge 2026-08-14 12:40:00.443397: Found 21602 load_today datapoints going back 28 days 2026-08-14 12:40:00.443522: Using load_power data to fill gaps in load_today data 2026-08-14 12:40:01.131069: Processing 721 30-minute periods for power integration 2026-08-14 12:40:01.284607: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 12:40:01.284820: Car charging hold False, threshold 6.0kWh 2026-08-14 12:40:01.284867: Current data so far today: load 12.6kWh, import 13.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 12:40:01.296856: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 12:40:01.297604: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 12:40:01.297678: Standing charge is set to 49.98p 2026-08-14 12:40:01.354333: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 12:40:01.354447: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 12:40:01.354698: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 125.0 minutes 2026-08-14 12:40:01.355135: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 125.0 minutes 2026-08-14 12:40:01.359789: Loaded 95 datapoints of futurerate analysis 2026-08-14 12:40:01.436834: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45'] 2026-08-14 12:40:01.482939: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 12:40:01.487646: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 12:40:01.488295: Import rates: min 14.97p, max 53.39p, average 27.13p 2026-08-14 12:40:01.522939: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 12:40:01.523044: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 12:40:01.524190: High export rate found rates in range 99p to -99p 2026-08-14 12:40:01.600938: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 12:40:01.601075: Car 0 charging is not planned as it is not plugged in 2026-08-14 12:40:01.611394: Battery level now 2.0kWh, -1hr ago 1.92kWh, at midnight 2.43kWh, battery value change in the last hour 0.98p, change today -5.61p, rate_forward 12.86p 2026-08-14 12:40:01.611690: Last hour: net energy 1.24kWh, import 1.24kWh, export 0.0kWh, car 0kWh, load 0.95kWh, net cost 27.46p, import 27.46p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 12:40:01.658014: Today's energy total net 13.8kWh, import 13.8kWh, export 0.0kWh, cost 388.31p, import 338.33p, export 0.0p, carbon 0.0kg 2026-08-14 12:40:01.658152: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 12:40:01.728224: Using weighted-bucket historical load forecast over 14 days 2026-08-14 12:40:01.755124: Today's load divergence 126.36%, in-day adjustment 135.32%, damping 0.95x, yesterday 146.81% today 125.05% blend 47.22% 2026-08-14 12:40:01.755225: Today's predicted so far 7.48kWh with 0.0kWh car/iBoost excluded, 4.97kWh import ignored, and 7.48kWh forecast extra. 2026-08-14 12:40:01.755259: Today's actual load so far 12.65kWh with 0.0kWh car/iBoost excluded, and 4.97kWh import ignored. 2026-08-14 12:40:01.792337: Inverter 0: Type SK Sunsynk 2026-08-14 12:40:01.792428: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 12:40:01.792689: Reserve min: 7%, battery_min: 7% 2026-08-14 12:40:01.792816: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 12:40:01.793218: Inverter 0 SoC: 2.08kW 13%, current charge rate 5000W, current discharge rate 0W, current battery power -15W, current battery voltage 51.2V, grid power -1395W, load power 1395W, PV Power 0W 2026-08-14 12:40:01.793428: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:40:01.793561: Inverter 0 scheduled charge enable is True 2026-08-14 12:40:01.793634: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 12:40:01.793804: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 13.0%, power 5.0kW 2026-08-14 12:40:01.793978: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:40:01.794038: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:40:01.794105: Inverter 0 scheduled discharge enable is False 2026-08-14 12:40:01.794291: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:40:01.794338: Inverter 0 discharge windows currently [] 2026-08-14 12:40:01.794371: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:40:01.794407: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:40:01.794439: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:40:01.848253: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 12:40:01.848361: Plan was last updated on 2026-08-14 12:35:00+01:00 and is now 5.0 minutes old 2026-08-14 12:40:01.848602: Best charge window [ 14-08 12:00:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 14:30:00 @ 21.75p 100%, 14-08 14:30:00 - 14-08 15:30:00 @ 22.13p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:30:00 @ 16.98p 100% ] 2026-08-14 12:40:01.848645: Best export window [ ] 2026-08-14 12:40:01.849593: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 12:40:01.852697: Load divergence over 8.0 hours mean 356.67W, min 240.6W, max 1225.8W, std dev 116.14W, divergence 16.28% 2026-08-14 12:40:01.871801: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 12:40:01.871937: LoadML is_calculating False 2026-08-14 12:40:01.872004: Creating pool of 12 processes to match your CPU count 2026-08-14 12:40:01.996181: predict base end_record 08-15 13:05:00, final soc 2.08kWh, metric 920.86p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:30:00, load 30.2kWh, PV 0.0kWh 2026-08-14 12:40:02.120829: Battery has 4.83 hours left - now at 2.08kWh 2026-08-14 12:40:02.165539: predict base10 end_record 08-15 13:05:00, final soc 2.08kWh, metric 944.91p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:25:00, load 31.04kWh, PV 0.0kWh 2026-08-14 12:40:02.242730: predict best10 end_record 08-15 13:05:00, final soc 1.44kWh, metric 853.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:50:00, load 31.04kWh, PV 0.0kWh 2026-08-14 12:40:02.320337: predict best end_record 08-15 13:05:00, final soc 1.51kWh, metric 834.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 30.2kWh, PV 0.0kWh 2026-08-14 12:40:02.320420: Saving plan best values to HA entities 2026-08-14 12:40:02.491793: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 12:40:02.498633: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 12:40:02.505199: Best charging limit SoC's [2.0, 16.0, 10.5, 12.5, 16.0]kWh, export []kWh gives import battery 14.38kWh, house 4.23kWh, export 0.0kWh, metric 834.09p, metric10 853.33p 2026-08-14 12:40:02.582113: Marginal costs baseline metric (no standing charge): 784.109 2026-08-14 12:40:02.799504: Marginal energy costs matrix computed: min=21.95 max=35.54 2026-08-14 12:40:02.878340: Rate array import [{'start': 760, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2225, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 760, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 12:40:02.878786: - Your estimated bill for today is £6.92 and tomorrow is £5.89 2026-08-14 12:40:02.878831: - Import rates are cheap (21.7p - 22.2p) for the next 3 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 12:40:02.878851: - The battery is currently at 13% and is charging to 13% for the next 20 minutes. 2026-08-14 12:40:02.878866: - For the next 48 hours there will be no solar generation. 2026-08-14 12:40:02.878880: - You will run out of battery in 17 hours. 2026-08-14 12:40:02.878898: 2026-08-14 12:40:02.932062: Plan calculation took 1.08 seconds 2026-08-14 12:40:02.935585: No high rate period found 2026-08-14 12:40:02.985555: Import threshold used for optimisation was 22.25p 2026-08-14 12:40:03.037185: Low import rate windows [0: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 1: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 2: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 3: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 4: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 5: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 6: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 7: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 8: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 9: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 10: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 11: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 12: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 13: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 14: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 15: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 16: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 17: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 18: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 19: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 20: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 21: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 22: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 23: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 24: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 25: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 26: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 27: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 28: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 29: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 30: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 31: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 32: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 33: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 34: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 35: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 36: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 37: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 38: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 39: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 40: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 41: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 42: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 43: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 44: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 45: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 46: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 47: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 48: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 49: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 50: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 51: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 52: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 53: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 54: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 55: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 56: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 57: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 58: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 59: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 60: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 61: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 62: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 63: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 64: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 65: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 66: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 67: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 68: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 69: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 70: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 71: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 72: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 73: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 74: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 75: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 76: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 77: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 78: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 79: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 80: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 81: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 82: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 83: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 84: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 85: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 86: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 87: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 88: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 89: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 90: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 91: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 92: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 93: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 94: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 95: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78] 2026-08-14 12:40:03.044391: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 12:00:00 2026-08-14 12:40:03.044510: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 13% 2026-08-14 12:40:03.044687: Inverter 0 Target SoC 13%, (this inverter 13%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 12:40:03.044794: Inverter 0 Hold charging as SoC 13% is above target SoC 13% (global soc target 13%) set_discharge_during_charge True 2026-08-14 12:40:03.044991: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:40:03.045345: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:40:03.045491: No export window planned 2026-08-14 12:40:03.045617: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 12:40:03.045653: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:40:03.045815: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:40:03.045909: Inverter 0 setting charging SoC to 13% as per target 2026-08-14 12:40:03.045973: Inverter 0 adjust target SoC for charge to 13% (2.08kWh/16.0kWh 16.0kWh) based on going from 13% -> 13% total add is 0.0kWh and this battery needs to add 0.0kWh to get to 2.08kWh 2026-08-14 12:40:03.046030: Inverter 0 Current Target SoC is 13%, already at target 2026-08-14 12:40:03.046131: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.046172: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.046205: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.046266: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.046332: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.046391: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.046483: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.046578: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.046627: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.046669: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.046724: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.046804: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.046870: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.046932: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.047051: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.047100: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.047143: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.047195: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.047255: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.047316: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.047376: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:40:03.047427: Inverter 0 count register writes 0 2026-08-14 12:40:03.063757: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 12:40:03.069124: Total inverter register writes now 808 2026-08-14 12:40:03.101701: Info: Completed run status Hold charging 2026-08-14 12:40:03.108087: Info: record_status Hold charging target 13%-13% 2026-08-14 12:40:03.115014: Saved current settings to /config/predbat_config.json 2026-08-14 12:40:03.115325: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 12:40:44.238713: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:40:44.239027: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:40:44.239064: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:40:44.239211: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:40:44.239254: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:40:44.239276: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:40:44.239294: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:42:44.472422: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:42:44.472690: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:42:44.472726: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:42:44.473123: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:42:44.473188: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:42:44.473238: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:42:44.473258: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:42:46.136386: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 12:42:47.205582: Processing 1345 30-minute periods for power integration 2026-08-14 12:42:47.309691: ML Component: Car charging hold False, car energy reported load False 2026-08-14 12:42:47.411512: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 12:42:47.509089: ML Temperature data points: 49641 2026-08-14 12:42:47.790080: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 12:42:47.832531: ML Component: Data fetch completed, load data age 56.0 days, 16129 data points 2026-08-14 12:42:47.832765: ML Component: No training needed, model age is 0.42 hours 2026-08-14 12:42:47.832882: ML Component: Generating predictions load data age 56.0 days, 16129 data points 2026-08-14 12:42:47.973607: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.1076 max_dow {0: 0.10014999996256083, 1: 0.10541562554407864, 2: 0.11911562483031304, 3: 0.12494687463529408, 4: 0.17094062535744162, 5: 0.1007093750283122, 6: 0.10970937514957041} 2026-08-14 12:42:48.467627: ML Component: Generated 576 predictions (total 39.02 kWh over 48h) 2026-08-14 12:42:48.501241: ML Component: Prediction cycle completed 2026-08-14 12:42:48.590560: ML Component: Saved 16129 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 12:44:59.141399: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:44:59.141720: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:44:59.141772: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:44:59.141981: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:44:59.142031: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:44:59.142054: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:44:59.142090: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:45:00.224593: --------------- PredBat - update at 2026-08-14 12:45:00+01:00 with clock skew 0 minutes, minutes now 765 2026-08-14 12:45:00.225515: Saved current settings to /config/predbat_config.json 2026-08-14 12:45:00.225688: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 65.0 minutes 2026-08-14 12:45:00.225800: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 12:45:00.225937: Autoupdate: Currently up to date 2026-08-14 12:45:00.250248: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 12:45:00.250690: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 12:45:00.250949: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 12:45:00.251777: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 12:45:00.251983: Predbat mode is set to Control charge & discharge 2026-08-14 12:45:00.418592: Found 21602 load_today datapoints going back 28 days 2026-08-14 12:45:00.418725: Using load_power data to fill gaps in load_today data 2026-08-14 12:45:01.104188: Processing 721 30-minute periods for power integration 2026-08-14 12:45:01.259098: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 12:45:01.259226: Car charging hold False, threshold 6.0kWh 2026-08-14 12:45:01.259265: Current data so far today: load 12.7kWh, import 13.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 12:45:01.271235: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 12:45:01.272174: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 12:45:01.272258: Standing charge is set to 49.98p 2026-08-14 12:45:01.319396: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 12:45:01.319516: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 12:45:01.319721: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 130.0 minutes 2026-08-14 12:45:01.320205: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 130.0 minutes 2026-08-14 12:45:01.325912: Loaded 95 datapoints of futurerate analysis 2026-08-14 12:45:01.422913: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45'] 2026-08-14 12:45:01.485889: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 12:45:01.491427: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 12:45:01.491755: Import rates: min 14.97p, max 53.39p, average 27.12p 2026-08-14 12:45:01.535539: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 12:45:01.535668: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 12:45:01.537114: High export rate found rates in range 99p to -99p 2026-08-14 12:45:01.618963: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 12:45:01.619101: Car 0 charging is not planned as it is not plugged in 2026-08-14 12:45:01.631939: Battery level now 2.08kWh, -1hr ago 1.76kWh, at midnight 2.43kWh, battery value change in the last hour 4.12p, change today -4.53p, rate_forward 12.86p 2026-08-14 12:45:01.632371: Last hour: net energy 1.18kWh, import 1.18kWh, export 0.0kWh, car 0kWh, load 1.0kWh, net cost 26.07p, import 26.07p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 12:45:01.686865: Today's energy total net 13.8kWh, import 13.8kWh, export 0.0kWh, cost 388.31p, import 338.33p, export 0.0p, carbon 0.0kg 2026-08-14 12:45:01.687001: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 12:45:01.763665: Using weighted-bucket historical load forecast over 14 days 2026-08-14 12:45:01.784888: Today's load divergence 126.43%, in-day adjustment 135.28%, damping 0.95x, yesterday 146.81% today 125.1% blend 46.88% 2026-08-14 12:45:01.784991: Today's predicted so far 7.53kWh with 0.0kWh car/iBoost excluded, 4.99kWh import ignored, and 7.53kWh forecast extra. 2026-08-14 12:45:01.785022: Today's actual load so far 12.71kWh with 0.0kWh car/iBoost excluded, and 4.99kWh import ignored. 2026-08-14 12:45:01.817402: Inverter 0: Type SK Sunsynk 2026-08-14 12:45:01.817499: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 12:45:01.817691: Reserve min: 7%, battery_min: 7% 2026-08-14 12:45:01.817776: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 12:45:01.818044: Inverter 0 SoC: 2.08kW 13%, current charge rate 5000W, current discharge rate 0W, current battery power -13W, current battery voltage 51.2V, grid power -1447W, load power 1448W, PV Power 0W 2026-08-14 12:45:01.818186: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:45:01.818284: Inverter 0 scheduled charge enable is True 2026-08-14 12:45:01.818326: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 12:45:01.818397: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 13.0%, power 5.0kW 2026-08-14 12:45:01.818528: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:45:01.818565: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:45:01.818596: Inverter 0 scheduled discharge enable is False 2026-08-14 12:45:01.818692: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:45:01.818722: Inverter 0 discharge windows currently [] 2026-08-14 12:45:01.818741: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:45:01.818756: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:45:01.818770: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:45:01.889332: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 12:45:01.889444: Plan was last updated on 2026-08-14 12:35:00+01:00 and is now 10.0 minutes old 2026-08-14 12:45:01.889718: Best charge window [ 14-08 12:00:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 14:30:00 @ 21.75p 100%, 14-08 14:30:00 - 14-08 15:30:00 @ 22.13p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:30:00 @ 16.98p 100% ] 2026-08-14 12:45:01.889761: Best export window [ ] 2026-08-14 12:45:01.890574: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 12:45:01.893856: Load divergence over 8.0 hours mean 350.06W, min 220.2W, max 616.2W, std dev 80.01W, divergence 11.43% 2026-08-14 12:45:01.912244: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 12:45:01.912362: LoadML is_calculating False 2026-08-14 12:45:01.912445: Creating pool of 12 processes to match your CPU count 2026-08-14 12:45:02.028103: predict base end_record 08-15 13:10:00, final soc 2.08kWh, metric 919.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:30:00, load 30.25kWh, PV 0.0kWh 2026-08-14 12:45:02.158941: Battery has 4.75 hours left - now at 2.08kWh 2026-08-14 12:45:02.203929: predict base10 end_record 08-15 13:10:00, final soc 2.08kWh, metric 943.67p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:25:00, load 31.09kWh, PV 0.0kWh 2026-08-14 12:45:02.287788: predict best10 end_record 08-15 13:10:00, final soc 1.77kWh, metric 857.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:50:00, load 31.09kWh, PV 0.0kWh 2026-08-14 12:45:02.369092: predict best end_record 08-15 13:10:00, final soc 1.9kWh, metric 839.18p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:50:00, load 30.25kWh, PV 0.0kWh 2026-08-14 12:45:02.369181: Saving plan best values to HA entities 2026-08-14 12:45:02.533548: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 12:45:02.539575: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 12:45:02.544418: Best charging limit SoC's [2.0, 16.0, 10.5, 12.5, 16.0]kWh, export []kWh gives import battery 14.73kWh, house 4.25kWh, export 0.0kWh, metric 839.18p, metric10 857.32p 2026-08-14 12:45:02.606897: Marginal costs baseline metric (no standing charge): 789.1941 2026-08-14 12:45:02.832856: Marginal energy costs matrix computed: min=21.91 max=35.09 2026-08-14 12:45:02.937307: Rate array import [{'start': 765, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2230, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 765, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 12:45:02.937763: - Your estimated bill for today is £6.90 and tomorrow is £5.91 2026-08-14 12:45:02.937809: - Import rates are cheap (21.7p - 22.2p) for the next 3 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 12:45:02.937854: - The battery is currently at 13% and is charging to 13% for the next 15 minutes. 2026-08-14 12:45:02.937878: - For the next 48 hours there will be no solar generation. 2026-08-14 12:45:02.937896: - You will run out of battery in 17 hours. 2026-08-14 12:45:02.937917: 2026-08-14 12:45:02.993303: Plan calculation took 1.10 seconds 2026-08-14 12:45:02.998018: No high rate period found 2026-08-14 12:45:03.050073: Import threshold used for optimisation was 22.25p 2026-08-14 12:45:03.102719: Low import rate windows [0: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 1: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 2: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 3: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 4: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 5: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 6: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 7: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 8: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 9: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 10: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 11: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 12: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 13: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 14: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 15: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 16: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 17: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 18: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 19: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 20: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 21: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 22: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 23: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 24: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 25: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 26: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 27: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 28: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 29: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 30: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 31: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 32: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 33: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 34: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 35: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 36: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 37: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 38: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 39: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 40: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 41: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 42: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 43: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 44: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 45: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 46: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 47: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 48: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 49: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 50: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 51: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 52: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 53: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 54: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 55: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 56: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 57: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 58: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 59: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 60: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 61: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 62: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 63: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 64: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 65: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 66: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 67: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 68: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 69: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 70: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 71: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 72: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 73: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 74: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 75: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 76: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 77: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 78: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 79: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 80: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 81: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 82: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 83: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 84: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 85: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 86: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 87: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 88: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 89: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 90: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 91: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 92: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 93: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 94: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 95: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78] 2026-08-14 12:45:03.110232: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 12:00:00 2026-08-14 12:45:03.110357: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 13% 2026-08-14 12:45:03.110584: Inverter 0 Target SoC 13%, (this inverter 13%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 12:45:03.110704: Inverter 0 Hold charging as SoC 13% is above target SoC 13% (global soc target 13%) set_discharge_during_charge True 2026-08-14 12:45:03.110922: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:45:03.111247: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:45:03.111419: No export window planned 2026-08-14 12:45:03.111619: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 12:45:03.111675: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:45:03.111902: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:45:03.112025: Inverter 0 setting charging SoC to 13% as per target 2026-08-14 12:45:03.112120: Inverter 0 adjust target SoC for charge to 13% (2.08kWh/16.0kWh 16.0kWh) based on going from 13% -> 13% total add is 0.0kWh and this battery needs to add 0.0kWh to get to 2.08kWh 2026-08-14 12:45:03.112238: Inverter 0 Current Target SoC is 13%, already at target 2026-08-14 12:45:03.112399: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.112462: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.112519: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.112565: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.112624: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.112676: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.112722: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.112815: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.112896: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.112988: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.113050: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.113113: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.113160: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.113211: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.113328: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.113387: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.113441: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.113480: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.113518: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.113569: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.113609: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:03.113636: Inverter 0 count register writes 0 2026-08-14 12:45:03.130174: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 12:45:03.130413: Recompute is saving previous plan... 2026-08-14 12:45:03.133653: Best charge window [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 13%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 13%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 13%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 13%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 13%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 13%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 13%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 13%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 13%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 13%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 13%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 13%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 13%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 13%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 13%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 13%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 13%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 13%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 13%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 13%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 13%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 13%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 13%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 13%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 13%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 13%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 13%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 13%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 13%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 13%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 13%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 13%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 13%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 13%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 13%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 13%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 13%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 13%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 13%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 13%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 13%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 13%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 13%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 13%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 13%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 13%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 13%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 13%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 13%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 13%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 13%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 13%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 13%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 13%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 13%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 13%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 13%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 13%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 13%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 13%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 13%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 13%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 13%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 13%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 13%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 13%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 13%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 13%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 13%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 13%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 13%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 13%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 13%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 13%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 13%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 13%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 13%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 13%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 13%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 13%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 13%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 13%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 13%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 13%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 13%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 13%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 13%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 13%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 13%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 13%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 13%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 13%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 13% ] 2026-08-14 12:45:03.133737: Best export window [ ] 2026-08-14 12:45:03.134605: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 12:45:03.137882: Load divergence over 8.0 hours mean 350.06W, min 220.2W, max 616.2W, std dev 80.01W, divergence 11.43% 2026-08-14 12:45:03.156227: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 12:45:03.156342: LoadML is_calculating False 2026-08-14 12:45:03.156411: Creating pool of 12 processes to match your CPU count 2026-08-14 12:45:03.244411: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 12:45:03.246506: Optimise levels pass started at 2026-08-14 12:45:03 2026-08-14 12:45:03.246576: Optimise all windows, total charge 95 export 1 2026-08-14 12:45:04.197690: >> Region optimisation pass width 960 gives best_metric 1021.74p, best_cost 1030.67p, best_cycle 48.44kWh, best_import 34.52kWh 2026-08-14 12:45:04.634018: >> Region optimisation pass width 480 gives best_metric 1021.74p, best_cost 1030.67p, best_cycle 48.44kWh, best_import 34.52kWh 2026-08-14 12:45:05.112440: >> Region optimisation pass width 240 gives best_metric 1021.74p, best_cost 1030.67p, best_cycle 48.44kWh, best_import 34.52kWh 2026-08-14 12:45:06.479285: >> Region optimisation pass width 120 gives best_metric 1021.04p, best_cost 1030.04p, best_cycle 47.87kWh, best_import 34.48kWh 2026-08-14 12:45:06.479807: Calculated end_record as 08-15 13:00:00 based on best_price 22.19p, next_charge_start 08-14 13:00:00, max_windows 48 2026-08-14 12:45:06.479896: Optimise levels pass ended at 2026-08-14 12:45:06, duration 3.2 seconds tried 321 combinations 2026-08-14 12:45:06.479967: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.19p, best_cost_export 0p, best_metric 1021.04p, best_keep 0kWh, best_cycle 47.87kWh, best_carbon 0kg, best_import 34.48kWh 2026-08-14 12:45:06.499389: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.19p, best_price_export 0p. lowest_price_charge 15.78p with charge limits [16.0, 16.0, 16.0, 16.0, 16.0, 0, 12.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.75, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 12:45:11.560177: Tweak plan optimisation started metric 762.99p, cost 774.34p 2026-08-14 12:45:11.856780: Tweak optimisation finished metric 762.99p, cost 774.34p, metric_keep 0kWh, cycle 21.78kWh, carbon 0kg, import 18.03kWh, changed 8 window(s) 2026-08-14 12:45:11.877392: Swap charge optimisation started metric 762.99p, cost 774.34p, min_improvement_swap 0.1p 2026-08-14 12:45:14.502440: Swap charge optimisation finished metric 762.99p, cost 774.34p 2026-08-14 12:45:14.600345: Pruned 1 dead plan slot(s) in 8 trial(s), nominal metric 759.93p -> 759.94p, plan now metric 763.01p, cost 774.34p, cycle 21.78kWh, import 18.03kWh 2026-08-14 12:45:14.612685: Raw charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100% ] reserve 1.12 2026-08-14 12:45:14.613664: Unclipped charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 13:00:00 @ 16.38p 100% ] reserve 1.12 2026-08-14 12:45:14.613996: Unfiltered charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 13:00:00 @ 16.38p 100% ] reserve 1.12 2026-08-14 12:45:14.614220: Filtered charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 13:00:00 @ 16.38p 100% ] reserve 1.12 2026-08-14 12:45:14.650644: Previous plan best metric is 762.95 (cost 774.33) and new plan best metric is 762.99 (cost 774.34) 2026-08-14 12:45:14.650901: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 12:45:14.651105: Plan valid is now true after recompute was False 2026-08-14 12:45:14.680619: predict base end_record 08-15 13:00:00, final soc 2.08kWh, metric 917.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:30:00, load 30.13kWh, PV 0.0kWh 2026-08-14 12:45:14.795983: Battery has 4.75 hours left - now at 2.08kWh 2026-08-14 12:45:14.842639: predict base10 end_record 08-15 13:00:00, final soc 2.08kWh, metric 941.71p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:25:00, load 30.96kWh, PV 0.0kWh 2026-08-14 12:45:14.921913: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 844.53p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:50:00, load 30.96kWh, PV 0.0kWh 2026-08-14 12:45:15.005001: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 824.31p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:50:00, load 30.13kWh, PV 0.0kWh 2026-08-14 12:45:15.005141: Saving plan best values to HA entities 2026-08-14 12:45:15.153774: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 12:45:15.159883: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 12:45:15.165162: Best charging limit SoC's [2.0, 16.0, 10.5, 12.5, 16.0]kWh, export []kWh gives import battery 13.77kWh, house 4.25kWh, export 0.0kWh, metric 824.31p, metric10 844.53p 2026-08-14 12:45:15.257928: Marginal costs baseline metric (no standing charge): 774.3285 2026-08-14 12:45:15.475121: Marginal energy costs matrix computed: min=21.91 max=35.09 2026-08-14 12:45:15.534397: Rate array import [{'start': 765, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 765, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 12:45:15.534855: - Your estimated bill for today is £6.90 and tomorrow is £5.91 2026-08-14 12:45:15.534909: - Import rates are cheap (21.7p - 22.2p) for the next 3 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 12:45:15.534943: - The battery is currently at 13% and is charging to 13% for the next 15 minutes. 2026-08-14 12:45:15.534971: - For the next 48 hours there will be no solar generation. 2026-08-14 12:45:15.535015: - You will run out of battery in 17 hours. 2026-08-14 12:45:15.535049: 2026-08-14 12:45:15.576559: Plan calculation took 12.45 seconds 2026-08-14 12:45:15.576918: Inverter 0: Type SK Sunsynk 2026-08-14 12:45:15.576997: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 12:45:15.577269: Reserve min: 7%, battery_min: 7% 2026-08-14 12:45:15.577350: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 12:45:15.577626: Inverter 0 SoC: 2.08kW 13%, current charge rate 5000W, current discharge rate 0W, current battery power -14W, current battery voltage 51.2V, grid power -1461W, load power 1452W, PV Power 0W 2026-08-14 12:45:15.577845: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:45:15.577939: Inverter 0 scheduled charge enable is True 2026-08-14 12:45:15.577984: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 12:45:15.578059: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 13.0%, power 5.0kW 2026-08-14 12:45:15.578182: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:45:15.578225: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:45:15.578264: Inverter 0 scheduled discharge enable is False 2026-08-14 12:45:15.578382: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:45:15.578413: Inverter 0 discharge windows currently [] 2026-08-14 12:45:15.578436: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:45:15.578456: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:45:15.578470: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:45:15.629897: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 12:00:00 2026-08-14 12:45:15.630012: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 13% 2026-08-14 12:45:15.630124: Inverter 0 Target SoC 13%, (this inverter 13%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 12:45:15.630182: Inverter 0 Hold charging as SoC 13% is above target SoC 13% (global soc target 13%) set_discharge_during_charge True 2026-08-14 12:45:15.630286: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:45:15.630437: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:45:15.630529: No export window planned 2026-08-14 12:45:15.630619: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 12:45:15.630649: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:45:15.630775: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:45:15.630880: Inverter 0 setting charging SoC to 13% as per target 2026-08-14 12:45:15.630938: Inverter 0 adjust target SoC for charge to 13% (2.08kWh/16.0kWh 16.0kWh) based on going from 13% -> 13% total add is 0.0kWh and this battery needs to add 0.0kWh to get to 2.08kWh 2026-08-14 12:45:15.630979: Inverter 0 Current Target SoC is 13%, already at target 2026-08-14 12:45:15.631114: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631148: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631175: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631196: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631237: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631260: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631289: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631333: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631360: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631388: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631417: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631437: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631460: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631480: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631530: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631558: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631579: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631598: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631617: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631636: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631654: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:45:15.631670: Inverter 0 count register writes 0 2026-08-14 12:45:15.653643: Total inverter register writes now 808 2026-08-14 12:45:15.690496: Info: Completed run status Hold charging 2026-08-14 12:45:15.698201: Info: record_status Hold charging target 13%-13% 2026-08-14 12:45:15.706485: Saved current settings to /config/predbat_config.json 2026-08-14 12:45:15.706856: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 12:45:58.817885: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:45:58.818151: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:45:58.818194: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:45:58.818324: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:45:58.818363: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:45:58.818384: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:45:58.818402: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:47:59.050935: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:47:59.051310: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:47:59.051382: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:47:59.051578: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:47:59.051620: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:47:59.051642: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:47:59.051660: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:49:59.290989: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:49:59.291261: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:49:59.291305: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:49:59.291468: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:49:59.291518: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:49:59.291553: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:49:59.291572: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:50:00.374325: --------------- PredBat - update at 2026-08-14 12:50:00+01:00 with clock skew 0 minutes, minutes now 770 2026-08-14 12:50:00.375035: Saved current settings to /config/predbat_config.json 2026-08-14 12:50:00.375151: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 70.0 minutes 2026-08-14 12:50:00.375225: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 12:50:00.375311: Autoupdate: Currently up to date 2026-08-14 12:50:00.391304: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 12:50:00.391451: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 12:50:00.391680: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 12:50:00.392322: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 12:50:00.392478: Predbat mode is set to Control charge & discharge 2026-08-14 12:50:00.575992: Found 21602 load_today datapoints going back 28 days 2026-08-14 12:50:00.576127: Using load_power data to fill gaps in load_today data 2026-08-14 12:50:01.276037: Processing 721 30-minute periods for power integration 2026-08-14 12:50:01.466036: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 12:50:01.466318: Car charging hold False, threshold 6.0kWh 2026-08-14 12:50:01.466410: Current data so far today: load 12.95kWh, import 14.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 12:50:01.481121: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 12:50:01.481999: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 12:50:01.482076: Standing charge is set to 49.98p 2026-08-14 12:50:01.521840: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 12:50:01.521957: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 12:50:01.522156: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 135.0 minutes 2026-08-14 12:50:01.522533: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 135.0 minutes 2026-08-14 12:50:01.528339: Loaded 95 datapoints of futurerate analysis 2026-08-14 12:50:01.628281: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45'] 2026-08-14 12:50:01.686758: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 12:50:01.692441: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 12:50:01.693014: Import rates: min 14.97p, max 53.39p, average 27.11p 2026-08-14 12:50:01.736759: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 12:50:01.736884: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 12:50:01.738271: High export rate found rates in range 99p to -99p 2026-08-14 12:50:01.836570: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 12:50:01.836694: Car 0 charging is not planned as it is not plugged in 2026-08-14 12:50:01.849035: Battery level now 2.08kWh, -1hr ago 1.76kWh, at midnight 2.43kWh, battery value change in the last hour 4.12p, change today -4.53p, rate_forward 12.86p 2026-08-14 12:50:01.849422: Last hour: net energy 1.31kWh, import 1.31kWh, export 0.0kWh, car 0kWh, load 1.15kWh, net cost 29.12p, import 29.12p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 12:50:01.910783: Today's energy total net 14.0kWh, import 14.0kWh, export 0.0kWh, cost 392.75p, import 342.76p, export 0.0p, carbon 0.0kg 2026-08-14 12:50:01.910962: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 12:50:01.991687: Using weighted-bucket historical load forecast over 14 days 2026-08-14 12:50:02.015845: Today's load divergence 126.84%, in-day adjustment 135.41%, damping 0.95x, yesterday 146.81% today 125.5% blend 46.53% 2026-08-14 12:50:02.015952: Today's predicted so far 7.59kWh with 0.0kWh car/iBoost excluded, 4.92kWh import ignored, and 7.59kWh forecast extra. 2026-08-14 12:50:02.015996: Today's actual load so far 12.87kWh with 0.0kWh car/iBoost excluded, and 4.92kWh import ignored. 2026-08-14 12:50:02.045707: Inverter 0: Type SK Sunsynk 2026-08-14 12:50:02.045788: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 12:50:02.046029: Reserve min: 7%, battery_min: 7% 2026-08-14 12:50:02.046124: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 12:50:02.046400: Inverter 0 SoC: 2.08kW 13%, current charge rate 5000W, current discharge rate 0W, current battery power -14W, current battery voltage 51.2V, grid power -1760W, load power 1760W, PV Power 0W 2026-08-14 12:50:02.046602: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:50:02.046730: Inverter 0 scheduled charge enable is True 2026-08-14 12:50:02.046791: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 12:50:02.046930: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 13.0%, power 5.0kW 2026-08-14 12:50:02.047096: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:50:02.047140: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:50:02.047195: Inverter 0 scheduled discharge enable is False 2026-08-14 12:50:02.047360: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:50:02.047403: Inverter 0 discharge windows currently [] 2026-08-14 12:50:02.047439: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:50:02.047470: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:50:02.047497: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:50:02.102265: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 12:50:02.102376: Plan was last updated on 2026-08-14 12:45:00+01:00 and is now 5.0 minutes old 2026-08-14 12:50:02.102639: Best charge window [ 14-08 12:00:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 14:30:00 @ 21.75p 100%, 14-08 14:30:00 - 14-08 15:30:00 @ 22.13p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:30:00 @ 16.98p 100% ] 2026-08-14 12:50:02.102690: Best export window [ ] 2026-08-14 12:50:02.103385: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 12:50:02.106120: Load divergence over 8.0 hours mean 342.39W, min 235.2W, max 530.4W, std dev 60.69W, divergence 8.86% 2026-08-14 12:50:02.121295: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 12:50:02.121391: LoadML is_calculating False 2026-08-14 12:50:02.121467: Creating pool of 12 processes to match your CPU count 2026-08-14 12:50:02.225911: predict base end_record 08-15 13:05:00, final soc 2.08kWh, metric 921.58p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:30:00, load 30.38kWh, PV 0.0kWh 2026-08-14 12:50:02.345278: Battery has 4.67 hours left - now at 2.08kWh 2026-08-14 12:50:02.403307: predict base10 end_record 08-15 13:05:00, final soc 2.08kWh, metric 945.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:25:00, load 31.21kWh, PV 0.0kWh 2026-08-14 12:50:02.479570: predict best10 end_record 08-15 13:05:00, final soc 1.44kWh, metric 853.83p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:50:00, load 31.21kWh, PV 0.0kWh 2026-08-14 12:50:02.558830: predict best end_record 08-15 13:05:00, final soc 1.51kWh, metric 834.73p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:50:00, load 30.38kWh, PV 0.0kWh 2026-08-14 12:50:02.558938: Saving plan best values to HA entities 2026-08-14 12:50:02.708033: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 12:50:02.713240: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 12:50:02.718692: Best charging limit SoC's [2.0, 16.0, 10.5, 12.5, 16.0]kWh, export []kWh gives import battery 14.17kWh, house 4.27kWh, export 0.0kWh, metric 834.73p, metric10 853.83p 2026-08-14 12:50:02.784713: Marginal costs baseline metric (no standing charge): 784.7484 2026-08-14 12:50:03.025741: Marginal energy costs matrix computed: min=21.88 max=34.74 2026-08-14 12:50:03.090000: Rate array import [{'start': 770, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2225, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 770, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 12:50:03.090466: - Your estimated bill for today is £6.92 and tomorrow is £5.92 2026-08-14 12:50:03.090516: - Import rates are cheap (21.7p - 22.2p) for the next 3 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 12:50:03.090575: - The battery is currently at 13% and is charging to 13% for the next 10 minutes. 2026-08-14 12:50:03.090616: - For the next 48 hours there will be no solar generation. 2026-08-14 12:50:03.090637: - You will run out of battery in 17 hours. 2026-08-14 12:50:03.090658: 2026-08-14 12:50:03.132514: Plan calculation took 1.03 seconds 2026-08-14 12:50:03.136084: No high rate period found 2026-08-14 12:50:03.192218: Import threshold used for optimisation was 25.43p 2026-08-14 12:50:03.251348: Low import rate windows [0: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 1: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 2: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 3: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 4: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 5: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 6: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 7: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 8: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 9: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 10: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 11: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 12: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 13: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 14: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 15: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 16: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 17: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 18: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 19: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 20: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 21: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 22: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 23: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 24: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 25: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 26: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 27: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 28: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 29: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 30: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 31: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 32: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 33: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 34: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 35: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 36: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 37: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 38: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 39: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 40: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 41: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 42: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 43: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 44: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 45: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 46: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 47: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 48: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 49: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 50: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 51: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 52: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 53: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 54: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 55: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 56: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 57: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 58: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 59: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 60: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 61: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 62: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 63: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 64: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 65: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 66: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 67: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 68: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 69: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 70: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 71: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 72: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 73: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 74: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 75: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 76: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 77: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 78: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 79: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 80: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 81: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 82: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 83: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 84: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 85: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 86: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 87: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 88: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 89: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 90: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 91: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 92: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 93: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 94: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 95: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78] 2026-08-14 12:50:03.258608: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 12:00:00 2026-08-14 12:50:03.258709: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 13% 2026-08-14 12:50:03.258859: Inverter 0 Target SoC 13%, (this inverter 13%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 12:50:03.258943: Inverter 0 Hold charging as SoC 13% is above target SoC 13% (global soc target 13%) set_discharge_during_charge True 2026-08-14 12:50:03.259071: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:50:03.259323: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:50:03.259440: No export window planned 2026-08-14 12:50:03.259542: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 12:50:03.259572: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:50:03.259683: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:50:03.259757: Inverter 0 setting charging SoC to 13% as per target 2026-08-14 12:50:03.259804: Inverter 0 adjust target SoC for charge to 13% (2.08kWh/16.0kWh 16.0kWh) based on going from 13% -> 13% total add is 0.0kWh and this battery needs to add 0.0kWh to get to 2.08kWh 2026-08-14 12:50:03.259856: Inverter 0 Current Target SoC is 13%, already at target 2026-08-14 12:50:03.259959: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.259999: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260023: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260044: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260063: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260083: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260110: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260150: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260193: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260216: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260245: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260271: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260296: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260316: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260367: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260396: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260417: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260436: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260455: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260474: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260496: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:50:03.260513: Inverter 0 count register writes 0 2026-08-14 12:50:03.274653: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 12:50:03.279422: Total inverter register writes now 808 2026-08-14 12:50:03.311232: Info: Completed run status Hold charging 2026-08-14 12:50:03.318076: Info: record_status Hold charging target 13%-13% 2026-08-14 12:50:03.325523: Saved current settings to /config/predbat_config.json 2026-08-14 12:50:03.325862: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 12:50:44.440040: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:50:44.440299: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:50:44.440343: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:50:44.440483: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:50:44.440523: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:50:44.440544: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:50:44.440570: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:52:58.686077: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:52:58.686343: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:52:58.686398: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:52:58.686555: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:52:58.686594: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:52:58.686615: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:52:58.686633: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:54:58.911532: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:54:58.911978: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:54:58.912091: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:54:58.912398: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:54:58.912472: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:54:58.912517: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:54:58.912557: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:55:00.026299: --------------- PredBat - update at 2026-08-14 12:55:00+01:00 with clock skew 0 minutes, minutes now 775 2026-08-14 12:55:00.027059: Saved current settings to /config/predbat_config.json 2026-08-14 12:55:00.027208: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 75.0 minutes 2026-08-14 12:55:00.027304: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 12:55:00.027393: Autoupdate: Currently up to date 2026-08-14 12:55:00.058030: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 12:55:00.058140: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 12:55:00.058284: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 12:55:00.058707: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 12:55:00.058816: Predbat mode is set to Control charge & discharge 2026-08-14 12:55:00.230233: Found 21602 load_today datapoints going back 28 days 2026-08-14 12:55:00.230888: Using load_power data to fill gaps in load_today data 2026-08-14 12:55:00.990602: Processing 721 30-minute periods for power integration 2026-08-14 12:55:01.162986: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 12:55:01.163127: Car charging hold False, threshold 6.0kWh 2026-08-14 12:55:01.163170: Current data so far today: load 13.1kWh, import 14.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 12:55:01.177429: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 12:55:01.178198: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 12:55:01.178266: Standing charge is set to 49.98p 2026-08-14 12:55:01.229028: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 12:55:01.229159: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 12:55:01.229413: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 140.0 minutes 2026-08-14 12:55:01.229866: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 140.0 minutes 2026-08-14 12:55:01.234516: Loaded 95 datapoints of futurerate analysis 2026-08-14 12:55:01.315058: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45'] 2026-08-14 12:55:01.372280: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 12:55:01.377010: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 12:55:01.377347: Import rates: min 14.97p, max 53.39p, average 27.1p 2026-08-14 12:55:01.412712: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 12:55:01.412830: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 12:55:01.414088: High export rate found rates in range 99p to -99p 2026-08-14 12:55:01.493444: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 12:55:01.493589: Car 0 charging is not planned as it is not plugged in 2026-08-14 12:55:01.506822: Battery level now 2.08kWh, -1hr ago 1.74kWh, at midnight 2.43kWh, battery value change in the last hour 4.42p, change today -4.53p, rate_forward 12.86p 2026-08-14 12:55:01.507222: Last hour: net energy 1.25kWh, import 1.25kWh, export 0.0kWh, car 0kWh, load 1.2kWh, net cost 27.73p, import 27.73p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 12:55:01.567068: Today's energy total net 14.0kWh, import 14.0kWh, export 0.0kWh, cost 392.75p, import 342.76p, export 0.0p, carbon 0.0kg 2026-08-14 12:55:01.567231: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 12:55:01.655130: Using weighted-bucket historical load forecast over 14 days 2026-08-14 12:55:01.678522: Today's load divergence 127.01%, in-day adjustment 135.43%, damping 0.95x, yesterday 146.81% today 125.66% blend 46.18% 2026-08-14 12:55:01.678605: Today's predicted so far 7.63kWh with 0.0kWh car/iBoost excluded, 5.05kWh import ignored, and 7.63kWh forecast extra. 2026-08-14 12:55:01.678633: Today's actual load so far 12.97kWh with 0.0kWh car/iBoost excluded, and 5.05kWh import ignored. 2026-08-14 12:55:01.716111: Inverter 0: Type SK Sunsynk 2026-08-14 12:55:01.716208: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 12:55:01.716405: Reserve min: 7%, battery_min: 7% 2026-08-14 12:55:01.716482: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 12:55:01.716752: Inverter 0 SoC: 2.08kW 13%, current charge rate 5000W, current discharge rate 0W, current battery power -16W, current battery voltage 51.2V, grid power -1648W, load power 1648W, PV Power 0W 2026-08-14 12:55:01.716996: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:55:01.717096: Inverter 0 scheduled charge enable is True 2026-08-14 12:55:01.717140: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 12:55:01.717229: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 13.0%, power 5.0kW 2026-08-14 12:55:01.717350: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:55:01.717386: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:55:01.717446: Inverter 0 scheduled discharge enable is False 2026-08-14 12:55:01.717572: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:55:01.717610: Inverter 0 discharge windows currently [] 2026-08-14 12:55:01.717649: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:55:01.717683: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:55:01.717711: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:55:01.777161: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 12:55:01.777275: Plan was last updated on 2026-08-14 12:45:00+01:00 and is now 10.0 minutes old 2026-08-14 12:55:01.777590: Best charge window [ 14-08 12:00:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 14:30:00 @ 21.75p 100%, 14-08 14:30:00 - 14-08 15:30:00 @ 22.13p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:30:00 @ 16.98p 100% ] 2026-08-14 12:55:01.777642: Best export window [ ] 2026-08-14 12:55:01.778580: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 12:55:01.781719: Load divergence over 8.0 hours mean 334.56W, min 247.2W, max 533.4W, std dev 49.3W, divergence 7.37% 2026-08-14 12:55:01.800032: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 12:55:01.800135: LoadML is_calculating False 2026-08-14 12:55:01.800197: Creating pool of 12 processes to match your CPU count 2026-08-14 12:55:01.912691: predict base end_record 08-15 13:10:00, final soc 2.08kWh, metric 920.79p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:30:00, load 30.52kWh, PV 0.0kWh 2026-08-14 12:55:02.056888: Battery has 4.58 hours left - now at 2.08kWh 2026-08-14 12:55:02.105526: predict base10 end_record 08-15 13:10:00, final soc 2.08kWh, metric 944.67p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:25:00, load 31.35kWh, PV 0.0kWh 2026-08-14 12:55:02.178475: predict best10 end_record 08-15 13:10:00, final soc 1.77kWh, metric 858.5p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:45:00, load 31.35kWh, PV 0.0kWh 2026-08-14 12:55:02.278507: predict best end_record 08-15 13:10:00, final soc 1.9kWh, metric 840.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:50:00, load 30.52kWh, PV 0.0kWh 2026-08-14 12:55:02.278606: Saving plan best values to HA entities 2026-08-14 12:55:02.456183: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 12:55:02.462297: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 12:55:02.468580: Best charging limit SoC's [2.0, 16.0, 10.5, 12.5, 16.0]kWh, export []kWh gives import battery 14.57kWh, house 4.27kWh, export 0.0kWh, metric 840.54p, metric10 858.5p 2026-08-14 12:55:02.548363: Marginal costs baseline metric (no standing charge): 790.5541 2026-08-14 12:55:02.824055: Marginal energy costs matrix computed: min=21.84 max=35.12 2026-08-14 12:55:02.903099: Rate array import [{'start': 775, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2230, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 775, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 12:55:02.903621: - Your estimated bill for today is £6.90 and tomorrow is £5.92 2026-08-14 12:55:02.903675: - Import rates are cheap (21.7p - 22.2p) for the next 3 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 12:55:02.903745: - The battery is currently at 13% and is charging to 13% for the next 5 minutes. 2026-08-14 12:55:02.903783: - For the next 48 hours there will be no solar generation. 2026-08-14 12:55:02.903804: - You will run out of battery in 16 hours. 2026-08-14 12:55:02.903844: 2026-08-14 12:55:02.951787: Plan calculation took 1.17 seconds 2026-08-14 12:55:02.956242: No high rate period found 2026-08-14 12:55:03.009058: Import threshold used for optimisation was 25.43p 2026-08-14 12:55:03.057672: Low import rate windows [0: 08-14 12:30:00 - 08-14 13:00:00 @ 22.19, 1: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 2: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 3: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 4: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 5: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 6: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 7: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 8: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 9: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 10: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 11: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 12: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 13: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 14: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 15: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 16: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 17: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 18: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 19: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 20: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 21: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 22: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 23: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 24: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 25: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 26: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 27: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 28: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 29: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 30: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 31: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 32: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 33: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 34: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 35: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 36: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 37: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 38: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 39: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 40: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 41: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 42: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 43: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 44: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 45: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 46: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 47: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 48: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 49: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 50: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 51: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 52: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 53: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 54: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 55: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 56: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 57: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 58: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 59: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 60: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 61: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 62: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 63: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 64: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 65: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 66: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 67: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 68: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 69: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 70: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 71: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 72: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 73: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 74: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 75: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 76: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 77: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 78: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 79: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 80: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 81: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 82: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 83: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 84: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 85: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 86: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 87: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 88: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 89: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 90: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 91: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 92: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 93: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 94: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 95: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78] 2026-08-14 12:55:03.065672: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 12:00:00 2026-08-14 12:55:03.065800: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 13% 2026-08-14 12:55:03.066028: Inverter 0 Target SoC 13%, (this inverter 13%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 12:55:03.066135: Inverter 0 Hold charging as SoC 13% is above target SoC 13% (global soc target 13%) set_discharge_during_charge True 2026-08-14 12:55:03.066336: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:55:03.066620: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:55:03.066787: No export window planned 2026-08-14 12:55:03.066971: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 12:55:03.067084: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:55:03.067280: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:55:03.067387: Inverter 0 setting charging SoC to 13% as per target 2026-08-14 12:55:03.067447: Inverter 0 adjust target SoC for charge to 13% (2.08kWh/16.0kWh 16.0kWh) based on going from 13% -> 13% total add is 0.0kWh and this battery needs to add 0.0kWh to get to 2.08kWh 2026-08-14 12:55:03.067503: Inverter 0 Current Target SoC is 13%, already at target 2026-08-14 12:55:03.067609: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.067657: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.067686: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.067711: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.067736: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.067761: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.067792: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.067842: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.067888: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.067956: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.068029: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.068070: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.068122: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.068149: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.068250: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.068299: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.068342: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.068390: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.068429: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.068454: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.068480: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:03.068501: Inverter 0 count register writes 0 2026-08-14 12:55:03.085879: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 12:55:03.086142: Recompute is saving previous plan... 2026-08-14 12:55:03.089670: Best charge window [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 13%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 13%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 13%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 13%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 13%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 13%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 13%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 13%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 13%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 13%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 13%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 13%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 13%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 13%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 13%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 13%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 13%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 13%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 13%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 13%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 13%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 13%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 13%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 13%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 13%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 13%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 13%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 13%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 13%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 13%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 13%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 13%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 13%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 13%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 13%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 13%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 13%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 13%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 13%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 13%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 13%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 13%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 13%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 13%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 13%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 13%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 13%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 13%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 13%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 13%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 13%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 13%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 13%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 13%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 13%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 13%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 13%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 13%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 13%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 13%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 13%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 13%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 13%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 13%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 13%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 13%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 13%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 13%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 13%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 13%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 13%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 13%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 13%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 13%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 13%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 13%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 13%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 13%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 13%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 13%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 13%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 13%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 13%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 13%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 13%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 13%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 13%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 13%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 13%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 13%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 13%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 13%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 13% ] 2026-08-14 12:55:03.089763: Best export window [ ] 2026-08-14 12:55:03.090610: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 12:55:03.093986: Load divergence over 8.0 hours mean 334.56W, min 247.2W, max 533.4W, std dev 49.3W, divergence 7.37% 2026-08-14 12:55:03.111995: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 12:55:03.112131: LoadML is_calculating False 2026-08-14 12:55:03.112204: Creating pool of 12 processes to match your CPU count 2026-08-14 12:55:03.201708: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 12:55:03.206984: Optimise levels pass started at 2026-08-14 12:55:03 2026-08-14 12:55:03.207072: Optimise all windows, total charge 95 export 1 2026-08-14 12:55:04.137018: >> Region optimisation pass width 960 gives best_metric 1024.59p, best_cost 1033.54p, best_cycle 48.09kWh, best_import 34.49kWh 2026-08-14 12:55:04.576309: >> Region optimisation pass width 480 gives best_metric 1024.59p, best_cost 1033.54p, best_cycle 48.09kWh, best_import 34.49kWh 2026-08-14 12:55:05.039357: >> Region optimisation pass width 240 gives best_metric 1024.59p, best_cost 1033.54p, best_cycle 48.09kWh, best_import 34.49kWh 2026-08-14 12:55:06.340739: >> Region optimisation pass width 120 gives best_metric 1024.35p, best_cost 1033.33p, best_cycle 47.9kWh, best_import 34.47kWh 2026-08-14 12:55:06.342267: Calculated end_record as 08-15 13:00:00 based on best_price 22.19p, next_charge_start 08-14 13:00:00, max_windows 48 2026-08-14 12:55:06.342445: Optimise levels pass ended at 2026-08-14 12:55:06, duration 3.1 seconds tried 321 combinations 2026-08-14 12:55:06.342579: Set best_price_charge_level 23.8p, best_price_export_level 0p, best_price_charge 22.19p, best_cost_export 0p, best_metric 1024.35p, best_keep 0kWh, best_cycle 47.9kWh, best_carbon 0kg, best_import 34.47kWh 2026-08-14 12:55:06.375700: Starting detailed optimisation end_record 08-15 13:00:00, best_price_charge 22.19p, best_price_export 0p. lowest_price_charge 15.78p with charge limits [16.0, 16.0, 16.0, 16.0, 16.0, 0, 12.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.75, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 12:55:10.485520: Tweak plan optimisation started metric 764.17p, cost 775.55p 2026-08-14 12:55:10.792715: Tweak optimisation finished metric 764.17p, cost 775.55p, metric_keep 0kWh, cycle 21.78kWh, carbon 0kg, import 17.88kWh, changed 8 window(s) 2026-08-14 12:55:10.810535: Swap charge optimisation started metric 764.17p, cost 775.55p, min_improvement_swap 0.1p 2026-08-14 12:55:13.552839: Swap charge optimisation finished metric 764.17p, cost 775.55p 2026-08-14 12:55:13.648110: Pruned 2 dead plan slot(s) in 9 trial(s), nominal metric 761.14p -> 761.15p, plan now metric 764.18p, cost 775.55p, cycle 21.78kWh, import 17.88kWh 2026-08-14 12:55:13.658320: Raw charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100% ] reserve 1.12 2026-08-14 12:55:13.658873: Unclipped charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 13:00:00 @ 16.38p 100% ] reserve 1.12 2026-08-14 12:55:13.659080: Unfiltered charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 13:00:00 @ 16.38p 100% ] reserve 1.12 2026-08-14 12:55:13.659248: Filtered charge windows [ 14-08 12:30:00 - 14-08 13:00:00 @ 22.19p 13%, 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 72%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 13:00:00 @ 16.38p 100% ] reserve 1.12 2026-08-14 12:55:13.689441: Previous plan best metric is 764.13 (cost 775.53) and new plan best metric is 764.17 (cost 775.55) 2026-08-14 12:55:13.689697: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 12:55:13.689877: Plan valid is now true after recompute was False 2026-08-14 12:55:13.713450: predict base end_record 08-15 13:00:00, final soc 2.08kWh, metric 918.77p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:30:00, load 30.39kWh, PV 0.0kWh 2026-08-14 12:55:13.853435: Battery has 4.58 hours left - now at 2.08kWh 2026-08-14 12:55:13.899397: predict base10 end_record 08-15 13:00:00, final soc 2.08kWh, metric 942.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:25:00, load 31.21kWh, PV 0.0kWh 2026-08-14 12:55:13.989039: predict best10 end_record 08-15 13:00:00, final soc 1.12kWh, metric 845.55p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:45:00, load 31.21kWh, PV 0.0kWh 2026-08-14 12:55:14.084705: predict best end_record 08-15 13:00:00, final soc 1.12kWh, metric 825.52p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:50:00, load 30.39kWh, PV 0.0kWh 2026-08-14 12:55:14.084795: Saving plan best values to HA entities 2026-08-14 12:55:14.270252: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 12:55:14.276543: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 12:55:14.282860: Best charging limit SoC's [2.0, 16.0, 10.5, 12.5, 16.0]kWh, export []kWh gives import battery 13.61kWh, house 4.27kWh, export 0.0kWh, metric 825.52p, metric10 845.55p 2026-08-14 12:55:14.364371: Marginal costs baseline metric (no standing charge): 775.5342 2026-08-14 12:55:14.663883: Marginal energy costs matrix computed: min=21.84 max=35.12 2026-08-14 12:55:14.731972: Rate array import [{'start': 775, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2220, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 775, 'end': 2220, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 12:55:14.732426: - Your estimated bill for today is £6.90 and tomorrow is £5.92 2026-08-14 12:55:14.732475: - Import rates are cheap (21.7p - 22.2p) for the next 3 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 12:55:14.732498: - The battery is currently at 13% and is charging to 13% for the next 5 minutes. 2026-08-14 12:55:14.732519: - For the next 48 hours there will be no solar generation. 2026-08-14 12:55:14.732550: - You will run out of battery in 16 hours. 2026-08-14 12:55:14.732585: 2026-08-14 12:55:14.787303: Plan calculation took 11.70 seconds 2026-08-14 12:55:14.787713: Inverter 0: Type SK Sunsynk 2026-08-14 12:55:14.787771: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 12:55:14.788047: Reserve min: 7%, battery_min: 7% 2026-08-14 12:55:14.788132: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 12:55:14.788476: Inverter 0 SoC: 2.08kW 13%, current charge rate 5000W, current discharge rate 0W, current battery power -16W, current battery voltage 51.2V, grid power -1648W, load power 1648W, PV Power 0W 2026-08-14 12:55:14.788744: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:55:14.788867: Inverter 0 scheduled charge enable is True 2026-08-14 12:55:14.788923: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 12:55:14.789069: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 13.0%, power 5.0kW 2026-08-14 12:55:14.789213: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:55:14.789252: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:55:14.789297: Inverter 0 scheduled discharge enable is False 2026-08-14 12:55:14.789425: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:55:14.789464: Inverter 0 discharge windows currently [] 2026-08-14 12:55:14.789493: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:55:14.789518: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:55:14.789536: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:55:14.855928: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 12:00:00 2026-08-14 12:55:14.856099: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 13% 2026-08-14 12:55:14.856287: Inverter 0 Target SoC 13%, (this inverter 13%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 12:55:14.856397: Inverter 0 Hold charging as SoC 13% is above target SoC 13% (global soc target 13%) set_discharge_during_charge True 2026-08-14 12:55:14.856582: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:55:14.856844: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:55:14.857052: No export window planned 2026-08-14 12:55:14.857236: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 12:55:14.857294: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 12:55:14.857514: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 12:55:14.857639: Inverter 0 setting charging SoC to 13% as per target 2026-08-14 12:55:14.857741: Inverter 0 adjust target SoC for charge to 13% (2.08kWh/16.0kWh 16.0kWh) based on going from 13% -> 13% total add is 0.0kWh and this battery needs to add 0.0kWh to get to 2.08kWh 2026-08-14 12:55:14.857827: Inverter 0 Current Target SoC is 13%, already at target 2026-08-14 12:55:14.858005: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.858075: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.858136: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.858177: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.858231: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.858287: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.858328: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.858417: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.858482: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.858526: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.858578: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.858630: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.858677: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.858736: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.858853: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.858914: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.858956: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.859058: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.859115: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.859162: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.859206: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 12:55:14.859246: Inverter 0 count register writes 0 2026-08-14 12:55:14.885572: Total inverter register writes now 808 2026-08-14 12:55:14.923415: Info: Completed run status Hold charging 2026-08-14 12:55:14.930506: Info: record_status Hold charging target 13%-13% 2026-08-14 12:55:14.937717: Saved current settings to /config/predbat_config.json 2026-08-14 12:55:14.938058: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 12:55:59.058669: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:55:59.058915: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:55:59.058951: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:55:59.059109: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:55:59.059157: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:55:59.059184: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:55:59.059214: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:57:59.268342: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:57:59.268618: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:57:59.268654: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:57:59.268806: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:57:59.268845: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:57:59.268867: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:57:59.268885: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 12:59:59.481703: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 12:59:59.481966: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 12:59:59.482010: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 12:59:59.482202: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 12:59:59.482243: Note: Inverter does not support discharge freeze - disabled 2026-08-14 12:59:59.482264: Note: Inverter does not support charge freeze - disabled 2026-08-14 12:59:59.482283: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:00:00.556305: --------------- PredBat - update at 2026-08-14 13:00:00+01:00 with clock skew 0 minutes, minutes now 780 2026-08-14 13:00:00.557210: Saved current settings to /config/predbat_config.json 2026-08-14 13:00:00.557341: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 80.0 minutes 2026-08-14 13:00:00.557482: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 13:00:00.557570: Autoupdate: Currently up to date 2026-08-14 13:00:00.577796: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 13:00:00.577932: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 13:00:00.578340: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 13:00:00.578957: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 13:00:00.579157: Predbat mode is set to Control charge & discharge 2026-08-14 13:00:00.792460: Found 21602 load_today datapoints going back 28 days 2026-08-14 13:00:00.792877: Using load_power data to fill gaps in load_today data 2026-08-14 13:00:01.530747: Processing 721 30-minute periods for power integration 2026-08-14 13:00:01.680968: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 13:00:01.681095: Car charging hold False, threshold 6.0kWh 2026-08-14 13:00:01.681133: Current data so far today: load 13.25kWh, import 14.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 13:00:01.692667: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 13:00:01.693356: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 13:00:01.693423: Standing charge is set to 49.98p 2026-08-14 13:00:01.746474: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 13:00:01.746612: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 13:00:01.746827: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 145.0 minutes 2026-08-14 13:00:01.747257: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 145.0 minutes 2026-08-14 13:00:01.753100: Loaded 95 datapoints of futurerate analysis 2026-08-14 13:00:01.830229: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61'] 2026-08-14 13:00:01.880135: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 13:00:01.885836: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 13:00:01.886312: Import rates: min 14.97p, max 53.39p, average 27.08p 2026-08-14 13:00:01.929381: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 13:00:01.929508: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 13:00:01.930763: High export rate found rates in range 99p to -99p 2026-08-14 13:00:02.026381: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 13:00:02.026534: Car 0 charging is not planned as it is not plugged in 2026-08-14 13:00:02.039941: Battery level now 2.08kWh, -1hr ago 1.6kWh, at midnight 2.43kWh, battery value change in the last hour 6.17p, change today -4.53p, rate_forward 12.86p 2026-08-14 13:00:02.040266: Last hour: net energy 1.49kWh, import 1.49kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 33.0p, import 33.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 13:00:02.106740: Today's energy total net 14.3kWh, import 14.3kWh, export 0.0kWh, cost 399.4p, import 349.42p, export 0.0p, carbon 0.0kg 2026-08-14 13:00:02.106914: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 13:00:02.195576: Using weighted-bucket historical load forecast over 14 days 2026-08-14 13:00:02.223378: Today's load divergence 127.52%, in-day adjustment 135.62%, damping 0.95x, yesterday 146.81% today 126.15% blend 45.83% 2026-08-14 13:00:02.223490: Today's predicted so far 7.76kWh with 0.0kWh car/iBoost excluded, 5.02kWh import ignored, and 7.76kWh forecast extra. 2026-08-14 13:00:02.223524: Today's actual load so far 13.23kWh with 0.0kWh car/iBoost excluded, and 5.02kWh import ignored. 2026-08-14 13:00:02.264306: Inverter 0: Type SK Sunsynk 2026-08-14 13:00:02.264398: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 13:00:02.264582: Reserve min: 7%, battery_min: 7% 2026-08-14 13:00:02.264654: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 13:00:02.265038: Inverter 0 SoC: 2.08kW 13%, current charge rate 5000W, current discharge rate 0W, current battery power -15W, current battery voltage 51.2V, grid power -1661W, load power 1661W, PV Power 0W 2026-08-14 13:00:02.265212: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:00:02.265303: Inverter 0 scheduled charge enable is True 2026-08-14 13:00:02.265350: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 13:00:02.265437: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 13.0%, power 5.0kW 2026-08-14 13:00:02.265560: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:00:02.265595: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:00:02.265631: Inverter 0 scheduled discharge enable is False 2026-08-14 13:00:02.265751: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:00:02.265788: Inverter 0 discharge windows currently [] 2026-08-14 13:00:02.265811: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:00:02.265833: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:00:02.265851: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:00:02.330180: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 13:00:02.330278: Plan was last updated on 2026-08-14 12:55:00+01:00 and is now 5.0 minutes old 2026-08-14 13:00:02.330319: Current charge window has expired, removing it 2026-08-14 13:00:02.330492: Best charge window [ 14-08 13:00:00 - 14-08 14:30:00 @ 21.75p 100%, 14-08 14:30:00 - 14-08 15:30:00 @ 22.13p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:30:00 @ 16.98p 100% ] 2026-08-14 13:00:02.330528: Best export window [ ] 2026-08-14 13:00:02.331257: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 13:00:02.335383: Load divergence over 8.0 hours mean 334.36W, min 239.4W, max 558.0W, std dev 50.99W, divergence 7.62% 2026-08-14 13:00:02.352290: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 13:00:02.352424: LoadML is_calculating False 2026-08-14 13:00:02.352509: Creating pool of 12 processes to match your CPU count 2026-08-14 13:00:02.457208: predict base end_record 08-15 13:05:00, final soc 2.08kWh, metric 924.05p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:30:00, load 30.49kWh, PV 0.0kWh 2026-08-14 13:00:02.579860: Battery has 4.5 hours left - now at 2.08kWh 2026-08-14 13:00:02.619985: predict base10 end_record 08-15 13:05:00, final soc 2.08kWh, metric 947.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 17:25:00, load 31.31kWh, PV 0.0kWh 2026-08-14 13:00:02.703674: predict best10 end_record 08-15 13:05:00, final soc 1.44kWh, metric 856.06p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:50:00, load 31.31kWh, PV 0.0kWh 2026-08-14 13:00:02.787197: predict best end_record 08-15 13:05:00, final soc 1.51kWh, metric 837.21p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:50:00, load 30.49kWh, PV 0.0kWh 2026-08-14 13:00:02.787283: Saving plan best values to HA entities 2026-08-14 13:00:02.975539: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 13:00:02.981585: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 13:00:02.987533: Best charging limit SoC's [16.0, 10.5, 12.5, 16.0]kWh, export []kWh gives import battery 13.99kWh, house 4.26kWh, export 0.0kWh, metric 837.21p, metric10 856.06p 2026-08-14 13:00:03.065749: Marginal costs baseline metric (no standing charge): 787.2241 2026-08-14 13:00:03.312785: Marginal energy costs matrix computed: min=21.81 max=35.48 2026-08-14 13:00:03.387546: Rate array import [{'start': 780, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2225, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 780, 'end': 2225, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 13:00:03.388047: - Your estimated bill for today is £6.95 and tomorrow is £5.90 2026-08-14 13:00:03.388103: - Import rates are cheap (21.7p - 22.2p) for the next 3 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 13:00:03.388127: - The battery is currently at 13% and is charging to 56% for the next 1 and a half hours. 2026-08-14 13:00:03.388146: - For the next 48 hours there will be no solar generation. 2026-08-14 13:00:03.388164: - You will run out of battery in 16 hours. 2026-08-14 13:00:03.388181: 2026-08-14 13:00:03.444697: Plan calculation took 1.11 seconds 2026-08-14 13:00:03.449927: No high rate period found 2026-08-14 13:00:03.509642: Import threshold used for optimisation was 25.64p 2026-08-14 13:00:03.566539: Low import rate windows [0: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 1: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 2: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 3: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 4: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 5: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 6: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 7: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 8: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 9: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 10: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 11: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 12: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 13: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 14: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 15: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 16: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 17: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 18: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 19: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 20: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 21: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 22: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 23: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 24: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 25: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 26: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 27: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 28: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 29: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 30: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 31: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 32: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 33: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 34: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 35: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 36: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 37: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 38: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 39: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 40: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 41: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 42: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 43: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 44: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 45: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 46: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 47: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 48: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 49: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 50: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 51: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 52: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 53: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 54: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 55: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 56: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 57: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 58: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 59: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 60: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 61: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 62: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 63: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 64: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 65: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 66: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 67: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 68: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 69: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 70: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 71: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 72: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 73: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 74: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 75: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 76: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 77: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 78: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 79: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 80: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 81: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 82: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 83: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 84: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 85: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 86: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 87: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 88: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 89: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 90: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 91: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 92: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 93: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 94: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78] 2026-08-14 13:00:03.575591: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:00:00 2026-08-14 13:00:03.575753: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-14 13:00:03.575994: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 13:00:03.576576: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:00:03.576870: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:00:03.577080: No export window planned 2026-08-14 13:00:03.577280: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 13:00:03.577338: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:00:03.577585: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:00:03.577751: Inverter 0 current discharge rate is 0W and new target is 5000W 2026-08-14 13:00:08.585945: Inverter 0 write_and_poll_value: Wrote 5000 to discharge_rate, successfully now 5000.0 2026-08-14 13:00:13.679424: Inverter 0 write_and_poll_value: Wrote 98.0 to timed_discharge_current, successfully now 98.0 2026-08-14 13:00:13.679657: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 13:00:13.679715: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 13:00:13.679813: Inverter 0 Current charge limit is 13% and new target is 100% 2026-08-14 13:00:18.738668: Inverter 0 write_and_poll_value: Wrote 100 to charge_limit, successfully now 100.0 2026-08-14 13:00:18.738979: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:00:18.739098: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:00:18.739131: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:00:18.739155: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:00:18.739209: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:00:18.739258: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:00:18.739321: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:00:18.739440: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog1_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 13:00:18.822880: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog2_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 13:00:18.926123: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog3_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 13:00:19.029813: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog4_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 13:00:19.035920: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog5_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 13:00:19.046224: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog6_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 13:00:19.149723: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_load_limit', 'option': 'Zero Export'} 2026-08-14 13:00:19.253667: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:00:19.253768: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:00:19.253802: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:00:19.253850: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:00:19.253878: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:00:19.253903: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:00:19.253932: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:00:19.253954: Inverter 0 count register writes 2 2026-08-14 13:00:19.271929: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 13:00:19.278247: Total inverter register writes now 810 2026-08-14 13:00:19.310337: Info: Completed run status Charging 2026-08-14 13:00:19.664038: Info: record_status Charging target 13%-100.0% 2026-08-14 13:00:19.675392: Saved current settings to /config/predbat_config.json 2026-08-14 13:00:19.675748: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 13:00:58.787176: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:00:58.787447: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:00:58.787487: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:00:58.787655: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:00:58.787706: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:00:58.787739: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:00:58.787765: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:02:59.006330: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:02:59.006993: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:02:59.007067: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:02:59.007222: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:02:59.007286: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:02:59.007308: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:02:59.007326: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:04:59.227465: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:04:59.227815: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:04:59.227875: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:04:59.228105: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:04:59.228160: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:04:59.228201: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:04:59.228237: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:05:00.316606: --------------- PredBat - update at 2026-08-14 13:05:00+01:00 with clock skew 0 minutes, minutes now 785 2026-08-14 13:05:00.317443: Saved current settings to /config/predbat_config.json 2026-08-14 13:05:00.317576: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 85.0 minutes 2026-08-14 13:05:00.317648: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 13:05:00.317756: Autoupdate: Currently up to date 2026-08-14 13:05:00.337641: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 13:05:00.337770: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 13:05:00.337968: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 13:05:00.338509: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 13:05:00.338642: Predbat mode is set to Control charge & discharge 2026-08-14 13:05:00.543842: Found 21602 load_today datapoints going back 28 days 2026-08-14 13:05:00.544005: Using load_power data to fill gaps in load_today data 2026-08-14 13:05:01.280029: Processing 721 30-minute periods for power integration 2026-08-14 13:05:01.495547: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 13:05:01.495696: Car charging hold False, threshold 6.0kWh 2026-08-14 13:05:01.495745: Current data so far today: load 13.4kWh, import 14.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 13:05:01.514992: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 13:05:01.515917: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 13:05:01.516011: Standing charge is set to 49.98p 2026-08-14 13:05:01.583510: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 13:05:01.583628: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 13:05:01.583833: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 150.0 minutes 2026-08-14 13:05:01.584271: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 150.0 minutes 2026-08-14 13:05:01.590647: Loaded 95 datapoints of futurerate analysis 2026-08-14 13:05:01.688719: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61'] 2026-08-14 13:05:01.747789: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 13:05:01.752833: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 13:05:01.753258: Import rates: min 14.97p, max 53.39p, average 27.07p 2026-08-14 13:05:01.788703: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 13:05:01.788808: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 13:05:01.790015: High export rate found rates in range 99p to -99p 2026-08-14 13:05:01.868987: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 13:05:01.869126: Car 0 charging is not planned as it is not plugged in 2026-08-14 13:05:01.881400: Battery level now 2.08kWh, -1hr ago 1.57kWh, at midnight 2.43kWh, battery value change in the last hour 6.58p, change today -4.53p, rate_forward 12.86p 2026-08-14 13:05:01.881762: Last hour: net energy 1.43kWh, import 1.43kWh, export 0.0kWh, car 0kWh, load 1.4kWh, net cost 31.62p, import 31.62p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 13:05:01.936676: Today's energy total net 14.3kWh, import 14.3kWh, export 0.0kWh, cost 399.4p, import 349.42p, export 0.0p, carbon 0.0kg 2026-08-14 13:05:01.936839: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 13:05:02.020548: Using weighted-bucket historical load forecast over 14 days 2026-08-14 13:05:02.044147: Today's load divergence 128.28%, in-day adjustment 135.94%, damping 0.95x, yesterday 146.81% today 126.87% blend 45.49% 2026-08-14 13:05:02.044237: Today's predicted so far 7.85kWh with 0.0kWh car/iBoost excluded, 4.95kWh import ignored, and 7.85kWh forecast extra. 2026-08-14 13:05:02.044264: Today's actual load so far 13.53kWh with 0.0kWh car/iBoost excluded, and 4.95kWh import ignored. 2026-08-14 13:05:02.078604: Inverter 0: Type SK Sunsynk 2026-08-14 13:05:02.078688: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 13:05:02.078870: Reserve min: 7%, battery_min: 7% 2026-08-14 13:05:02.078938: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 13:05:02.079210: Inverter 0 SoC: 2.16kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power -4509W, current battery voltage 51.2V, grid power -5577W, load power 581W, PV Power 0W 2026-08-14 13:05:02.079352: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:05:02.079427: Inverter 0 scheduled charge enable is True 2026-08-14 13:05:02.079465: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 13:05:02.079537: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 13:05:02.079638: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:05:02.079667: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:05:02.079698: Inverter 0 scheduled discharge enable is False 2026-08-14 13:05:02.079796: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:05:02.079826: Inverter 0 discharge windows currently [] 2026-08-14 13:05:02.079845: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:05:02.079860: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:05:02.079874: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:05:02.140366: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 13:05:02.140506: Plan was last updated on 2026-08-14 12:55:00+01:00 and is now 10.0 minutes old 2026-08-14 13:05:02.140846: Best charge window [ 14-08 13:00:00 - 14-08 14:30:00 @ 21.75p 100%, 14-08 14:30:00 - 14-08 15:30:00 @ 22.13p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:00:00 - 16-08 12:30:00 @ 16.98p 100% ] 2026-08-14 13:05:02.140897: Best export window [ ] 2026-08-14 13:05:02.141599: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 13:05:02.144147: Load divergence over 8.0 hours mean 334.48W, min 230.4W, max 561.6W, std dev 58.12W, divergence 8.69% 2026-08-14 13:05:02.169497: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 13:05:02.169643: LoadML is_calculating False 2026-08-14 13:05:02.169707: Creating pool of 12 processes to match your CPU count 2026-08-14 13:05:02.288826: predict base end_record 08-15 13:10:00, final soc 6.55kWh, metric 933.67p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 11:30:00, load 30.63kWh, PV 0.0kWh 2026-08-14 13:05:02.426222: Battery has 22.42 hours left - now at 2.16kWh 2026-08-14 13:05:02.482094: predict base10 end_record 08-15 13:10:00, final soc 5.65kWh, metric 925.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:45:00, load 31.45kWh, PV 0.0kWh 2026-08-14 13:05:02.564444: predict best10 end_record 08-15 13:10:00, final soc 1.77kWh, metric 859.16p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:50:00, load 31.45kWh, PV 0.0kWh 2026-08-14 13:05:02.667230: predict best end_record 08-15 13:10:00, final soc 1.9kWh, metric 841.34p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:50:00, load 30.63kWh, PV 0.0kWh 2026-08-14 13:05:02.667334: Saving plan best values to HA entities 2026-08-14 13:05:02.846844: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 13:05:02.851693: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 13:05:02.856500: Best charging limit SoC's [16.0, 10.5, 12.5, 16.0]kWh, export []kWh gives import battery 14.31kWh, house 4.26kWh, export 0.0kWh, metric 841.34p, metric10 859.16p 2026-08-14 13:05:02.934558: Marginal costs baseline metric (no standing charge): 791.3523 2026-08-14 13:05:03.167178: Marginal energy costs matrix computed: min=21.8 max=35.77 2026-08-14 13:05:03.239723: Rate array import [{'start': 785, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2230, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 785, 'end': 2230, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 13:05:03.240210: - Your estimated bill for today is £6.92 and tomorrow is £5.89 2026-08-14 13:05:03.240257: - Import rates are cheap (21.7p - 22.2p) for the next 2 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 13:05:03.240281: - The battery is currently at 13% and is charging to 56% for the next 1 and a half hours. 2026-08-14 13:05:03.240301: - For the next 48 hours there will be no solar generation. 2026-08-14 13:05:03.240318: - You will run out of battery in 16 hours. 2026-08-14 13:05:03.240335: 2026-08-14 13:05:03.292812: Plan calculation took 1.15 seconds 2026-08-14 13:05:03.295663: No high rate period found 2026-08-14 13:05:03.350463: Import threshold used for optimisation was 25.64p 2026-08-14 13:05:03.407732: Low import rate windows [0: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 1: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 2: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 3: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 4: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 5: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 6: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 7: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 8: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 9: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 10: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 11: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 12: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 13: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 14: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 15: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 16: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 17: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 18: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 19: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 20: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 21: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 22: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 23: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 24: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 25: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 26: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 27: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 28: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 29: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 30: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 31: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 32: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 33: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 34: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 35: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 36: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 37: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 38: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 39: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 40: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 41: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 42: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 43: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 44: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 45: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 46: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 47: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 48: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 49: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 50: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 51: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 52: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 53: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 54: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 55: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 56: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 57: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 58: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 59: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 60: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 61: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 62: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 63: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 64: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 65: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 66: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 67: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 68: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 69: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 70: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 71: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 72: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 73: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 74: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 75: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 76: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 77: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 78: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 79: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 80: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 81: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 82: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 83: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 84: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 85: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 86: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 87: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 88: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 89: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 90: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 91: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 92: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 93: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 94: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 95: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59] 2026-08-14 13:05:03.418354: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:00:00 2026-08-14 13:05:03.418527: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-14 13:05:03.418720: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 13:05:03.418922: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:05:03.419221: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:05:03.419326: No export window planned 2026-08-14 13:05:03.419437: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 13:05:03.419474: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:05:03.419609: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:05:03.419721: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 13:05:03.419769: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 13:05:03.419835: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 13:05:03.419951: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420013: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420052: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420081: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420116: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420141: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420167: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420212: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420242: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420267: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420292: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420321: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420356: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420380: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420445: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420482: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420507: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420532: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420557: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420581: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420605: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:03.420626: Inverter 0 count register writes 0 2026-08-14 13:05:03.436834: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 13:05:03.437071: Recompute is saving previous plan... 2026-08-14 13:05:03.439703: Best charge window [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 100%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 100%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 100%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 100%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 100%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 100%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 100%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 100%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 100%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 100%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 100%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 100%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 100%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 100%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 100%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 100%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 100%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 100%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 100%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 100%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 100%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 100%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 100%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 100%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 100%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 100%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 100%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 100%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 100%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 100%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 100%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 100%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 100%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 100%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 100%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 100%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 100%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100% ] 2026-08-14 13:05:03.439771: Best export window [ ] 2026-08-14 13:05:03.440511: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 13:05:03.443119: Load divergence over 8.0 hours mean 334.48W, min 230.4W, max 561.6W, std dev 58.12W, divergence 8.69% 2026-08-14 13:05:03.458729: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 13:05:03.458836: LoadML is_calculating False 2026-08-14 13:05:03.458908: Creating pool of 12 processes to match your CPU count 2026-08-14 13:05:03.541133: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 13:05:03.543800: Optimise levels pass started at 2026-08-14 13:05:03 2026-08-14 13:05:03.543877: Optimise all windows, total charge 95 export 1 2026-08-14 13:05:04.761014: >> Region optimisation pass width 960 gives best_metric 1027.07p, best_cost 1036.03p, best_cycle 47.82kWh, best_import 34.33kWh 2026-08-14 13:05:05.225297: >> Region optimisation pass width 480 gives best_metric 1027.07p, best_cost 1036.03p, best_cycle 47.82kWh, best_import 34.33kWh 2026-08-14 13:05:05.765906: >> Region optimisation pass width 240 gives best_metric 1027.07p, best_cost 1036.03p, best_cycle 47.82kWh, best_import 34.33kWh 2026-08-14 13:05:07.067720: >> Region optimisation pass width 120 gives best_metric 1027.07p, best_cost 1036.03p, best_cycle 47.82kWh, best_import 34.33kWh 2026-08-14 13:05:07.068216: Calculated end_record as 08-15 13:30:00 based on best_price 22.02p, next_charge_start 08-14 13:30:00, max_windows 48 2026-08-14 13:05:07.068373: Optimise levels pass ended at 2026-08-14 13:05:07, duration 3.5 seconds tried 320 combinations 2026-08-14 13:05:07.068488: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1027.07p, best_keep 0kWh, best_cycle 47.82kWh, best_carbon 0kg, best_import 34.33kWh 2026-08-14 13:05:07.089520: Starting detailed optimisation end_record 08-15 13:30:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 15.59p with charge limits [12.5, 12.5, 12.5, 12.5, 0, 12.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.75, 13.75, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 13:05:12.090668: Tweak plan optimisation started metric 770.45p, cost 781.81p 2026-08-14 13:05:12.407446: Tweak optimisation finished metric 770.45p, cost 781.81p, metric_keep 0kWh, cycle 21.7kWh, carbon 0kg, import 17.96kWh, changed 8 window(s) 2026-08-14 13:05:12.428509: Swap charge optimisation started metric 770.45p, cost 781.81p, min_improvement_swap 0.1p 2026-08-14 13:05:14.774566: Swap charge optimisation finished metric 770.45p, cost 781.81p 2026-08-14 13:05:14.853522: Pruned 1 dead plan slot(s) in 7 trial(s), nominal metric 767.41p -> 767.42p, plan now metric 770.46p, cost 781.82p, cycle 21.7kWh, import 17.96kWh 2026-08-14 13:05:14.863442: Raw charge windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100% ] reserve 1.12 2026-08-14 13:05:14.864119: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:30:00 - 16-08 13:30:00 @ 15.98p 100% ] reserve 1.12 2026-08-14 13:05:14.864387: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:30:00 - 16-08 13:30:00 @ 15.98p 100% ] reserve 1.12 2026-08-14 13:05:14.864607: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:30:00 - 16-08 13:30:00 @ 15.98p 100% ] reserve 1.12 2026-08-14 13:05:14.899870: Previous plan best metric is 779.25 (cost 820.8) and new plan best metric is 770.45 (cost 781.81) 2026-08-14 13:05:14.900160: New plan metric is significantly better from previous plan, using new plan 2026-08-14 13:05:14.900205: Plan valid is now true after recompute was False 2026-08-14 13:05:14.925480: predict base end_record 08-15 13:30:00, final soc 8.1kWh, metric 963.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 11:30:00, load 30.85kWh, PV 0.0kWh 2026-08-14 13:05:15.041557: Battery has 22.42 hours left - now at 2.16kWh 2026-08-14 13:05:15.086648: predict base10 end_record 08-15 13:30:00, final soc 6.94kWh, metric 951.24p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:45:00, load 31.68kWh, PV 0.0kWh 2026-08-14 13:05:15.158932: predict best10 end_record 08-15 13:30:00, final soc 1.12kWh, metric 852.08p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:55:00, load 31.68kWh, PV 0.0kWh 2026-08-14 13:05:15.250882: predict best end_record 08-15 13:30:00, final soc 1.12kWh, metric 831.81p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:50:00, load 30.85kWh, PV 0.0kWh 2026-08-14 13:05:15.250999: Saving plan best values to HA entities 2026-08-14 13:05:15.399437: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 13:05:15.404778: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 13:05:15.410617: Best charging limit SoC's [16.0, 11.0, 12.5, 16.0]kWh, export []kWh gives import battery 13.36kWh, house 4.6kWh, export 0.0kWh, metric 831.81p, metric10 852.08p 2026-08-14 13:05:15.491312: Marginal costs baseline metric (no standing charge): 781.8222 2026-08-14 13:05:15.765517: Marginal energy costs matrix computed: min=21.8 max=35.77 2026-08-14 13:05:15.835032: Rate array import [{'start': 785, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2250, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 785, 'end': 2250, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 13:05:15.835508: - Your estimated bill for today is £6.92 and tomorrow is £6.34 2026-08-14 13:05:15.835573: - Import rates are cheap (21.7p - 22.2p) for the next 2 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 13:05:15.835598: - The battery is currently at 13% and is charging to 69% for the next 1 hours. 2026-08-14 13:05:15.835617: - For the next 48 hours there will be no solar generation. 2026-08-14 13:05:15.835635: - You will run out of battery in 16 hours. 2026-08-14 13:05:15.835652: 2026-08-14 13:05:15.882507: Plan calculation took 12.45 seconds 2026-08-14 13:05:15.883034: Inverter 0: Type SK Sunsynk 2026-08-14 13:05:15.883080: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 13:05:15.883333: Reserve min: 7%, battery_min: 7% 2026-08-14 13:05:15.883412: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 13:05:15.883737: Inverter 0 SoC: 2.16kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power -4509W, current battery voltage 51.2V, grid power -5577W, load power 581W, PV Power 0W 2026-08-14 13:05:15.883994: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:05:15.884100: Inverter 0 scheduled charge enable is True 2026-08-14 13:05:15.884154: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 13:05:15.884250: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 13:05:15.884371: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:05:15.884407: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:05:15.884448: Inverter 0 scheduled discharge enable is False 2026-08-14 13:05:15.884571: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:05:15.884607: Inverter 0 discharge windows currently [] 2026-08-14 13:05:15.884635: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:05:15.884660: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:05:15.884678: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:05:15.938404: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:00:00 2026-08-14 13:05:15.938533: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-14 13:05:15.938662: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 13:05:15.938848: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:05:15.939081: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:05:15.939179: No export window planned 2026-08-14 13:05:15.939292: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 13:05:15.939327: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:05:15.939462: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:05:15.939569: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 13:05:15.939610: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 13:05:15.939661: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 13:05:15.939834: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.939893: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.939990: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.940063: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.940121: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.940175: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.940227: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.940314: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.940373: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.940427: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.940478: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.940544: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.940600: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.940659: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.940768: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.940815: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.940843: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.940897: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.941003: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.941072: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.941136: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:05:15.941189: Inverter 0 count register writes 0 2026-08-14 13:05:15.963781: Total inverter register writes now 810 2026-08-14 13:05:15.998594: Info: Completed run status Charging 2026-08-14 13:05:16.005279: Info: record_status Charging target 13%-100.0% 2026-08-14 13:05:16.013449: Saved current settings to /config/predbat_config.json 2026-08-14 13:05:16.013843: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 13:05:59.124196: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:05:59.124469: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:05:59.124516: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:05:59.124647: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:05:59.124686: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:05:59.124708: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:05:59.124725: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:07:59.338611: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:07:59.338935: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:07:59.339009: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:07:59.339153: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:07:59.339220: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:07:59.339241: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:07:59.339260: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:10:00.556560: --------------- PredBat - update at 2026-08-14 13:10:00+01:00 with clock skew 0 minutes, minutes now 790 2026-08-14 13:10:00.557409: Saved current settings to /config/predbat_config.json 2026-08-14 13:10:00.557562: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 90.0 minutes 2026-08-14 13:10:00.557666: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 13:10:00.557747: Autoupdate: Currently up to date 2026-08-14 13:10:00.580338: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 13:10:00.580461: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 13:10:00.580686: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 13:10:00.581306: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 13:10:00.581489: Predbat mode is set to Control charge & discharge 2026-08-14 13:10:00.773204: Found 21602 load_today datapoints going back 28 days 2026-08-14 13:10:00.773374: Using load_power data to fill gaps in load_today data 2026-08-14 13:10:01.502276: Processing 721 30-minute periods for power integration 2026-08-14 13:10:01.671066: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 13:10:01.671208: Car charging hold False, threshold 6.0kWh 2026-08-14 13:10:01.671253: Current data so far today: load 13.4kWh, import 14.7kWh, export 0.0kWh, PV 0kWh 2026-08-14 13:10:01.687254: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 13:10:01.688172: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 13:10:01.688269: Standing charge is set to 49.98p 2026-08-14 13:10:01.729772: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 13:10:01.729970: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 13:10:01.730213: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 155.0 minutes 2026-08-14 13:10:01.730606: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 155.0 minutes 2026-08-14 13:10:01.737318: Loaded 95 datapoints of futurerate analysis 2026-08-14 13:10:01.835592: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61'] 2026-08-14 13:10:01.880715: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 13:10:01.885347: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 13:10:01.885752: Import rates: min 14.97p, max 53.39p, average 27.06p 2026-08-14 13:10:01.921441: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 13:10:01.921548: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 13:10:01.922612: High export rate found rates in range 99p to -99p 2026-08-14 13:10:02.013163: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 13:10:02.013299: Car 0 charging is not planned as it is not plugged in 2026-08-14 13:10:02.026415: Battery level now 2.16kWh, -1hr ago 1.44kWh, at midnight 2.43kWh, battery value change in the last hour 9.21p, change today -3.55p, rate_forward 12.86p 2026-08-14 13:10:02.026788: Last hour: net energy 1.76kWh, import 1.76kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 39.02p, import 39.02p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 13:10:02.093957: Today's energy total net 14.7kWh, import 14.7kWh, export 0.0kWh, cost 408.21p, import 358.23p, export 0.0p, carbon 0.0kg 2026-08-14 13:10:02.094130: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 13:10:02.179246: Using weighted-bucket historical load forecast over 14 days 2026-08-14 13:10:02.209465: Today's load divergence 128.07%, in-day adjustment 135.76%, damping 0.95x, yesterday 146.81% today 126.66% blend 45.14% 2026-08-14 13:10:02.209565: Today's predicted so far 7.87kWh with 0.0kWh car/iBoost excluded, 5.04kWh import ignored, and 7.87kWh forecast extra. 2026-08-14 13:10:02.209597: Today's actual load so far 13.49kWh with 0.0kWh car/iBoost excluded, and 5.04kWh import ignored. 2026-08-14 13:10:02.243548: Inverter 0: Type SK Sunsynk 2026-08-14 13:10:02.243627: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 13:10:02.243780: Reserve min: 7%, battery_min: 7% 2026-08-14 13:10:02.243837: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 13:10:02.244087: Inverter 0 SoC: 2.5kW 16%, current charge rate 5000W, current discharge rate 5250W, current battery power -4515W, current battery voltage 51.2V, grid power -6440W, load power 1444W, PV Power 0W 2026-08-14 13:10:02.244228: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:10:02.244301: Inverter 0 scheduled charge enable is True 2026-08-14 13:10:02.244338: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 13:10:02.244421: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 13:10:02.244597: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:10:02.244651: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:10:02.244709: Inverter 0 scheduled discharge enable is False 2026-08-14 13:10:02.244822: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:10:02.244854: Inverter 0 discharge windows currently [] 2026-08-14 13:10:02.244889: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:10:02.244906: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:10:02.244920: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:10:02.305657: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 13:10:02.305766: Plan was last updated on 2026-08-14 13:05:00+01:00 and is now 5.0 minutes old 2026-08-14 13:10:02.306067: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:30:00 - 16-08 13:30:00 @ 15.98p 100% ] 2026-08-14 13:10:02.306124: Best export window [ ] 2026-08-14 13:10:02.307133: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 13:10:02.310187: Load divergence over 8.0 hours mean 336.2W, min 240.6W, max 585.0W, std dev 59.19W, divergence 8.8% 2026-08-14 13:10:02.328219: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 13:10:02.328337: LoadML is_calculating False 2026-08-14 13:10:02.328405: Creating pool of 12 processes to match your CPU count 2026-08-14 13:10:02.452267: predict base end_record 08-15 13:35:00, final soc 8.49kWh, metric 968.91p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 11:30:00, load 30.82kWh, PV 0.0kWh 2026-08-14 13:10:02.573699: Battery has 22.33 hours left - now at 2.5kWh 2026-08-14 13:10:02.611438: predict base10 end_record 08-15 13:35:00, final soc 7.26kWh, metric 956.23p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:45:00, load 31.65kWh, PV 0.0kWh 2026-08-14 13:10:02.690100: predict best10 end_record 08-15 13:35:00, final soc 1.44kWh, metric 857.07p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:55:00, load 31.65kWh, PV 0.0kWh 2026-08-14 13:10:02.768609: predict best end_record 08-15 13:35:00, final soc 1.51kWh, metric 837.94p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:50:00, load 30.82kWh, PV 0.0kWh 2026-08-14 13:10:02.768699: Saving plan best values to HA entities 2026-08-14 13:10:02.975031: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 13:10:02.980938: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 13:10:02.986482: Best charging limit SoC's [16.0, 11.0, 12.5, 16.0]kWh, export []kWh gives import battery 13.37kWh, house 4.61kWh, export 0.0kWh, metric 837.94p, metric10 857.07p 2026-08-14 13:10:03.057732: Marginal costs baseline metric (no standing charge): 787.9572 2026-08-14 13:10:03.295889: Marginal energy costs matrix computed: min=21.78 max=36.12 2026-08-14 13:10:03.380269: Rate array import [{'start': 790, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2255, 'rate': 'cheap', 'range': '(15.4p - 27.2p)'}] export [{'start': 790, 'end': 2255, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 13:10:03.380771: - Your estimated bill for today is £6.90 and tomorrow is £6.35 2026-08-14 13:10:03.380842: - Import rates are cheap (21.7p - 22.2p) for the next 2 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 13:10:03.380886: - The battery is currently at 16% and is charging to 69% for the next 1 and three quarters hours. 2026-08-14 13:10:03.380934: - For the next 48 hours there will be no solar generation. 2026-08-14 13:10:03.381012: - You will run out of battery in 16 hours. 2026-08-14 13:10:03.381055: 2026-08-14 13:10:03.432836: Plan calculation took 1.13 seconds 2026-08-14 13:10:03.436435: No high rate period found 2026-08-14 13:10:03.488262: Import threshold used for optimisation was 25.43p 2026-08-14 13:10:03.548422: Low import rate windows [0: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 1: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 2: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 3: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 4: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 5: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 6: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 7: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 8: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 9: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 10: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 11: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 12: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 13: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 14: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 15: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 16: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 17: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 18: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 19: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 20: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 21: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 22: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 23: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 24: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 25: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 26: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 27: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 28: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 29: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 30: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 31: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 32: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 33: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 34: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 35: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 36: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 37: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 38: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 39: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 40: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 41: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 42: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 43: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 44: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 45: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 46: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 47: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 48: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 49: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 50: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 51: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 52: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 53: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 54: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 55: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 56: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 57: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 58: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 59: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 60: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 61: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 62: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 63: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 64: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 65: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 66: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 67: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 68: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 69: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 70: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 71: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 72: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 73: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 74: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 75: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 76: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 77: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 78: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 79: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 80: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 81: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 82: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 83: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 84: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 85: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 86: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 87: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 88: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 89: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 90: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 91: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 92: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 93: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 94: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 95: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59] 2026-08-14 13:10:03.557048: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:00:00 2026-08-14 13:10:03.557225: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 16%, target 100% 2026-08-14 13:10:03.557451: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 13:10:03.557662: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:10:03.557936: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:10:03.558039: No export window planned 2026-08-14 13:10:03.558150: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 13:10:03.558186: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:10:03.558321: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:10:03.558446: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 13:10:03.558488: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 13:10:03.558547: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 13:10:03.558661: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.558702: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.558730: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.558755: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.558780: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.558809: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.558844: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.558905: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.558958: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.559017: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.559072: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.559131: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.559194: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.559223: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.559296: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.559334: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.559359: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.559385: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.559408: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.559432: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.559456: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:10:03.559478: Inverter 0 count register writes 0 2026-08-14 13:10:03.577521: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 13:10:03.583346: Total inverter register writes now 810 2026-08-14 13:10:03.616155: Info: Completed run status Charging 2026-08-14 13:10:03.622438: Info: record_status Charging target 16%-100.0% 2026-08-14 13:10:03.629345: Saved current settings to /config/predbat_config.json 2026-08-14 13:10:03.629692: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 13:10:43.741752: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:10:43.742165: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:10:43.742227: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:10:43.742375: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:10:43.742418: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:10:43.742442: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:10:43.742462: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:12:43.977778: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:12:43.978063: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:12:43.978108: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:12:43.978245: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:12:43.978286: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:12:43.978307: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:12:43.978325: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:12:50.280142: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 13:12:51.270866: Processing 1345 30-minute periods for power integration 2026-08-14 13:12:51.364297: ML Component: Car charging hold False, car energy reported load False 2026-08-14 13:12:51.452494: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 13:12:51.542336: ML Temperature data points: 49611 2026-08-14 13:12:51.785224: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 13:12:51.825725: ML Component: Data fetch completed, load data age 56.0 days, 16135 data points 2026-08-14 13:12:51.826053: ML Component: No training needed, model age is 0.92 hours 2026-08-14 13:12:51.826158: ML Component: Generating predictions load data age 56.0 days, 16135 data points 2026-08-14 13:12:51.946144: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0908 max_dow {0: 0.10014999996256083, 1: 0.10541562554407864, 2: 0.11911562483031304, 3: 0.12494687463529408, 4: 0.17094062535744162, 5: 0.1007093750283122, 6: 0.10970937514957041} 2026-08-14 13:12:52.554747: ML Component: Generated 576 predictions (total 39.18 kWh over 48h) 2026-08-14 13:12:52.595992: ML Component: Prediction cycle completed 2026-08-14 13:12:52.703379: ML Component: Saved 16135 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 13:14:44.208022: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:14:44.208346: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:14:44.208399: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:14:44.208586: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:14:44.208649: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:14:44.208679: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:14:44.208721: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:15:00.316133: --------------- PredBat - update at 2026-08-14 13:15:00+01:00 with clock skew 0 minutes, minutes now 795 2026-08-14 13:15:00.316781: Saved current settings to /config/predbat_config.json 2026-08-14 13:15:00.316908: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 95.0 minutes 2026-08-14 13:15:00.317034: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 13:15:00.317160: Autoupdate: Currently up to date 2026-08-14 13:15:00.333466: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 13:15:00.333569: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 13:15:00.333712: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 13:15:00.334152: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 13:15:00.334258: Predbat mode is set to Control charge & discharge 2026-08-14 13:15:00.510840: Found 21602 load_today datapoints going back 28 days 2026-08-14 13:15:00.510997: Using load_power data to fill gaps in load_today data 2026-08-14 13:15:01.291021: Processing 721 30-minute periods for power integration 2026-08-14 13:15:01.497356: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 13:15:01.497497: Car charging hold False, threshold 6.0kWh 2026-08-14 13:15:01.497555: Current data so far today: load 13.5kWh, import 14.7kWh, export 0.0kWh, PV 0kWh 2026-08-14 13:15:01.515054: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 13:15:01.516003: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 13:15:01.516096: Standing charge is set to 49.98p 2026-08-14 13:15:01.564406: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 13:15:01.564525: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 13:15:01.564784: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 160.0 minutes 2026-08-14 13:15:01.565280: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 160.0 minutes 2026-08-14 13:15:01.571079: Loaded 95 datapoints of futurerate analysis 2026-08-14 13:15:01.673069: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61'] 2026-08-14 13:15:01.731508: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 13:15:01.737075: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 13:15:01.737437: Import rates: min 14.97p, max 53.39p, average 27.05p 2026-08-14 13:15:01.783120: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 13:15:01.783259: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 13:15:01.784979: High export rate found rates in range 99p to -99p 2026-08-14 13:15:01.881524: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 13:15:01.881674: Car 0 charging is not planned as it is not plugged in 2026-08-14 13:15:01.894361: Battery level now 2.5kWh, -1hr ago 1.41kWh, at midnight 2.43kWh, battery value change in the last hour 14.1p, change today 0.93p, rate_forward 12.86p 2026-08-14 13:15:01.894734: Last hour: net energy 1.7kWh, import 1.7kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 37.64p, import 37.64p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 13:15:01.957747: Today's energy total net 14.7kWh, import 14.7kWh, export 0.0kWh, cost 408.21p, import 358.23p, export 0.0p, carbon 0.0kg 2026-08-14 13:15:01.957905: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 13:15:02.049595: Using weighted-bucket historical load forecast over 14 days 2026-08-14 13:15:02.078223: Today's load divergence 128.16%, in-day adjustment 135.74%, damping 0.95x, yesterday 146.81% today 126.75% blend 44.79% 2026-08-14 13:15:02.078327: Today's predicted so far 7.89kWh with 0.0kWh car/iBoost excluded, 5.07kWh import ignored, and 7.89kWh forecast extra. 2026-08-14 13:15:02.078361: Today's actual load so far 13.53kWh with 0.0kWh car/iBoost excluded, and 5.07kWh import ignored. 2026-08-14 13:15:02.114785: Inverter 0: Type SK Sunsynk 2026-08-14 13:15:02.114913: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 13:15:02.115207: Reserve min: 7%, battery_min: 7% 2026-08-14 13:15:02.115332: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 13:15:02.115724: Inverter 0 SoC: 2.5kW 16%, current charge rate 5000W, current discharge rate 5250W, current battery power -4524W, current battery voltage 51.2V, grid power -5556W, load power 559W, PV Power 0W 2026-08-14 13:15:02.115964: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:15:02.116104: Inverter 0 scheduled charge enable is True 2026-08-14 13:15:02.116182: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 13:15:02.116282: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 13:15:02.116485: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:15:02.116551: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:15:02.116620: Inverter 0 scheduled discharge enable is False 2026-08-14 13:15:02.116814: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:15:02.116882: Inverter 0 discharge windows currently [] 2026-08-14 13:15:02.116908: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:15:02.116932: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:15:02.116995: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:15:02.180755: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 13:15:02.180901: Plan was last updated on 2026-08-14 13:05:00+01:00 and is now 10.0 minutes old 2026-08-14 13:15:02.181222: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:30:00 - 16-08 13:30:00 @ 15.98p 100% ] 2026-08-14 13:15:02.181278: Best export window [ ] 2026-08-14 13:15:02.182174: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 13:15:02.185369: Load divergence over 8.0 hours mean 337.76W, min 220.2W, max 599.4W, std dev 61.77W, divergence 9.14% 2026-08-14 13:15:02.204926: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 13:15:02.205069: LoadML is_calculating False 2026-08-14 13:15:02.205135: Creating pool of 12 processes to match your CPU count 2026-08-14 13:15:02.327122: predict base end_record 08-15 13:40:00, final soc 8.88kWh, metric 972.04p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 11:05:00, load 30.92kWh, PV 0.0kWh 2026-08-14 13:15:02.459946: Battery has 21.83 hours left - now at 2.5kWh 2026-08-14 13:15:02.510425: predict base10 end_record 08-15 13:40:00, final soc 7.59kWh, metric 961.14p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:05:00, load 31.75kWh, PV 0.0kWh 2026-08-14 13:15:02.592062: predict best10 end_record 08-15 13:40:00, final soc 1.77kWh, metric 862.16p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:50:00, load 31.75kWh, PV 0.0kWh 2026-08-14 13:15:02.680447: predict best end_record 08-15 13:40:00, final soc 1.9kWh, metric 844.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:50:00, load 30.92kWh, PV 0.0kWh 2026-08-14 13:15:02.680552: Saving plan best values to HA entities 2026-08-14 13:15:02.855752: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 13:15:02.860428: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 13:15:02.865219: Best charging limit SoC's [16.0, 11.0, 12.5, 16.0]kWh, export []kWh gives import battery 13.77kWh, house 4.62kWh, export 0.0kWh, metric 844.09p, metric10 862.16p 2026-08-14 13:15:02.935383: Marginal costs baseline metric (no standing charge): 794.1079 2026-08-14 13:15:03.213982: Marginal energy costs matrix computed: min=21.77 max=36.49 2026-08-14 13:15:03.289906: Rate array import [{'start': 795, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2260, 'rate': 'cheap', 'range': '(15.4p - 27.2p)'}] export [{'start': 795, 'end': 2260, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 13:15:03.290362: - Your estimated bill for today is £6.89 and tomorrow is £6.37 2026-08-14 13:15:03.290406: - Import rates are cheap (21.7p - 22.2p) for the next 2 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 13:15:03.290429: - The battery is currently at 16% and is charging to 69% for the next 1 and three quarters hours. 2026-08-14 13:15:03.290448: - For the next 48 hours there will be no solar generation. 2026-08-14 13:15:03.290465: - You will run out of battery in 16 hours. 2026-08-14 13:15:03.290483: 2026-08-14 13:15:03.338886: Plan calculation took 1.16 seconds 2026-08-14 13:15:03.342452: No high rate period found 2026-08-14 13:15:03.394263: Import threshold used for optimisation was 25.43p 2026-08-14 13:15:03.442846: Low import rate windows [0: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 1: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 2: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 3: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 4: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 5: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 6: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 7: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 8: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 9: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 10: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 11: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 12: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 13: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 14: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 15: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 16: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 17: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 18: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 19: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 20: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 21: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 22: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 23: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 24: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 25: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 26: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 27: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 28: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 29: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 30: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 31: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 32: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 33: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 34: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 35: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 36: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 37: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 38: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 39: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 40: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 41: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 42: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 43: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 44: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 45: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 46: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 47: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 48: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 49: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 50: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 51: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 52: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 53: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 54: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 55: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 56: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 57: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 58: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 59: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 60: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 61: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 62: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 63: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 64: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 65: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 66: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 67: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 68: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 69: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 70: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 71: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 72: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 73: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 74: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 75: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 76: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 77: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 78: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 79: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 80: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 81: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 82: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 83: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 84: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 85: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 86: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 87: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 88: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 89: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 90: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 91: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 92: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 93: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 94: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 95: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59] 2026-08-14 13:15:03.451718: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:00:00 2026-08-14 13:15:03.451842: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 16%, target 100% 2026-08-14 13:15:03.452004: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 13:15:03.452175: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:15:03.452422: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:15:03.452513: No export window planned 2026-08-14 13:15:03.452612: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 13:15:03.452642: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:15:03.452753: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:15:03.452869: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 13:15:03.452907: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 13:15:03.452982: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 13:15:03.453072: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453101: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453123: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453144: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453165: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453189: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453220: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453257: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453305: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453329: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453359: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453410: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453438: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453458: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453518: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453542: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453569: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453591: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453611: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453631: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453655: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:03.453672: Inverter 0 count register writes 0 2026-08-14 13:15:03.469728: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 13:15:03.469919: Recompute is saving previous plan... 2026-08-14 13:15:03.472518: Best charge window [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 100%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 100%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 100%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 100%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 100%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 100%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 100%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 100%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 100%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 100%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 100%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 100%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 100%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 100%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 100%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 100%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 100%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 100%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 100%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 100%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 100%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 100%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 100%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 100%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 100%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 100%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 100%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 100%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 100%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 100%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 100%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 100%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 100%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 100%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 100%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 100%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 100%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100% ] 2026-08-14 13:15:03.472589: Best export window [ ] 2026-08-14 13:15:03.473321: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 13:15:03.475860: Load divergence over 8.0 hours mean 337.76W, min 220.2W, max 599.4W, std dev 61.77W, divergence 9.14% 2026-08-14 13:15:03.490633: Calculating data from yesterday for savings calculation 2026-08-14 13:15:03.501408: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 13:15:03.543002: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 13:15:03.554858: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 869.96p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 13:15:03.572709: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 13:15:03.596263: Yesterday: Predbat disabled was £8.56 (adjusted £8.42) vs £6.21 (adjusted £5.88), saving £2.35 (adjusted £2.53) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 14.4kWh 2026-08-14 13:15:03.664373: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 901.25p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 13:15:03.664503: Yesterday: No Battery/PV system cost predicted was £9.01 (adjusted £9.01) vs £6.21 (adjusted £5.88), saving £2.8 (adjusted £3.13) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 13:15:03.673224: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 13:15:03.673328: LoadML is_calculating False 2026-08-14 13:15:03.673385: Creating pool of 12 processes to match your CPU count 2026-08-14 13:15:03.744747: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 13:15:03.746788: Optimise levels pass started at 2026-08-14 13:15:03 2026-08-14 13:15:03.748432: Optimise all windows, total charge 95 export 1 2026-08-14 13:15:04.695981: >> Region optimisation pass width 960 gives best_metric 1028.8p, best_cost 1036.2p, best_cycle 45.59kWh, best_import 33.79kWh 2026-08-14 13:15:05.146291: >> Region optimisation pass width 480 gives best_metric 1028.8p, best_cost 1036.2p, best_cycle 45.59kWh, best_import 33.79kWh 2026-08-14 13:15:05.635257: >> Region optimisation pass width 240 gives best_metric 1028.8p, best_cost 1036.2p, best_cycle 45.59kWh, best_import 33.79kWh 2026-08-14 13:15:06.618094: >> Region optimisation pass width 120 gives best_metric 1028.8p, best_cost 1036.2p, best_cycle 45.59kWh, best_import 33.79kWh 2026-08-14 13:15:06.618490: Calculated end_record as 08-15 13:30:00 based on best_price 22.02p, next_charge_start 08-14 13:30:00, max_windows 48 2026-08-14 13:15:06.618571: Optimise levels pass ended at 2026-08-14 13:15:06, duration 2.9 seconds tried 301 combinations 2026-08-14 13:15:06.618640: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1028.8p, best_keep 0kWh, best_cycle 45.59kWh, best_carbon 0kg, best_import 33.79kWh 2026-08-14 13:15:06.639198: Starting detailed optimisation end_record 08-15 13:30:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 15.59p with charge limits [16.0, 16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 13:15:11.376270: Tweak plan optimisation started metric 767.97p, cost 779.36p 2026-08-14 13:15:11.727487: Tweak optimisation finished metric 767.97p, cost 779.36p, metric_keep 0kWh, cycle 21.34kWh, carbon 0kg, import 17.44kWh, changed 8 window(s) 2026-08-14 13:15:11.753956: Swap charge optimisation started metric 767.97p, cost 779.36p, min_improvement_swap 0.1p 2026-08-14 13:15:14.101354: Swap charge optimisation finished metric 767.97p, cost 779.36p 2026-08-14 13:15:14.195094: Pruned 1 dead plan slot(s) in 7 trial(s), nominal metric 764.96p -> 764.96p, plan now metric 767.97p, cost 779.36p, cycle 21.34kWh, import 17.44kWh 2026-08-14 13:15:14.208539: Raw charge windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100% ] reserve 1.12 2026-08-14 13:15:14.209203: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:30:00 - 16-08 13:30:00 @ 15.98p 100% ] reserve 1.12 2026-08-14 13:15:14.209426: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:30:00 - 16-08 13:30:00 @ 15.98p 100% ] reserve 1.12 2026-08-14 13:15:14.209603: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:30:00 - 16-08 13:30:00 @ 15.98p 100% ] reserve 1.12 2026-08-14 13:15:14.248136: Previous plan best metric is 768.06 (cost 779.43) and new plan best metric is 767.97 (cost 779.36) 2026-08-14 13:15:14.248415: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 13:15:14.248566: Plan valid is now true after recompute was False 2026-08-14 13:15:14.279398: predict base end_record 08-15 13:30:00, final soc 8.1kWh, metric 957.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 11:05:00, load 30.8kWh, PV 0.0kWh 2026-08-14 13:15:14.394965: Battery has 21.83 hours left - now at 2.5kWh 2026-08-14 13:15:14.440149: predict base10 end_record 08-15 13:30:00, final soc 6.94kWh, metric 948.53p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:05:00, load 31.63kWh, PV 0.0kWh 2026-08-14 13:15:14.518578: predict best10 end_record 08-15 13:30:00, final soc 1.12kWh, metric 849.55p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:50:00, load 31.63kWh, PV 0.0kWh 2026-08-14 13:15:14.603933: predict best end_record 08-15 13:30:00, final soc 1.12kWh, metric 829.43p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:50:00, load 30.8kWh, PV 0.0kWh 2026-08-14 13:15:14.604017: Saving plan best values to HA entities 2026-08-14 13:15:14.747273: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 13:15:14.752433: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 13:15:14.757586: Best charging limit SoC's [16.0, 11.0, 12.5, 16.0]kWh, export []kWh gives import battery 12.82kWh, house 4.62kWh, export 0.0kWh, metric 829.43p, metric10 849.55p 2026-08-14 13:15:14.826793: Marginal costs baseline metric (no standing charge): 779.4466 2026-08-14 13:15:15.053235: Marginal energy costs matrix computed: min=21.77 max=36.49 2026-08-14 13:15:15.115227: Rate array import [{'start': 795, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2250, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 795, 'end': 2250, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 13:15:15.115592: - Your estimated bill for today is £6.89 and tomorrow is £6.37 2026-08-14 13:15:15.115632: - Import rates are cheap (21.7p - 22.2p) for the next 2 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 13:15:15.115658: - The battery is currently at 16% and is charging to 69% for the next 1 and three quarters hours. 2026-08-14 13:15:15.115678: - For the next 48 hours there will be no solar generation. 2026-08-14 13:15:15.115715: - You will run out of battery in 16 hours. 2026-08-14 13:15:15.115730: 2026-08-14 13:15:15.158031: Plan calculation took 11.69 seconds 2026-08-14 13:15:15.158393: Inverter 0: Type SK Sunsynk 2026-08-14 13:15:15.158445: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 13:15:15.158704: Reserve min: 7%, battery_min: 7% 2026-08-14 13:15:15.158795: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 13:15:15.159097: Inverter 0 SoC: 2.86kW 18%, current charge rate 5000W, current discharge rate 5250W, current battery power -4525W, current battery voltage 51.2V, grid power -5654W, load power 658W, PV Power 0W 2026-08-14 13:15:15.159399: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:15:15.159538: Inverter 0 scheduled charge enable is True 2026-08-14 13:15:15.159611: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 13:15:15.159758: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 13:15:15.159927: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:15:15.159967: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:15:15.160008: Inverter 0 scheduled discharge enable is False 2026-08-14 13:15:15.160142: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:15:15.160197: Inverter 0 discharge windows currently [] 2026-08-14 13:15:15.160243: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:15:15.160276: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:15:15.160304: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:15:15.211243: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:00:00 2026-08-14 13:15:15.211354: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 18%, target 100% 2026-08-14 13:15:15.211470: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 13:15:15.211616: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:15:15.211772: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:15:15.211862: No export window planned 2026-08-14 13:15:15.211960: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 13:15:15.211985: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:15:15.212096: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:15:15.212221: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 13:15:15.212276: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 13:15:15.212318: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 13:15:15.212405: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212439: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212462: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212487: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212516: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212563: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212585: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212625: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212655: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212682: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212712: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212733: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212754: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212773: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212849: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212876: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212903: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212924: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212966: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.212993: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.213016: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:15:15.213033: Inverter 0 count register writes 0 2026-08-14 13:15:15.232012: Total inverter register writes now 810 2026-08-14 13:15:15.262944: Info: Completed run status Charging 2026-08-14 13:15:15.269655: Info: record_status Charging target 18%-100.0% 2026-08-14 13:15:15.276555: Saved current settings to /config/predbat_config.json 2026-08-14 13:15:15.276840: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 13:15:59.391067: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:15:59.391338: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:15:59.391373: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:15:59.391504: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:15:59.391544: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:15:59.391566: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:15:59.391584: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:18:02.589259: TemperatureAPI: Using coordinates latitude 53.4, longitude -2.2 2026-08-14 13:18:02.785788: TemperatureAPI: Successfully fetched temperature data from Open-Meteo API 2026-08-14 13:18:13.625726: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:18:13.626015: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:18:13.626083: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:18:13.626248: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:18:13.626292: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:18:13.626313: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:18:13.626331: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:18:25.117037: Info: HAHistory: Pruning history data started. 2026-08-14 13:18:25.119275: Info: HAHistory: Pruning history data completed. 2026-08-14 13:20:00.840083: --------------- PredBat - update at 2026-08-14 13:20:00+01:00 with clock skew 0 minutes, minutes now 800 2026-08-14 13:20:00.840978: Saved current settings to /config/predbat_config.json 2026-08-14 13:20:00.841194: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 100.0 minutes 2026-08-14 13:20:00.841383: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 13:20:00.841483: Autoupdate: Currently up to date 2026-08-14 13:20:00.863339: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 13:20:00.863541: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 13:20:00.863898: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 13:20:00.864710: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 13:20:00.864968: Predbat mode is set to Control charge & discharge 2026-08-14 13:20:01.063230: Found 21602 load_today datapoints going back 27 days 2026-08-14 13:20:01.063398: Using load_power data to fill gaps in load_today data 2026-08-14 13:20:01.863020: Processing 721 30-minute periods for power integration 2026-08-14 13:20:02.030884: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 13:20:02.032286: Car charging hold False, threshold 6.0kWh 2026-08-14 13:20:02.032354: Current data so far today: load 13.45kWh, import 15.7kWh, export 0.0kWh, PV 0kWh 2026-08-14 13:20:02.047991: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 13:20:02.048737: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 13:20:02.048831: Standing charge is set to 49.98p 2026-08-14 13:20:02.095547: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 13:20:02.095656: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 13:20:02.095882: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 165.0 minutes 2026-08-14 13:20:02.096256: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 165.0 minutes 2026-08-14 13:20:02.101440: Loaded 95 datapoints of futurerate analysis 2026-08-14 13:20:02.180799: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61'] 2026-08-14 13:20:02.226878: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 13:20:02.231472: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 13:20:02.231874: Import rates: min 14.97p, max 53.39p, average 27.04p 2026-08-14 13:20:02.266317: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 13:20:02.266433: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 13:20:02.267507: High export rate found rates in range 99p to -99p 2026-08-14 13:20:02.344939: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 13:20:02.345413: Car 0 charging is not planned as it is not plugged in 2026-08-14 13:20:02.355950: Battery level now 2.5kWh, -1hr ago 1.63kWh, at midnight 2.43kWh, battery value change in the last hour 11.19p, change today 0.93p, rate_forward 12.86p 2026-08-14 13:20:02.356253: Last hour: net energy 2.5kWh, import 2.5kWh, export 0.0kWh, car 0kWh, load 1.2kWh, net cost 55.05p, import 55.05p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 13:20:02.410106: Today's energy total net 15.7kWh, import 15.7kWh, export 0.0kWh, cost 430.06p, import 380.08p, export 0.0p, carbon 0.0kg 2026-08-14 13:20:02.410268: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 13:20:02.480634: Using weighted-bucket historical load forecast over 14 days 2026-08-14 13:20:02.502659: Today's load divergence 127.61%, in-day adjustment 135.38%, damping 0.95x, yesterday 146.81% today 126.23% blend 44.44% 2026-08-14 13:20:02.502745: Today's predicted so far 7.95kWh with 0.0kWh car/iBoost excluded, 5.98kWh import ignored, and 7.95kWh forecast extra. 2026-08-14 13:20:02.502772: Today's actual load so far 13.44kWh with 0.0kWh car/iBoost excluded, and 5.98kWh import ignored. 2026-08-14 13:20:02.539427: Inverter 0: Type SK Sunsynk 2026-08-14 13:20:02.539506: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 13:20:02.539673: Reserve min: 7%, battery_min: 7% 2026-08-14 13:20:02.539742: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 13:20:02.539978: Inverter 0 SoC: 2.86kW 18%, current charge rate 5000W, current discharge rate 5250W, current battery power -4531W, current battery voltage 51.2V, grid power -5507W, load power 511W, PV Power 0W 2026-08-14 13:20:02.540112: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:20:02.540187: Inverter 0 scheduled charge enable is True 2026-08-14 13:20:02.540222: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 13:20:02.540292: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 13:20:02.540412: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:20:02.540442: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:20:02.540473: Inverter 0 scheduled discharge enable is False 2026-08-14 13:20:02.540569: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:20:02.540599: Inverter 0 discharge windows currently [] 2026-08-14 13:20:02.540634: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:20:02.540665: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:20:02.540682: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:20:02.603164: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 13:20:02.603259: Plan was last updated on 2026-08-14 13:15:00+01:00 and is now 5.0 minutes old 2026-08-14 13:20:02.603439: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:30:00 - 16-08 13:30:00 @ 15.98p 100% ] 2026-08-14 13:20:02.603475: Best export window [ ] 2026-08-14 13:20:02.604209: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 13:20:02.606758: Load divergence over 8.0 hours mean 337.53W, min 235.2W, max 530.4W, std dev 52.44W, divergence 7.77% 2026-08-14 13:20:02.627976: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 13:20:02.628069: LoadML is_calculating False 2026-08-14 13:20:02.628123: Creating pool of 12 processes to match your CPU count 2026-08-14 13:20:02.732409: predict base end_record 08-15 13:35:00, final soc 8.49kWh, metric 975.76p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 11:00:00, load 30.71kWh, PV 0.0kWh 2026-08-14 13:20:02.855007: Battery has 21.67 hours left - now at 2.86kWh 2026-08-14 13:20:02.898095: predict base10 end_record 08-15 13:35:00, final soc 7.26kWh, metric 965.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:10:00, load 31.53kWh, PV 0.0kWh 2026-08-14 13:20:02.974553: predict best10 end_record 08-15 13:35:00, final soc 1.44kWh, metric 866.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:55:00, load 31.53kWh, PV 0.0kWh 2026-08-14 13:20:03.071077: predict best end_record 08-15 13:35:00, final soc 1.51kWh, metric 847.98p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:50:00, load 30.71kWh, PV 0.0kWh 2026-08-14 13:20:03.071170: Saving plan best values to HA entities 2026-08-14 13:20:03.253782: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 13:20:03.261505: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 13:20:03.267674: Best charging limit SoC's [16.0, 11.0, 12.5, 16.0]kWh, export []kWh gives import battery 12.81kWh, house 4.62kWh, export 0.0kWh, metric 847.98p, metric10 866.9p 2026-08-14 13:20:03.354565: Marginal costs baseline metric (no standing charge): 798.0005 2026-08-14 13:20:03.585880: Marginal energy costs matrix computed: min=21.76 max=36.8 2026-08-14 13:20:03.656774: Rate array import [{'start': 800, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2255, 'rate': 'cheap', 'range': '(15.4p - 27.2p)'}] export [{'start': 800, 'end': 2255, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 13:20:03.657208: - Your estimated bill for today is £7.00 and tomorrow is £6.37 2026-08-14 13:20:03.657290: - Import rates are cheap (21.7p - 22.2p) for the next 2 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 13:20:03.657310: - The battery is currently at 18% and is charging to 69% for the next 1 and three quarters hours. 2026-08-14 13:20:03.657326: - For the next 48 hours there will be no solar generation. 2026-08-14 13:20:03.657340: - You will run out of battery in 16 hours. 2026-08-14 13:20:03.657354: 2026-08-14 13:20:03.700606: Plan calculation took 1.10 seconds 2026-08-14 13:20:03.704213: No high rate period found 2026-08-14 13:20:03.755134: Import threshold used for optimisation was 25.52p 2026-08-14 13:20:03.805765: Low import rate windows [0: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 1: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 2: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 3: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 4: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 5: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 6: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 7: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 8: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 9: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 10: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 11: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 12: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 13: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 14: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 15: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 16: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 17: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 18: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 19: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 20: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 21: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 22: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 23: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 24: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 25: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 26: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 27: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 28: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 29: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 30: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 31: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 32: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 33: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 34: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 35: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 36: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 37: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 38: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 39: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 40: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 41: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 42: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 43: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 44: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 45: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 46: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 47: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 48: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 49: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 50: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 51: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 52: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 53: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 54: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 55: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 56: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 57: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 58: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 59: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 60: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 61: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 62: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 63: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 64: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 65: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 66: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 67: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 68: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 69: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 70: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 71: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 72: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 73: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 74: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 75: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 76: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 77: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 78: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 79: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 80: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 81: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 82: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 83: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 84: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 85: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 86: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 87: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 88: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 89: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 90: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 91: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 92: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 93: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 94: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 95: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59] 2026-08-14 13:20:03.813381: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:00:00 2026-08-14 13:20:03.813483: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 18%, target 100% 2026-08-14 13:20:03.813631: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 13:20:03.813796: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:20:03.814018: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:20:03.814096: No export window planned 2026-08-14 13:20:03.814200: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 13:20:03.814230: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:20:03.814341: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:20:03.814439: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 13:20:03.814480: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 13:20:03.814530: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 13:20:03.814616: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.814650: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.814674: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.814695: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.814715: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.814740: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.814766: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.814815: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.814848: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.814874: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.814896: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.814916: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.814938: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.814977: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.815031: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.815061: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.815081: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.815105: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.815127: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.815146: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.815165: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:20:03.815182: Inverter 0 count register writes 0 2026-08-14 13:20:03.829117: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 13:20:03.833963: Total inverter register writes now 810 2026-08-14 13:20:03.862608: Info: Completed run status Charging 2026-08-14 13:20:03.870515: Info: record_status Charging target 18%-100.0% 2026-08-14 13:20:03.877792: Saved current settings to /config/predbat_config.json 2026-08-14 13:20:03.878083: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 13:20:43.994930: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:20:43.995218: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:20:43.995262: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:20:43.995397: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:20:43.995441: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:20:43.995462: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:20:43.995480: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:22:44.210799: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:22:44.211109: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:22:44.211163: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:22:44.211312: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:22:44.211352: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:22:44.211374: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:22:44.211392: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:24:44.438558: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:24:44.438857: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:24:44.438898: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:24:44.439064: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:24:44.439117: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:24:44.439140: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:24:44.439159: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:25:00.535571: --------------- PredBat - update at 2026-08-14 13:25:00+01:00 with clock skew 0 minutes, minutes now 805 2026-08-14 13:25:00.536412: Saved current settings to /config/predbat_config.json 2026-08-14 13:25:00.536620: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 105.0 minutes 2026-08-14 13:25:00.536701: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 13:25:00.536779: Autoupdate: Currently up to date 2026-08-14 13:25:00.555975: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 13:25:00.556115: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 13:25:00.556296: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 13:25:00.556732: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 13:25:00.556890: Predbat mode is set to Control charge & discharge 2026-08-14 13:25:00.732787: Found 21602 load_today datapoints going back 27 days 2026-08-14 13:25:00.732939: Using load_power data to fill gaps in load_today data 2026-08-14 13:25:01.435221: Processing 721 30-minute periods for power integration 2026-08-14 13:25:01.593481: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 13:25:01.593606: Car charging hold False, threshold 6.0kWh 2026-08-14 13:25:01.593644: Current data so far today: load 13.5kWh, import 15.7kWh, export 0.0kWh, PV 0kWh 2026-08-14 13:25:01.606461: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 13:25:01.607195: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 13:25:01.607264: Standing charge is set to 49.98p 2026-08-14 13:25:01.659548: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 13:25:01.659649: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 13:25:01.659840: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 170.0 minutes 2026-08-14 13:25:01.660167: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 170.0 minutes 2026-08-14 13:25:01.665142: Loaded 95 datapoints of futurerate analysis 2026-08-14 13:25:01.746079: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61'] 2026-08-14 13:25:01.794042: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 13:25:01.798617: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 13:25:01.798974: Import rates: min 14.97p, max 53.39p, average 27.03p 2026-08-14 13:25:01.835606: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 13:25:01.835719: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 13:25:01.836936: High export rate found rates in range 99p to -99p 2026-08-14 13:25:01.923815: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 13:25:01.923953: Car 0 charging is not planned as it is not plugged in 2026-08-14 13:25:01.935224: Battery level now 2.86kWh, -1hr ago 1.99kWh, at midnight 2.43kWh, battery value change in the last hour 11.15p, change today 5.45p, rate_forward 12.86p 2026-08-14 13:25:01.935523: Last hour: net energy 2.3kWh, import 2.3kWh, export 0.0kWh, car 0kWh, load 1.2kWh, net cost 50.61p, import 50.61p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 13:25:01.997157: Today's energy total net 15.7kWh, import 15.7kWh, export 0.0kWh, cost 430.06p, import 380.08p, export 0.0p, carbon 0.0kg 2026-08-14 13:25:01.997319: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 13:25:02.080178: Using weighted-bucket historical load forecast over 14 days 2026-08-14 13:25:02.102731: Today's load divergence 127.48%, in-day adjustment 135.24%, damping 0.95x, yesterday 146.81% today 126.11% blend 44.1% 2026-08-14 13:25:02.102830: Today's predicted so far 8.0kWh with 0.0kWh car/iBoost excluded, 6.08kWh import ignored, and 8.0kWh forecast extra. 2026-08-14 13:25:02.102861: Today's actual load so far 13.45kWh with 0.0kWh car/iBoost excluded, and 6.08kWh import ignored. 2026-08-14 13:25:02.136050: Inverter 0: Type SK Sunsynk 2026-08-14 13:25:02.136130: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 13:25:02.136301: Reserve min: 7%, battery_min: 7% 2026-08-14 13:25:02.136368: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 13:25:02.136595: Inverter 0 SoC: 3.56kW 22%, current charge rate 5000W, current discharge rate 5250W, current battery power -4537W, current battery voltage 51.2V, grid power -5377W, load power 387W, PV Power 0W 2026-08-14 13:25:02.136729: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:25:02.136800: Inverter 0 scheduled charge enable is True 2026-08-14 13:25:02.136853: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 13:25:02.136928: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 13:25:02.137089: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:25:02.137127: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:25:02.137182: Inverter 0 scheduled discharge enable is False 2026-08-14 13:25:02.137289: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:25:02.137320: Inverter 0 discharge windows currently [] 2026-08-14 13:25:02.137340: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:25:02.137358: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:25:02.137373: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:25:02.191798: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 13:25:02.191937: Plan was last updated on 2026-08-14 13:15:00+01:00 and is now 10.0 minutes old 2026-08-14 13:25:02.192188: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:30:00 - 16-08 13:30:00 @ 15.98p 100% ] 2026-08-14 13:25:02.192240: Best export window [ ] 2026-08-14 13:25:02.192898: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 13:25:02.195556: Load divergence over 8.0 hours mean 337.33W, min 247.2W, max 534.0W, std dev 53.92W, divergence 7.99% 2026-08-14 13:25:02.211502: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 13:25:02.211601: LoadML is_calculating False 2026-08-14 13:25:02.211683: Creating pool of 12 processes to match your CPU count 2026-08-14 13:25:02.314426: predict base end_record 08-15 13:40:00, final soc 8.88kWh, metric 967.01p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 11:25:00, load 30.74kWh, PV 0.0kWh 2026-08-14 13:25:02.450639: Battery has 22.0 hours left - now at 3.56kWh 2026-08-14 13:25:02.498129: predict base10 end_record 08-15 13:40:00, final soc 7.59kWh, metric 953.88p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:50:00, load 31.56kWh, PV 0.0kWh 2026-08-14 13:25:02.579957: predict best10 end_record 08-15 13:40:00, final soc 1.77kWh, metric 854.65p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:55:00, load 31.56kWh, PV 0.0kWh 2026-08-14 13:25:02.666600: predict best end_record 08-15 13:40:00, final soc 1.9kWh, metric 836.86p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:50:00, load 30.74kWh, PV 0.0kWh 2026-08-14 13:25:02.666699: Saving plan best values to HA entities 2026-08-14 13:25:02.854123: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 13:25:02.860367: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 13:25:02.868935: Best charging limit SoC's [16.0, 11.0, 12.5, 16.0]kWh, export []kWh gives import battery 12.45kWh, house 4.63kWh, export 0.0kWh, metric 836.86p, metric10 854.65p 2026-08-14 13:25:02.953126: Marginal costs baseline metric (no standing charge): 786.872 2026-08-14 13:25:03.231927: Marginal energy costs matrix computed: min=21.75 max=37.07 2026-08-14 13:25:03.311985: Rate array import [{'start': 805, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2260, 'rate': 'cheap', 'range': '(15.4p - 27.2p)'}] export [{'start': 805, 'end': 2260, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 13:25:03.312598: - Your estimated bill for today is £6.82 and tomorrow is £6.37 2026-08-14 13:25:03.312673: - Import rates are cheap (21.7p - 22.2p) for the next 2 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 13:25:03.312698: - The battery is currently at 22% and is charging to 69% for the next 1 and a half hours. 2026-08-14 13:25:03.312770: - For the next 48 hours there will be no solar generation. 2026-08-14 13:25:03.312827: - You will run out of battery in 16 hours. 2026-08-14 13:25:03.312866: 2026-08-14 13:25:03.402130: Plan calculation took 1.21 seconds 2026-08-14 13:25:03.408583: No high rate period found 2026-08-14 13:25:03.469284: Import threshold used for optimisation was 25.52p 2026-08-14 13:25:03.528341: Low import rate windows [0: 08-14 13:00:00 - 08-14 13:30:00 @ 21.85, 1: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 2: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 3: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 4: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 5: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 6: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 7: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 8: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 9: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 10: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 11: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 12: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 13: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 14: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 15: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 16: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 17: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 18: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 19: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 20: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 21: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 22: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 23: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 24: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 25: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 26: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 27: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 28: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 29: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 30: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 31: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 32: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 33: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 34: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 35: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 36: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 37: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 38: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 39: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 40: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 41: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 42: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 43: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 44: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 45: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 46: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 47: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 48: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 49: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 50: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 51: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 52: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 53: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 54: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 55: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 56: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 57: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 58: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 59: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 60: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 61: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 62: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 63: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 64: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 65: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 66: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 67: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 68: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 69: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 70: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 71: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 72: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 73: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 74: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 75: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 76: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 77: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 78: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 79: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 80: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 81: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 82: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 83: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 84: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 85: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 86: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 87: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 88: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 89: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 90: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 91: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 92: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 93: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 94: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 95: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59] 2026-08-14 13:25:03.536580: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:00:00 2026-08-14 13:25:03.536701: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 22%, target 100% 2026-08-14 13:25:03.536894: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 13:25:03.537198: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:25:03.537476: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:25:03.537573: No export window planned 2026-08-14 13:25:03.537696: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 13:25:03.537733: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:25:03.537887: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:25:03.538014: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 13:25:03.538056: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 13:25:03.538114: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 13:25:03.538221: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538263: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538292: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538318: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538343: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538378: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538409: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538455: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538490: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538521: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538546: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538576: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538601: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538632: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538696: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538731: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538757: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538786: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538854: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538883: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538913: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:03.538935: Inverter 0 count register writes 0 2026-08-14 13:25:03.556219: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 13:25:03.556390: Recompute is saving previous plan... 2026-08-14 13:25:03.559793: Best charge window [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 100%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 100%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 100%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 100%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 100%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 100%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 100%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 100%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 100%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 100%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 100%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 100%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 100%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 100%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 100%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 100%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 100%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 100%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 100%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 100%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 100%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 100%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 100%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 100%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 100%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 100%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 100%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 100%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 100%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 100%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 100%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 100%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 100%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 100%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 100%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 100%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 100%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100% ] 2026-08-14 13:25:03.559894: Best export window [ ] 2026-08-14 13:25:03.560733: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 13:25:03.563844: Load divergence over 8.0 hours mean 337.33W, min 247.2W, max 534.0W, std dev 53.92W, divergence 7.99% 2026-08-14 13:25:03.582582: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 13:25:03.582716: LoadML is_calculating False 2026-08-14 13:25:03.582790: Creating pool of 12 processes to match your CPU count 2026-08-14 13:25:03.669172: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 13:25:03.671302: Optimise levels pass started at 2026-08-14 13:25:03 2026-08-14 13:25:03.671370: Optimise all windows, total charge 95 export 1 2026-08-14 13:25:04.638097: >> Region optimisation pass width 960 gives best_metric 1026.25p, best_cost 1033.27p, best_cycle 40.41kWh, best_import 32.32kWh 2026-08-14 13:25:05.319413: >> Region optimisation pass width 480 gives best_metric 1024.09p, best_cost 1032.53p, best_cycle 43.01kWh, best_import 32.5kWh 2026-08-14 13:25:05.865325: >> Region optimisation pass width 240 gives best_metric 1024.09p, best_cost 1032.53p, best_cycle 43.01kWh, best_import 32.5kWh 2026-08-14 13:25:07.337582: >> Region optimisation pass width 120 gives best_metric 1021.64p, best_cost 1030.52p, best_cycle 46.99kWh, best_import 32.78kWh 2026-08-14 13:25:07.338054: Calculated end_record as 08-15 13:30:00 based on best_price 22.02p, next_charge_start 08-14 13:30:00, max_windows 48 2026-08-14 13:25:07.338170: Optimise levels pass ended at 2026-08-14 13:25:07, duration 3.7 seconds tried 337 combinations 2026-08-14 13:25:07.338277: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1021.64p, best_keep 0kWh, best_cycle 46.99kWh, best_carbon 0kg, best_import 32.78kWh 2026-08-14 13:25:07.358742: Starting detailed optimisation end_record 08-15 13:30:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 15.59p with charge limits [16.0, 16.0, 16.0, 16.0, 0, 12.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4.75, 4.75, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 13:25:11.161674: Tweak plan optimisation started metric 760.9p, cost 772.33p 2026-08-14 13:25:11.518869: Tweak optimisation finished metric 760.9p, cost 772.33p, metric_keep 0kWh, cycle 20.26kWh, carbon 0kg, import 16.13kWh, changed 8 window(s) 2026-08-14 13:25:11.539199: Swap charge optimisation started metric 760.9p, cost 772.33p, min_improvement_swap 0.1p 2026-08-14 13:25:13.944550: Swap charge optimisation finished metric 760.9p, cost 772.33p 2026-08-14 13:25:14.022685: Pruned 1 dead plan slot(s) in 7 trial(s), nominal metric 757.93p -> 757.93p, plan now metric 760.91p, cost 772.33p, cycle 20.26kWh, import 16.13kWh 2026-08-14 13:25:14.032480: Raw charge windows [ 14-08 13:00:00 - 14-08 13:30:00 @ 21.85p 100%, 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100% ] reserve 1.12 2026-08-14 13:25:14.033039: Unclipped charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:30:00 - 16-08 13:30:00 @ 15.98p 100% ] reserve 1.12 2026-08-14 13:25:14.033202: Unfiltered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:30:00 - 16-08 13:30:00 @ 15.98p 100% ] reserve 1.12 2026-08-14 13:25:14.033353: Filtered charge windows [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:30:00 - 16-08 13:30:00 @ 15.98p 100% ] reserve 1.12 2026-08-14 13:25:14.064153: Previous plan best metric is 760.9 (cost 772.33) and new plan best metric is 760.9 (cost 772.33) 2026-08-14 13:25:14.064368: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 13:25:14.064497: Plan valid is now true after recompute was False 2026-08-14 13:25:14.091386: predict base end_record 08-15 13:30:00, final soc 8.1kWh, metric 952.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 11:25:00, load 30.63kWh, PV 0.0kWh 2026-08-14 13:25:14.197602: Battery has 22.0 hours left - now at 3.56kWh 2026-08-14 13:25:14.241341: predict base10 end_record 08-15 13:30:00, final soc 6.94kWh, metric 941.4p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:50:00, load 31.44kWh, PV 0.0kWh 2026-08-14 13:25:14.310962: predict best10 end_record 08-15 13:30:00, final soc 1.12kWh, metric 842.17p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:55:00, load 31.44kWh, PV 0.0kWh 2026-08-14 13:25:14.377941: predict best end_record 08-15 13:30:00, final soc 1.12kWh, metric 822.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:50:00, load 30.63kWh, PV 0.0kWh 2026-08-14 13:25:14.378028: Saving plan best values to HA entities 2026-08-14 13:25:14.527961: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 13:25:14.532902: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 13:25:14.538059: Best charging limit SoC's [16.0, 11.0, 12.5, 16.0]kWh, export []kWh gives import battery 11.5kWh, house 4.63kWh, export 0.0kWh, metric 822.32p, metric10 842.17p 2026-08-14 13:25:14.604833: Marginal costs baseline metric (no standing charge): 772.3339 2026-08-14 13:25:14.853726: Marginal energy costs matrix computed: min=21.75 max=37.07 2026-08-14 13:25:14.920429: Rate array import [{'start': 805, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2250, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 805, 'end': 2250, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 13:25:14.920906: - Your estimated bill for today is £6.82 and tomorrow is £6.37 2026-08-14 13:25:14.920999: - Import rates are cheap (21.7p - 22.2p) for the next 2 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 13:25:14.921030: - The battery is currently at 22% and is charging to 69% for the next 1 and a half hours. 2026-08-14 13:25:14.921055: - For the next 48 hours there will be no solar generation. 2026-08-14 13:25:14.921073: - You will run out of battery in 16 hours. 2026-08-14 13:25:14.921092: 2026-08-14 13:25:14.968305: Plan calculation took 11.41 seconds 2026-08-14 13:25:14.968648: Inverter 0: Type SK Sunsynk 2026-08-14 13:25:14.968690: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 13:25:14.968996: Reserve min: 7%, battery_min: 7% 2026-08-14 13:25:14.969104: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 13:25:14.969449: Inverter 0 SoC: 3.56kW 22%, current charge rate 5000W, current discharge rate 5250W, current battery power -4537W, current battery voltage 51.2V, grid power -5466W, load power 469W, PV Power 0W 2026-08-14 13:25:14.969688: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:25:14.969789: Inverter 0 scheduled charge enable is True 2026-08-14 13:25:14.969861: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 13:25:14.969991: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 13:25:14.970163: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:25:14.970208: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:25:14.970253: Inverter 0 scheduled discharge enable is False 2026-08-14 13:25:14.970378: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:25:14.970417: Inverter 0 discharge windows currently [] 2026-08-14 13:25:14.970445: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:25:14.970473: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:25:14.970491: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:25:15.028145: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:00:00 2026-08-14 13:25:15.028271: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 22%, target 100% 2026-08-14 13:25:15.028419: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 13:25:15.028642: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:25:15.028837: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:25:15.028925: No export window planned 2026-08-14 13:25:15.029118: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 13:25:15.029166: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:25:15.029399: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:25:15.029531: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 13:25:15.029595: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 13:25:15.029676: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 13:25:15.029832: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.029903: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.029956: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.029998: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.030024: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.030055: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.030078: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.030120: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.030146: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.030174: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.030197: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.030219: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.030240: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.030264: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.030327: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.030374: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.030422: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.030475: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.030514: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.030554: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.030605: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:25:15.030636: Inverter 0 count register writes 0 2026-08-14 13:25:15.052470: Total inverter register writes now 810 2026-08-14 13:25:15.088377: Info: Completed run status Charging 2026-08-14 13:25:15.095193: Info: record_status Charging target 22%-100.0% 2026-08-14 13:25:15.101821: Saved current settings to /config/predbat_config.json 2026-08-14 13:25:15.102075: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 13:25:59.215152: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:25:59.215409: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:25:59.215453: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:25:59.215588: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:25:59.215642: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:25:59.215665: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:25:59.215687: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:27:59.448798: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:27:59.449169: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:27:59.449221: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:27:59.449403: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:27:59.449442: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:27:59.449464: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:27:59.449482: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:30:00.676709: --------------- PredBat - update at 2026-08-14 13:30:00+01:00 with clock skew 0 minutes, minutes now 810 2026-08-14 13:30:00.677507: Saved current settings to /config/predbat_config.json 2026-08-14 13:30:00.677638: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 110.0 minutes 2026-08-14 13:30:00.677724: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 13:30:00.677810: Autoupdate: Currently up to date 2026-08-14 13:30:00.700792: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 13:30:00.700999: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 13:30:00.701236: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 13:30:00.701842: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 13:30:00.702046: Predbat mode is set to Control charge & discharge 2026-08-14 13:30:00.927644: Found 21602 load_today datapoints going back 28 days 2026-08-14 13:30:00.928064: Using load_power data to fill gaps in load_today data 2026-08-14 13:30:01.784571: Processing 721 30-minute periods for power integration 2026-08-14 13:30:01.959378: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 13:30:01.959493: Car charging hold False, threshold 6.0kWh 2026-08-14 13:30:01.959530: Current data so far today: load 13.55kWh, import 16.6kWh, export 0.0kWh, PV 0kWh 2026-08-14 13:30:01.973144: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 13:30:01.973837: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 13:30:01.973902: Standing charge is set to 49.98p 2026-08-14 13:30:02.016004: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 13:30:02.016116: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 13:30:02.016339: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 175.0 minutes 2026-08-14 13:30:02.016753: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 175.0 minutes 2026-08-14 13:30:02.022791: Loaded 95 datapoints of futurerate analysis 2026-08-14 13:30:02.125060: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61'] 2026-08-14 13:30:02.183368: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 13:30:02.188884: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 13:30:02.189318: Import rates: min 14.97p, max 53.39p, average 27.02p 2026-08-14 13:30:02.231626: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 13:30:02.231751: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 13:30:02.233065: High export rate found rates in range 99p to -99p 2026-08-14 13:30:02.330063: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 13:30:02.330184: Car 0 charging is not planned as it is not plugged in 2026-08-14 13:30:02.343371: Battery level now 3.56kWh, -1hr ago 2.0kWh, at midnight 2.43kWh, battery value change in the last hour 20.11p, change today 14.51p, rate_forward 12.86p 2026-08-14 13:30:02.343756: Last hour: net energy 3.0kWh, import 3.0kWh, export 0.0kWh, car 0kWh, load 1.15kWh, net cost 65.84p, import 65.84p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 13:30:02.398557: Today's energy total net 16.6kWh, import 16.6kWh, export 0.0kWh, cost 449.73p, import 399.74p, export 0.0p, carbon 0.0kg 2026-08-14 13:30:02.398715: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 13:30:02.486172: Using weighted-bucket historical load forecast over 14 days 2026-08-14 13:30:02.513979: Today's load divergence 127.75%, in-day adjustment 135.31%, damping 0.95x, yesterday 146.81% today 126.37% blend 43.75% 2026-08-14 13:30:02.514076: Today's predicted so far 8.09kWh with 0.0kWh car/iBoost excluded, 6.81kWh import ignored, and 8.09kWh forecast extra. 2026-08-14 13:30:02.514110: Today's actual load so far 13.62kWh with 0.0kWh car/iBoost excluded, and 6.81kWh import ignored. 2026-08-14 13:30:02.555122: Inverter 0: Type SK Sunsynk 2026-08-14 13:30:02.555208: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 13:30:02.555390: Reserve min: 7%, battery_min: 7% 2026-08-14 13:30:02.555462: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 13:30:02.555753: Inverter 0 SoC: 3.56kW 22%, current charge rate 5000W, current discharge rate 5250W, current battery power -4542W, current battery voltage 51.2V, grid power -5415W, load power 419W, PV Power 0W 2026-08-14 13:30:02.555949: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:30:02.556041: Inverter 0 scheduled charge enable is True 2026-08-14 13:30:02.556087: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 13:30:02.556184: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 13:30:02.556306: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:30:02.556342: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:30:02.556378: Inverter 0 scheduled discharge enable is False 2026-08-14 13:30:02.556493: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:30:02.556528: Inverter 0 discharge windows currently [] 2026-08-14 13:30:02.556551: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:30:02.556572: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:30:02.556589: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:30:02.631834: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 13:30:02.631951: Plan was last updated on 2026-08-14 13:25:00+01:00 and is now 5.0 minutes old 2026-08-14 13:30:02.632165: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:30:00 - 16-08 13:30:00 @ 15.98p 100% ] 2026-08-14 13:30:02.632208: Best export window [ ] 2026-08-14 13:30:02.633125: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 13:30:02.636260: Load divergence over 8.0 hours mean 337.09W, min 239.4W, max 558.0W, std dev 56.5W, divergence 8.38% 2026-08-14 13:30:02.656162: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 13:30:02.656281: LoadML is_calculating False 2026-08-14 13:30:02.656345: Creating pool of 12 processes to match your CPU count 2026-08-14 13:30:02.775772: predict base end_record 08-15 13:35:00, final soc 8.49kWh, metric 974.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 11:00:00, load 30.64kWh, PV 0.0kWh 2026-08-14 13:30:02.924549: Battery has 21.5 hours left - now at 3.56kWh 2026-08-14 13:30:02.979798: predict base10 end_record 08-15 13:35:00, final soc 7.26kWh, metric 965.15p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 31.45kWh, PV 0.0kWh 2026-08-14 13:30:03.070020: predict best10 end_record 08-15 13:35:00, final soc 1.44kWh, metric 866.13p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:55:00, load 31.45kWh, PV 0.0kWh 2026-08-14 13:30:03.174847: predict best end_record 08-15 13:35:00, final soc 1.51kWh, metric 847.49p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 30.64kWh, PV 0.0kWh 2026-08-14 13:30:03.174948: Saving plan best values to HA entities 2026-08-14 13:30:03.358490: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 13:30:03.364320: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 13:30:03.370058: Best charging limit SoC's [16.0, 11.0, 12.5, 16.0]kWh, export []kWh gives import battery 11.92kWh, house 4.59kWh, export 0.0kWh, metric 847.49p, metric10 866.13p 2026-08-14 13:30:03.457581: Marginal costs baseline metric (no standing charge): 797.5035 2026-08-14 13:30:03.761757: Marginal energy costs matrix computed: min=21.73 max=37.39 2026-08-14 13:30:03.840270: Rate array import [{'start': 810, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2255, 'rate': 'cheap', 'range': '(15.4p - 27.2p)'}] export [{'start': 810, 'end': 2255, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 13:30:03.840655: - Your estimated bill for today is £7.00 and tomorrow is £6.35 2026-08-14 13:30:03.840697: - Import rates are cheap (21.7p - 22.2p) for the next 2 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 13:30:03.840716: - The battery is currently at 22% and is charging to 69% for the next 1 and a half hours. 2026-08-14 13:30:03.840735: - For the next 48 hours there will be no solar generation. 2026-08-14 13:30:03.840760: - You will run out of battery in 16 hours. 2026-08-14 13:30:03.840792: 2026-08-14 13:30:03.891116: Plan calculation took 1.26 seconds 2026-08-14 13:30:03.894606: No high rate period found 2026-08-14 13:30:03.947241: Import threshold used for optimisation was 25.52p 2026-08-14 13:30:04.012238: Low import rate windows [0: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 1: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 2: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 3: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 4: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 5: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 6: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 7: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 8: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 9: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 10: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 11: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 12: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 13: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 14: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 15: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 16: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 17: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 18: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 19: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 20: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 21: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 22: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 23: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 24: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 25: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 26: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 27: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 28: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 29: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 30: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 31: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 32: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 33: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 34: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 35: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 36: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 37: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 38: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 39: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 40: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 41: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 42: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 43: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 44: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 45: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 46: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 47: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 48: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 49: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 50: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 51: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 52: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 53: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 54: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 55: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 56: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 57: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 58: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 59: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 60: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 61: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 62: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 63: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 64: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 65: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 66: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 67: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 68: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 69: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 70: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 71: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 72: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 73: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 74: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 75: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 76: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 77: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 78: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 79: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 80: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 81: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 82: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 83: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 84: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 85: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 86: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 87: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 88: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 89: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 90: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 91: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 92: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 93: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 94: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59] 2026-08-14 13:30:04.020455: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:00:00 2026-08-14 13:30:04.020577: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 22%, target 100% 2026-08-14 13:30:04.020752: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 13:30:04.021015: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:30:04.021319: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:30:04.021424: No export window planned 2026-08-14 13:30:04.021543: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 13:30:04.021580: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:30:04.021716: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:30:04.021856: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 13:30:04.021904: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 13:30:04.021968: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 13:30:04.022066: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022106: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022133: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022166: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022196: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022230: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022256: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022299: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022350: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022388: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022418: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022447: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022471: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022501: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022566: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022602: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022628: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022655: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022689: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022714: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022741: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:30:04.022766: Inverter 0 count register writes 0 2026-08-14 13:30:04.044466: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 13:30:04.051757: Total inverter register writes now 810 2026-08-14 13:30:04.087984: Info: Completed run status Charging 2026-08-14 13:30:04.094549: Info: record_status Charging target 22%-100.0% 2026-08-14 13:30:04.101806: Saved current settings to /config/predbat_config.json 2026-08-14 13:30:04.102133: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 13:30:44.222768: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:30:44.223078: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:30:44.223132: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:30:44.223269: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:30:44.223308: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:30:44.223329: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:30:44.223347: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:32:44.451175: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:32:44.451492: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:32:44.451554: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:32:44.451743: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:32:44.451798: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:32:44.451846: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:32:44.451878: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:34:58.689164: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:34:58.689453: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:34:58.689488: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:34:58.689661: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:34:58.689701: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:34:58.689722: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:34:58.689740: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:35:00.760385: --------------- PredBat - update at 2026-08-14 13:35:00+01:00 with clock skew 0 minutes, minutes now 815 2026-08-14 13:35:00.761161: Saved current settings to /config/predbat_config.json 2026-08-14 13:35:00.761291: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 115.0 minutes 2026-08-14 13:35:00.761365: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 13:35:00.761454: Autoupdate: Currently up to date 2026-08-14 13:35:00.785706: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 13:35:00.785918: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 13:35:00.786177: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 13:35:00.786775: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 13:35:00.786968: Predbat mode is set to Control charge & discharge 2026-08-14 13:35:00.968281: Found 21602 load_today datapoints going back 28 days 2026-08-14 13:35:00.968430: Using load_power data to fill gaps in load_today data 2026-08-14 13:35:01.811528: Processing 721 30-minute periods for power integration 2026-08-14 13:35:02.005042: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 13:35:02.005198: Car charging hold False, threshold 6.0kWh 2026-08-14 13:35:02.005265: Current data so far today: load 13.6kWh, import 16.6kWh, export 0.0kWh, PV 0kWh 2026-08-14 13:35:02.021586: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 13:35:02.022653: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 13:35:02.022762: Standing charge is set to 49.98p 2026-08-14 13:35:02.072300: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 13:35:02.072436: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 13:35:02.072699: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 180.0 minutes 2026-08-14 13:35:02.073274: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 180.0 minutes 2026-08-14 13:35:02.079089: Loaded 95 datapoints of futurerate analysis 2026-08-14 13:35:02.180273: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61'] 2026-08-14 13:35:02.239236: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 13:35:02.245027: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 13:35:02.245523: Import rates: min 14.97p, max 53.39p, average 27.01p 2026-08-14 13:35:02.289846: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 13:35:02.289973: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 13:35:02.291364: High export rate found rates in range 99p to -99p 2026-08-14 13:35:02.386358: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 13:35:02.386779: Car 0 charging is not planned as it is not plugged in 2026-08-14 13:35:02.400008: Battery level now 3.56kWh, -1hr ago 2.0kWh, at midnight 2.43kWh, battery value change in the last hour 20.11p, change today 14.51p, rate_forward 12.86p 2026-08-14 13:35:02.400382: Last hour: net energy 2.8kWh, import 2.8kWh, export 0.0kWh, car 0kWh, load 1.1kWh, net cost 61.4p, import 61.4p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 13:35:02.459026: Today's energy total net 16.6kWh, import 16.6kWh, export 0.0kWh, cost 449.73p, import 399.74p, export 0.0p, carbon 0.0kg 2026-08-14 13:35:02.459237: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 13:35:02.547476: Using weighted-bucket historical load forecast over 14 days 2026-08-14 13:35:02.575027: Today's load divergence 127.97%, in-day adjustment 135.36%, damping 0.95x, yesterday 146.81% today 126.57% blend 43.4% 2026-08-14 13:35:02.575110: Today's predicted so far 8.17kWh with 0.0kWh car/iBoost excluded, 6.73kWh import ignored, and 8.17kWh forecast extra. 2026-08-14 13:35:02.575142: Today's actual load so far 13.76kWh with 0.0kWh car/iBoost excluded, and 6.73kWh import ignored. 2026-08-14 13:35:02.618268: Inverter 0: Type SK Sunsynk 2026-08-14 13:35:02.618357: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 13:35:02.618527: Reserve min: 7%, battery_min: 7% 2026-08-14 13:35:02.618592: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 13:35:02.618818: Inverter 0 SoC: 4.28kW 27%, current charge rate 5000W, current discharge rate 5250W, current battery power -4545W, current battery voltage 51.2V, grid power -5370W, load power 374W, PV Power 0W 2026-08-14 13:35:02.618995: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:35:02.619100: Inverter 0 scheduled charge enable is True 2026-08-14 13:35:02.619139: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 13:35:02.619215: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 13:35:02.619318: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:35:02.619368: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:35:02.619408: Inverter 0 scheduled discharge enable is False 2026-08-14 13:35:02.619514: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:35:02.619546: Inverter 0 discharge windows currently [] 2026-08-14 13:35:02.619565: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:35:02.619581: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:35:02.619596: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:35:02.681177: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 13:35:02.681285: Plan was last updated on 2026-08-14 13:25:00+01:00 and is now 10.0 minutes old 2026-08-14 13:35:02.681514: Best charge window [ 14-08 13:00:00 - 14-08 15:00:00 @ 21.88p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 13:30:00 - 16-08 13:30:00 @ 15.98p 100% ] 2026-08-14 13:35:02.681556: Best export window [ ] 2026-08-14 13:35:02.682418: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 13:35:02.685524: Load divergence over 8.0 hours mean 335.82W, min 230.4W, max 852.6W, std dev 72.94W, divergence 10.86% 2026-08-14 13:35:02.710217: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 13:35:02.710344: LoadML is_calculating False 2026-08-14 13:35:02.710409: Creating pool of 12 processes to match your CPU count 2026-08-14 13:35:02.832090: predict base end_record 08-15 13:40:00, final soc 8.88kWh, metric 965.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 11:20:00, load 30.66kWh, PV 0.0kWh 2026-08-14 13:35:02.966177: Battery has 21.75 hours left - now at 4.28kWh 2026-08-14 13:35:03.012199: predict base10 end_record 08-15 13:40:00, final soc 7.59kWh, metric 952.85p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 07:05:00, load 31.48kWh, PV 0.0kWh 2026-08-14 13:35:03.096647: predict best10 end_record 08-15 13:40:00, final soc 1.77kWh, metric 853.49p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:55:00, load 31.48kWh, PV 0.0kWh 2026-08-14 13:35:03.211358: predict best end_record 08-15 13:40:00, final soc 1.9kWh, metric 835.96p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 30.66kWh, PV 0.0kWh 2026-08-14 13:35:03.211455: Saving plan best values to HA entities 2026-08-14 13:35:03.392909: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 13:35:03.399090: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 13:35:03.404821: Best charging limit SoC's [16.0, 11.0, 12.5, 16.0]kWh, export []kWh gives import battery 11.55kWh, house 4.58kWh, export 0.0kWh, metric 835.96p, metric10 853.49p 2026-08-14 13:35:03.478029: Marginal costs baseline metric (no standing charge): 785.9724 2026-08-14 13:35:03.749517: Marginal energy costs matrix computed: min=21.76 max=37.87 2026-08-14 13:35:03.827462: Rate array import [{'start': 815, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2260, 'rate': 'cheap', 'range': '(15.4p - 27.2p)'}] export [{'start': 815, 'end': 2260, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 13:35:03.827910: - Your estimated bill for today is £6.82 and tomorrow is £6.33 2026-08-14 13:35:03.827958: - Import rates are cheap (21.7p - 22.2p) for the next 2 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 13:35:03.827999: - The battery is currently at 27% and is charging to 69% for the next 1 and a half hours. 2026-08-14 13:35:03.828018: - For the next 48 hours there will be no solar generation. 2026-08-14 13:35:03.828041: - You will run out of battery in 16 hours. 2026-08-14 13:35:03.828062: 2026-08-14 13:35:03.877362: Plan calculation took 1.20 seconds 2026-08-14 13:35:03.881195: No high rate period found 2026-08-14 13:35:03.931912: Import threshold used for optimisation was 25.52p 2026-08-14 13:35:03.986461: Low import rate windows [0: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 1: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 2: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 3: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 4: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 5: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 6: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 7: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 8: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 9: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 10: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 11: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 12: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 13: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 14: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 15: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 16: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 17: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 18: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 19: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 20: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 21: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 22: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 23: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 24: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 25: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 26: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 27: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 28: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 29: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 30: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 31: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 32: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 33: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 34: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 35: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 36: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 37: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 38: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 39: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 40: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 41: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 42: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 43: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 44: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 45: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 46: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 47: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 48: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 49: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 50: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 51: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 52: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 53: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 54: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 55: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 56: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 57: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 58: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 59: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 60: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 61: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 62: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 63: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 64: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 65: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 66: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 67: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 68: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 69: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 70: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 71: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 72: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 73: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 74: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 75: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 76: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 77: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 78: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 79: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 80: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 81: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 82: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 83: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 84: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 85: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 86: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 87: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 88: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 89: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 90: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 91: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 92: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 93: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 94: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 95: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4] 2026-08-14 13:35:03.994296: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:00:00 2026-08-14 13:35:03.994406: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 27%, target 100% 2026-08-14 13:35:03.994594: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 13:35:03.994817: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:35:03.995089: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:35:03.995182: No export window planned 2026-08-14 13:35:03.995299: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 13:35:03.995335: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:35:03.995471: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:35:03.995595: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 13:35:03.995664: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 13:35:03.995742: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 13:35:03.995867: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.995914: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.995942: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.995974: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.996000: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.996024: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.996050: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.996095: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.996130: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.996160: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.996189: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.996219: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.996244: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.996300: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.996365: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.996402: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.996427: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.996451: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.996474: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.996497: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.996529: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:03.996550: Inverter 0 count register writes 0 2026-08-14 13:35:04.013553: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 13:35:04.013709: Recompute is saving previous plan... 2026-08-14 13:35:04.016897: Best charge window [ 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 100%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 100%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 100%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 100%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 100%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 100%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 100%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 100%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 100%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 100%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 100%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 100%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 100%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 100%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 100%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 100%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 100%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 100%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 100%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 100%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 100%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 100%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 100%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 100%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 100%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 100%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 100%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 100%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 100%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 100%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 100%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 100%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 100%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 100%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 100%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 100%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 100%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100% ] 2026-08-14 13:35:04.017009: Best export window [ ] 2026-08-14 13:35:04.017876: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 13:35:04.020709: Load divergence over 8.0 hours mean 335.82W, min 230.4W, max 852.6W, std dev 72.94W, divergence 10.86% 2026-08-14 13:35:04.036230: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 13:35:04.036333: LoadML is_calculating False 2026-08-14 13:35:04.036412: Creating pool of 12 processes to match your CPU count 2026-08-14 13:35:04.166117: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 13:35:04.171145: Optimise levels pass started at 2026-08-14 13:35:04 2026-08-14 13:35:04.171224: Optimise all windows, total charge 95 export 1 2026-08-14 13:35:05.149897: >> Region optimisation pass width 960 gives best_metric 1024.37p, best_cost 1031.86p, best_cycle 43.64kWh, best_import 31.75kWh 2026-08-14 13:35:05.839413: >> Region optimisation pass width 480 gives best_metric 1022.21p, best_cost 1031.3p, best_cycle 46.09kWh, best_import 31.93kWh 2026-08-14 13:35:06.364138: >> Region optimisation pass width 240 gives best_metric 1022.21p, best_cost 1031.3p, best_cycle 46.09kWh, best_import 31.93kWh 2026-08-14 13:35:07.483000: >> Region optimisation pass width 120 gives best_metric 1022.21p, best_cost 1031.3p, best_cycle 46.09kWh, best_import 31.93kWh 2026-08-14 13:35:07.483358: Calculated end_record as 08-15 14:00:00 based on best_price 22.02p, next_charge_start 08-14 14:00:00, max_windows 48 2026-08-14 13:35:07.483434: Optimise levels pass ended at 2026-08-14 13:35:07, duration 3.3 seconds tried 355 combinations 2026-08-14 13:35:07.483540: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1022.21p, best_keep 0kWh, best_cycle 46.09kWh, best_carbon 0kg, best_import 31.93kWh 2026-08-14 13:35:07.504367: Starting detailed optimisation end_record 08-15 14:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 15.4p with charge limits [12.5, 12.5, 12.5, 0, 12.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7.0, 7.0, 7.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 13:35:12.114557: Tweak plan optimisation started metric 764.69p, cost 776.13p 2026-08-14 13:35:12.441612: Tweak optimisation finished metric 764.69p, cost 776.13p, metric_keep 0kWh, cycle 19.51kWh, carbon 0kg, import 15.49kWh, changed 8 window(s) 2026-08-14 13:35:12.463416: Swap charge optimisation started metric 764.69p, cost 776.13p, min_improvement_swap 0.1p 2026-08-14 13:35:14.588175: Swap charge optimisation finished metric 764.69p, cost 776.13p 2026-08-14 13:35:14.674517: Pruned 1 dead plan slot(s) in 6 trial(s), nominal metric 761.73p -> 761.73p, plan now metric 764.7p, cost 776.13p, cycle 19.51kWh, import 15.49kWh 2026-08-14 13:35:14.684785: Raw charge windows [ 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100% ] reserve 1.12 2026-08-14 13:35:14.685330: Unclipped charge windows [ 14-08 13:30:00 - 14-08 15:00:00 @ 21.87p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:00:00 - 16-08 14:00:00 @ 15.69p 100% ] reserve 1.12 2026-08-14 13:35:14.685492: Unfiltered charge windows [ 14-08 13:30:00 - 14-08 15:00:00 @ 21.87p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:00:00 - 16-08 14:00:00 @ 15.69p 100% ] reserve 1.12 2026-08-14 13:35:14.685630: Filtered charge windows [ 14-08 13:30:00 - 14-08 15:00:00 @ 21.87p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:00:00 - 16-08 14:00:00 @ 15.69p 100% ] reserve 1.12 2026-08-14 13:35:14.718329: Previous plan best metric is 773.03 (cost 814.63) and new plan best metric is 764.69 (cost 776.13) 2026-08-14 13:35:14.718616: New plan metric is significantly better from previous plan, using new plan 2026-08-14 13:35:14.718668: Plan valid is now true after recompute was False 2026-08-14 13:35:14.745022: predict base end_record 08-15 14:00:00, final soc 10.43kWh, metric 994.61p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 11:20:00, load 30.86kWh, PV 0.0kWh 2026-08-14 13:35:14.857062: Battery has 21.75 hours left - now at 4.28kWh 2026-08-14 13:35:14.902028: predict base10 end_record 08-15 14:00:00, final soc 8.88kWh, metric 977.37p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 07:05:00, load 31.68kWh, PV 0.0kWh 2026-08-14 13:35:14.970575: predict best10 end_record 08-15 14:00:00, final soc 1.12kWh, metric 845.93p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:55:00, load 31.68kWh, PV 0.0kWh 2026-08-14 13:35:15.043657: predict best end_record 08-15 14:00:00, final soc 1.12kWh, metric 826.11p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 30.86kWh, PV 0.0kWh 2026-08-14 13:35:15.043751: Saving plan best values to HA entities 2026-08-14 13:35:15.184993: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 13:35:15.190093: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 13:35:15.195587: Best charging limit SoC's [16.0, 11.0, 12.5, 16.0]kWh, export []kWh gives import battery 10.61kWh, house 4.88kWh, export 0.0kWh, metric 826.11p, metric10 845.93p 2026-08-14 13:35:15.280025: Marginal costs baseline metric (no standing charge): 776.1313 2026-08-14 13:35:15.516263: Marginal energy costs matrix computed: min=21.76 max=37.87 2026-08-14 13:35:15.578899: Rate array import [{'start': 815, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2280, 'rate': 'cheap', 'range': '(15.4p - 27.2p)'}] export [{'start': 815, 'end': 2280, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 13:35:15.579254: - Your estimated bill for today is £6.82 and tomorrow is £6.85 2026-08-14 13:35:15.579291: - Import rates are cheap (21.7p - 22.2p) for the next 2 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 13:35:15.579309: - The battery is currently at 27% and is charging to 68% for the next 1 and a half hours. 2026-08-14 13:35:15.579324: - For the next 48 hours there will be no solar generation. 2026-08-14 13:35:15.579338: - You will run out of battery in 16 hours. 2026-08-14 13:35:15.579352: 2026-08-14 13:35:15.621692: Plan calculation took 11.61 seconds 2026-08-14 13:35:15.622227: Inverter 0: Type SK Sunsynk 2026-08-14 13:35:15.622287: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 13:35:15.622589: Reserve min: 7%, battery_min: 7% 2026-08-14 13:35:15.622694: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 13:35:15.623129: Inverter 0 SoC: 4.28kW 27%, current charge rate 5000W, current discharge rate 5250W, current battery power -4545W, current battery voltage 51.2V, grid power -5370W, load power 374W, PV Power 0W 2026-08-14 13:35:15.623432: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:35:15.623568: Inverter 0 scheduled charge enable is True 2026-08-14 13:35:15.623634: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 13:35:15.623760: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 13:35:15.623947: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:35:15.624003: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:35:15.624061: Inverter 0 scheduled discharge enable is False 2026-08-14 13:35:15.624234: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:35:15.624291: Inverter 0 discharge windows currently [] 2026-08-14 13:35:15.624332: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:35:15.624365: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:35:15.624403: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:35:15.675589: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:30:00 2026-08-14 13:35:15.675690: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 27%, target 100% 2026-08-14 13:35:15.675861: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 13:35:15.676042: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:35:15.676233: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:35:15.676326: No export window planned 2026-08-14 13:35:15.676463: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 13:35:15.676500: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:35:15.676644: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:35:15.676761: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 13:35:15.676805: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 13:35:15.676871: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 13:35:15.677022: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677070: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677104: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677147: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677199: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677251: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677303: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677381: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677429: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677479: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677528: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677577: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677624: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677668: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677765: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677804: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677854: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677896: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677941: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.677981: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.678049: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:35:15.678094: Inverter 0 count register writes 0 2026-08-14 13:35:15.696492: Total inverter register writes now 810 2026-08-14 13:35:15.728008: Info: Completed run status Charging 2026-08-14 13:35:15.734171: Info: record_status Charging target 27%-100.0% 2026-08-14 13:35:15.740655: Saved current settings to /config/predbat_config.json 2026-08-14 13:35:15.740976: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 13:35:58.849423: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:35:58.849716: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:35:58.849760: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:35:58.849941: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:35:58.849982: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:35:58.850004: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:35:58.850022: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:37:59.070900: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:37:59.071162: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:37:59.071204: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:37:59.071338: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:37:59.071376: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:37:59.071399: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:37:59.071417: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:39:59.291287: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:39:59.291600: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:39:59.291649: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:39:59.291862: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:39:59.291933: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:39:59.291955: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:39:59.291974: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:40:00.377338: --------------- PredBat - update at 2026-08-14 13:40:00+01:00 with clock skew 0 minutes, minutes now 820 2026-08-14 13:40:00.378185: Saved current settings to /config/predbat_config.json 2026-08-14 13:40:00.378355: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 120.0 minutes 2026-08-14 13:40:00.378518: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 13:40:00.378622: Autoupdate: Currently up to date 2026-08-14 13:40:00.396706: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 13:40:00.396839: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 13:40:00.397037: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 13:40:00.397549: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 13:40:00.397728: Predbat mode is set to Control charge & discharge 2026-08-14 13:40:00.563146: Found 21602 load_today datapoints going back 28 days 2026-08-14 13:40:00.563325: Using load_power data to fill gaps in load_today data 2026-08-14 13:40:01.343774: Processing 721 30-minute periods for power integration 2026-08-14 13:40:01.525866: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 13:40:01.525985: Car charging hold False, threshold 6.0kWh 2026-08-14 13:40:01.526025: Current data so far today: load 13.65kWh, import 17.5kWh, export 0.0kWh, PV 0kWh 2026-08-14 13:40:01.538749: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 13:40:01.539443: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 13:40:01.539507: Standing charge is set to 49.98p 2026-08-14 13:40:01.592020: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 13:40:01.592155: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 13:40:01.592364: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 185.0 minutes 2026-08-14 13:40:01.592758: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 185.0 minutes 2026-08-14 13:40:01.599232: Loaded 95 datapoints of futurerate analysis 2026-08-14 13:40:01.679185: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61'] 2026-08-14 13:40:01.725642: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 13:40:01.730233: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 13:40:01.730631: Import rates: min 14.97p, max 53.39p, average 27.0p 2026-08-14 13:40:01.767350: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 13:40:01.767453: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 13:40:01.768578: High export rate found rates in range 99p to -99p 2026-08-14 13:40:01.846527: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 13:40:01.846660: Car 0 charging is not planned as it is not plugged in 2026-08-14 13:40:01.863741: Battery level now 4.28kWh, -1hr ago 2.08kWh, at midnight 2.43kWh, battery value change in the last hour 28.29p, change today 23.77p, rate_forward 12.86p 2026-08-14 13:40:01.864223: Last hour: net energy 3.6kWh, import 3.6kWh, export 0.0kWh, car 0kWh, load 1.0kWh, net cost 78.8p, import 78.8p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 13:40:01.925393: Today's energy total net 17.5kWh, import 17.5kWh, export 0.0kWh, cost 469.35p, import 419.37p, export 0.0p, carbon 0.0kg 2026-08-14 13:40:01.925597: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 13:40:02.019188: Using weighted-bucket historical load forecast over 14 days 2026-08-14 13:40:02.051997: Today's load divergence 127.87%, in-day adjustment 135.23%, damping 0.95x, yesterday 146.81% today 126.48% blend 43.06% 2026-08-14 13:40:02.052124: Today's predicted so far 8.19kWh with 0.0kWh car/iBoost excluded, 7.54kWh import ignored, and 8.19kWh forecast extra. 2026-08-14 13:40:02.052165: Today's actual load so far 13.75kWh with 0.0kWh car/iBoost excluded, and 7.54kWh import ignored. 2026-08-14 13:40:02.091246: Inverter 0: Type SK Sunsynk 2026-08-14 13:40:02.091335: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 13:40:02.091507: Reserve min: 7%, battery_min: 7% 2026-08-14 13:40:02.091576: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 13:40:02.091882: Inverter 0 SoC: 4.28kW 27%, current charge rate 5000W, current discharge rate 5250W, current battery power -4550W, current battery voltage 51.2V, grid power -5445W, load power 449W, PV Power 0W 2026-08-14 13:40:02.092043: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:40:02.092142: Inverter 0 scheduled charge enable is True 2026-08-14 13:40:02.092197: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 13:40:02.092288: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 13:40:02.092416: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:40:02.092451: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:40:02.092489: Inverter 0 scheduled discharge enable is False 2026-08-14 13:40:02.092607: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:40:02.092643: Inverter 0 discharge windows currently [] 2026-08-14 13:40:02.092667: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:40:02.092708: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:40:02.092730: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:40:02.159274: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 13:40:02.159383: Plan was last updated on 2026-08-14 13:35:00+01:00 and is now 5.0 minutes old 2026-08-14 13:40:02.159618: Best charge window [ 14-08 13:30:00 - 14-08 15:00:00 @ 21.87p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:00:00 - 16-08 14:00:00 @ 15.69p 100% ] 2026-08-14 13:40:02.159660: Best export window [ ] 2026-08-14 13:40:02.160431: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 13:40:02.163831: Load divergence over 8.0 hours mean 342.51W, min 240.6W, max 966.0W, std dev 86.73W, divergence 12.66% 2026-08-14 13:40:02.182992: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 13:40:02.183088: LoadML is_calculating False 2026-08-14 13:40:02.183157: Creating pool of 12 processes to match your CPU count 2026-08-14 13:40:02.310285: predict base end_record 08-15 14:05:00, final soc 10.82kWh, metric 1016.96p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:55:00, load 30.88kWh, PV 0.0kWh 2026-08-14 13:40:02.445883: Battery has 21.25 hours left - now at 4.28kWh 2026-08-14 13:40:02.519725: predict base10 end_record 08-15 14:05:00, final soc 9.2kWh, metric 1001.15p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 31.7kWh, PV 0.0kWh 2026-08-14 13:40:02.626467: predict best10 end_record 08-15 14:05:00, final soc 1.44kWh, metric 870.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:55:00, load 31.7kWh, PV 0.0kWh 2026-08-14 13:40:02.725085: predict best end_record 08-15 14:05:00, final soc 1.51kWh, metric 851.3p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 30.88kWh, PV 0.0kWh 2026-08-14 13:40:02.725198: Saving plan best values to HA entities 2026-08-14 13:40:02.909883: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 13:40:02.915608: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 13:40:02.921433: Best charging limit SoC's [16.0, 11.0, 12.5, 16.0]kWh, export []kWh gives import battery 10.99kWh, house 4.88kWh, export 0.0kWh, metric 851.3p, metric10 870.0p 2026-08-14 13:40:03.000177: Marginal costs baseline metric (no standing charge): 801.3182 2026-08-14 13:40:03.243625: Marginal energy costs matrix computed: min=21.78 max=38.21 2026-08-14 13:40:03.317555: Rate array import [{'start': 820, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2285, 'rate': 'cheap', 'range': '(15.2p - 27.2p)'}] export [{'start': 820, 'end': 2285, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 13:40:03.318109: - Your estimated bill for today is £7.00 and tomorrow is £6.87 2026-08-14 13:40:03.318166: - Import rates are cheap (21.7p - 22.2p) for the next 2 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 13:40:03.318211: - The battery is currently at 27% and is charging to 68% for the next 1 and a quarter hours. 2026-08-14 13:40:03.318256: - For the next 48 hours there will be no solar generation. 2026-08-14 13:40:03.318285: - You will run out of battery in 16 hours. 2026-08-14 13:40:03.318318: 2026-08-14 13:40:03.363366: Plan calculation took 1.20 seconds 2026-08-14 13:40:03.367094: No high rate period found 2026-08-14 13:40:03.417279: Import threshold used for optimisation was 25.43p 2026-08-14 13:40:03.470064: Low import rate windows [0: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 1: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 2: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 3: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 4: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 5: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 6: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 7: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 8: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 9: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 10: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 11: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 12: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 13: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 14: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 15: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 16: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 17: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 18: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 19: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 20: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 21: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 22: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 23: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 24: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 25: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 26: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 27: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 28: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 29: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 30: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 31: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 32: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 33: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 34: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 35: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 36: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 37: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 38: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 39: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 40: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 41: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 42: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 43: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 44: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 45: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 46: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 47: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 48: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 49: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 50: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 51: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 52: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 53: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 54: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 55: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 56: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 57: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 58: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 59: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 60: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 61: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 62: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 63: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 64: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 65: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 66: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 67: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 68: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 69: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 70: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 71: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 72: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 73: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 74: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 75: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 76: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 77: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 78: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 79: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 80: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 81: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 82: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 83: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 84: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 85: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 86: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 87: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 88: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 89: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 90: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 91: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 92: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 93: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 94: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 95: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4] 2026-08-14 13:40:03.479078: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:30:00 2026-08-14 13:40:03.479241: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 27%, target 100% 2026-08-14 13:40:03.479489: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 13:40:03.479807: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:40:03.480189: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:40:03.480333: No export window planned 2026-08-14 13:40:03.480490: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 13:40:03.480526: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:40:03.480665: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:40:03.480876: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 13:40:03.481014: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 13:40:03.481118: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 13:40:03.481325: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.481402: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.481472: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.481531: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.481576: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.481604: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.481632: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.481713: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.481779: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.481836: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.481900: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.481958: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.482015: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.482065: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.482187: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.482260: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.482320: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.482376: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.482423: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.482450: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.482474: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:40:03.482500: Inverter 0 count register writes 0 2026-08-14 13:40:03.503253: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 13:40:03.509707: Total inverter register writes now 810 2026-08-14 13:40:03.544896: Info: Completed run status Charging 2026-08-14 13:40:03.553589: Info: record_status Charging target 27%-100.0% 2026-08-14 13:40:03.562127: Saved current settings to /config/predbat_config.json 2026-08-14 13:40:03.562465: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 13:40:43.674263: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:40:43.674519: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:40:43.674554: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:40:43.674684: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:40:43.674718: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:40:43.674735: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:40:43.674750: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:42:43.899707: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:42:43.899977: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:42:43.900026: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:42:43.900181: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:42:43.900221: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:42:43.900240: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:42:43.900254: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:42:54.343991: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 13:42:55.369261: Processing 1345 30-minute periods for power integration 2026-08-14 13:42:55.487522: ML Component: Car charging hold False, car energy reported load False 2026-08-14 13:42:55.592434: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 13:42:55.700491: ML Temperature data points: 49581 2026-08-14 13:42:55.995706: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 13:42:56.034522: ML Component: Data fetch completed, load data age 56.0 days, 16141 data points 2026-08-14 13:42:56.034660: ML Component: No training needed, model age is 1.42 hours 2026-08-14 13:42:56.034756: ML Component: Generating predictions load data age 56.0 days, 16141 data points 2026-08-14 13:42:56.182697: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.046 max_dow {0: 0.10014999996256083, 1: 0.10541562554407864, 2: 0.11911562483031304, 3: 0.12494687463529408, 4: 0.17094062535744162, 5: 0.1007093750283122, 6: 0.10970937514957041} 2026-08-14 13:42:56.677741: ML Component: Generated 576 predictions (total 39.35 kWh over 48h) 2026-08-14 13:42:56.718172: ML Component: Prediction cycle completed 2026-08-14 13:42:56.833128: ML Component: Saved 16141 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 13:44:44.322736: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:44:44.323193: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:44:44.323270: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:44:44.323554: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:44:44.323628: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:44:44.323665: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:44:44.323685: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:45:00.422934: --------------- PredBat - update at 2026-08-14 13:45:00+01:00 with clock skew 0 minutes, minutes now 825 2026-08-14 13:45:00.423862: Saved current settings to /config/predbat_config.json 2026-08-14 13:45:00.846279: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 13:45:00.846416: Autoupdate: Currently up to date 2026-08-14 13:45:00.865105: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 13:45:00.865255: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 13:45:00.865532: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 13:45:00.866174: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 13:45:00.866342: Predbat mode is set to Control charge & discharge 2026-08-14 13:45:01.030098: Found 21602 load_today datapoints going back 28 days 2026-08-14 13:45:01.030227: Using load_power data to fill gaps in load_today data 2026-08-14 13:45:01.765085: Processing 721 30-minute periods for power integration 2026-08-14 13:45:01.955697: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 13:45:01.955829: Car charging hold False, threshold 6.0kWh 2026-08-14 13:45:01.955895: Current data so far today: load 13.7kWh, import 17.5kWh, export 0.0kWh, PV 0kWh 2026-08-14 13:45:01.972447: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 13:45:01.973343: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 13:45:01.973422: Standing charge is set to 49.98p 2026-08-14 13:45:02.022292: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 13:45:02.022413: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 13:45:02.022697: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 190.0 minutes 2026-08-14 13:45:02.023172: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 190.0 minutes 2026-08-14 13:45:02.028883: Loaded 95 datapoints of futurerate analysis 2026-08-14 13:45:02.109524: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61'] 2026-08-14 13:45:02.167926: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 13:45:02.173748: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 13:45:02.174112: Import rates: min 14.97p, max 53.39p, average 26.99p 2026-08-14 13:45:02.213604: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 13:45:02.213717: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 13:45:02.214954: High export rate found rates in range 99p to -99p 2026-08-14 13:45:02.301057: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 13:45:02.301211: Car 0 charging is not planned as it is not plugged in 2026-08-14 13:45:02.313626: Battery level now 4.28kWh, -1hr ago 2.08kWh, at midnight 2.43kWh, battery value change in the last hour 28.29p, change today 23.77p, rate_forward 12.86p 2026-08-14 13:45:02.313918: Last hour: net energy 3.5kWh, import 3.5kWh, export 0.0kWh, car 0kWh, load 0.9kWh, net cost 76.59p, import 76.59p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 13:45:02.357755: Today's energy total net 17.5kWh, import 17.5kWh, export 0.0kWh, cost 469.35p, import 419.37p, export 0.0p, carbon 0.0kg 2026-08-14 13:45:02.357875: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 13:45:02.445897: Using weighted-bucket historical load forecast over 14 days 2026-08-14 13:45:02.473698: Today's load divergence 127.76%, in-day adjustment 135.1%, damping 0.95x, yesterday 146.81% today 126.37% blend 42.71% 2026-08-14 13:45:02.473777: Today's predicted so far 8.22kWh with 0.0kWh car/iBoost excluded, 7.58kWh import ignored, and 8.22kWh forecast extra. 2026-08-14 13:45:02.473809: Today's actual load so far 13.75kWh with 0.0kWh car/iBoost excluded, and 7.58kWh import ignored. 2026-08-14 13:45:02.513755: Inverter 0: Type SK Sunsynk 2026-08-14 13:45:02.513834: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 13:45:02.514017: Reserve min: 7%, battery_min: 7% 2026-08-14 13:45:02.514085: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 13:45:02.514304: Inverter 0 SoC: 4.62kW 29%, current charge rate 5000W, current discharge rate 5250W, current battery power -4550W, current battery voltage 51.2V, grid power -5348W, load power 352W, PV Power 0W 2026-08-14 13:45:02.514434: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:45:02.514535: Inverter 0 scheduled charge enable is True 2026-08-14 13:45:02.514572: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 13:45:02.514651: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 13:45:02.514741: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:45:02.514771: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:45:02.514801: Inverter 0 scheduled discharge enable is False 2026-08-14 13:45:02.514899: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:45:02.514929: Inverter 0 discharge windows currently [] 2026-08-14 13:45:02.514947: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:45:02.514962: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:45:02.514976: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:45:02.564089: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 13:45:02.564180: Plan was last updated on 2026-08-14 13:35:00+01:00 and is now 10.0 minutes old 2026-08-14 13:45:02.564409: Best charge window [ 14-08 13:30:00 - 14-08 15:00:00 @ 21.87p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:00:00 - 16-08 14:00:00 @ 15.69p 100% ] 2026-08-14 13:45:02.564447: Best export window [ ] 2026-08-14 13:45:02.565157: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 13:45:02.567616: Load divergence over 8.0 hours mean 347.67W, min 220.2W, max 1090.2W, std dev 100.8W, divergence 14.5% 2026-08-14 13:45:02.583598: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 13:45:02.583682: LoadML is_calculating False 2026-08-14 13:45:02.583738: Creating pool of 12 processes to match your CPU count 2026-08-14 13:45:02.712852: predict base end_record 08-15 14:10:00, final soc 11.21kWh, metric 1013.94p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:50:00, load 30.89kWh, PV 0.0kWh 2026-08-14 13:45:02.841666: Battery has 21.08 hours left - now at 4.62kWh 2026-08-14 13:45:02.882464: predict base10 end_record 08-15 14:10:00, final soc 9.53kWh, metric 997.41p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 31.71kWh, PV 0.0kWh 2026-08-14 13:45:02.952861: predict best10 end_record 08-15 14:10:00, final soc 1.77kWh, metric 866.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:55:00, load 31.71kWh, PV 0.0kWh 2026-08-14 13:45:03.041908: predict best end_record 08-15 14:10:00, final soc 1.9kWh, metric 848.71p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 30.89kWh, PV 0.0kWh 2026-08-14 13:45:03.041996: Saving plan best values to HA entities 2026-08-14 13:45:03.197181: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 13:45:03.204162: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 13:45:03.209797: Best charging limit SoC's [16.0, 11.0, 12.5, 16.0]kWh, export []kWh gives import battery 10.99kWh, house 4.9kWh, export 0.0kWh, metric 848.71p, metric10 866.27p 2026-08-14 13:45:03.280811: Marginal costs baseline metric (no standing charge): 798.7271 2026-08-14 13:45:03.537620: Marginal energy costs matrix computed: min=21.8 max=38.52 2026-08-14 13:45:03.602758: Rate array import [{'start': 825, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2290, 'rate': 'cheap', 'range': '(15.2p - 27.2p)'}] export [{'start': 825, 'end': 2290, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 13:45:03.603166: - Your estimated bill for today is £6.90 and tomorrow is £6.88 2026-08-14 13:45:03.603207: - Import rates are cheap (21.7p - 22.2p) for the next 2 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 13:45:03.603225: - The battery is currently at 29% and is charging to 68% for the next 1 and a quarter hours. 2026-08-14 13:45:03.603240: - For the next 48 hours there will be no solar generation. 2026-08-14 13:45:03.603253: - You will run out of battery in 16 hours. 2026-08-14 13:45:03.603267: 2026-08-14 13:45:03.648559: Plan calculation took 1.08 seconds 2026-08-14 13:45:03.651481: No high rate period found 2026-08-14 13:45:03.696250: Import threshold used for optimisation was 25.43p 2026-08-14 13:45:03.742899: Low import rate windows [0: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 1: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 2: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 3: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 4: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 5: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 6: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 7: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 8: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 9: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 10: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 11: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 12: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 13: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 14: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 15: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 16: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 17: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 18: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 19: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 20: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 21: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 22: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 23: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 24: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 25: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 26: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 27: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 28: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 29: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 30: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 31: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 32: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 33: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 34: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 35: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 36: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 37: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 38: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 39: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 40: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 41: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 42: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 43: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 44: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 45: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 46: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 47: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 48: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 49: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 50: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 51: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 52: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 53: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 54: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 55: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 56: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 57: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 58: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 59: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 60: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 61: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 62: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 63: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 64: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 65: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 66: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 67: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 68: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 69: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 70: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 71: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 72: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 73: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 74: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 75: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 76: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 77: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 78: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 79: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 80: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 81: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 82: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 83: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 84: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 85: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 86: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 87: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 88: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 89: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 90: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 91: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 92: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 93: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 94: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 95: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4] 2026-08-14 13:45:03.750253: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:30:00 2026-08-14 13:45:03.750377: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 29%, target 100% 2026-08-14 13:45:03.750593: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 13:45:03.750815: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:45:03.751044: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:45:03.751128: No export window planned 2026-08-14 13:45:03.751220: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 13:45:03.751244: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:45:03.751381: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:45:03.751487: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 13:45:03.751554: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 13:45:03.751638: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 13:45:03.751772: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.751811: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.751835: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.751860: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.751879: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.751899: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.751922: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.751958: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.751981: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.752002: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.752025: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.752051: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.752072: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.752092: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.752147: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.752170: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.752196: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.752216: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.752235: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.752255: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.752274: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:03.752290: Inverter 0 count register writes 0 2026-08-14 13:45:03.767317: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 13:45:03.767497: Recompute is saving previous plan... 2026-08-14 13:45:03.770324: Best charge window [ 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 100%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 100%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 100%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 100%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 100%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 100%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 100%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 100%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 100%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 100%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 100%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 100%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 100%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 100%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 100%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 100%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 100%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 100%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 100%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 100%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 100%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 100%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 100%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 100%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 100%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 100%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 100%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 100%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 100%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 100%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 100%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 100%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 100%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 100%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 100%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 100%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 100%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100% ] 2026-08-14 13:45:03.770400: Best export window [ ] 2026-08-14 13:45:03.771050: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 13:45:03.773583: Load divergence over 8.0 hours mean 347.67W, min 220.2W, max 1090.2W, std dev 100.8W, divergence 14.5% 2026-08-14 13:45:03.789471: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 13:45:03.789620: LoadML is_calculating False 2026-08-14 13:45:03.789681: Creating pool of 12 processes to match your CPU count 2026-08-14 13:45:03.866639: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 13:45:03.868392: Optimise levels pass started at 2026-08-14 13:45:03 2026-08-14 13:45:03.868458: Optimise all windows, total charge 95 export 1 2026-08-14 13:45:04.801434: >> Region optimisation pass width 960 gives best_metric 1034.62p, best_cost 1042.1p, best_cycle 42.99kWh, best_import 31.33kWh 2026-08-14 13:45:05.255763: >> Region optimisation pass width 480 gives best_metric 1034.62p, best_cost 1042.1p, best_cycle 42.99kWh, best_import 31.33kWh 2026-08-14 13:45:05.737982: >> Region optimisation pass width 240 gives best_metric 1034.62p, best_cost 1042.1p, best_cycle 42.99kWh, best_import 31.33kWh 2026-08-14 13:45:06.773097: >> Region optimisation pass width 120 gives best_metric 1034.62p, best_cost 1042.1p, best_cycle 42.99kWh, best_import 31.33kWh 2026-08-14 13:45:06.773800: Calculated end_record as 08-15 14:00:00 based on best_price 22.02p, next_charge_start 08-14 14:00:00, max_windows 48 2026-08-14 13:45:06.773869: Optimise levels pass ended at 2026-08-14 13:45:06, duration 2.9 seconds tried 318 combinations 2026-08-14 13:45:06.773950: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1034.62p, best_keep 0kWh, best_cycle 42.99kWh, best_carbon 0kg, best_import 31.33kWh 2026-08-14 13:45:06.790380: Starting detailed optimisation end_record 08-15 14:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 15.4p with charge limits [16.0, 16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 13:45:10.955573: Tweak plan optimisation started metric 773.19p, cost 784.65p 2026-08-14 13:45:11.283939: Tweak optimisation finished metric 773.19p, cost 784.65p, metric_keep 0kWh, cycle 19.16kWh, carbon 0kg, import 14.97kWh, changed 8 window(s) 2026-08-14 13:45:11.300430: Swap charge optimisation started metric 773.19p, cost 784.65p, min_improvement_swap 0.1p 2026-08-14 13:45:13.344632: Swap charge optimisation finished metric 773.19p, cost 784.65p 2026-08-14 13:45:13.428689: Pruned 1 dead plan slot(s) in 6 trial(s), nominal metric 770.25p -> 770.25p, plan now metric 773.19p, cost 784.65p, cycle 19.16kWh, import 14.97kWh 2026-08-14 13:45:13.440942: Raw charge windows [ 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100% ] reserve 1.12 2026-08-14 13:45:13.441592: Unclipped charge windows [ 14-08 13:30:00 - 14-08 15:00:00 @ 21.87p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:00:00 - 16-08 14:00:00 @ 15.69p 100% ] reserve 1.12 2026-08-14 13:45:13.441789: Unfiltered charge windows [ 14-08 13:30:00 - 14-08 15:00:00 @ 21.87p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:00:00 - 16-08 14:00:00 @ 15.69p 100% ] reserve 1.12 2026-08-14 13:45:13.441959: Filtered charge windows [ 14-08 13:30:00 - 14-08 15:00:00 @ 21.87p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:00:00 - 16-08 14:00:00 @ 15.69p 100% ] reserve 1.12 2026-08-14 13:45:13.479839: Previous plan best metric is 773.3 (cost 784.77) and new plan best metric is 773.19 (cost 784.65) 2026-08-14 13:45:13.480077: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 13:45:13.480239: Plan valid is now true after recompute was False 2026-08-14 13:45:13.511355: predict base end_record 08-15 14:00:00, final soc 10.43kWh, metric 999.99p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:50:00, load 30.8kWh, PV 0.0kWh 2026-08-14 13:45:13.636758: Battery has 21.08 hours left - now at 4.62kWh 2026-08-14 13:45:13.682083: predict base10 end_record 08-15 14:00:00, final soc 8.88kWh, metric 985.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 31.62kWh, PV 0.0kWh 2026-08-14 13:45:13.763723: predict best10 end_record 08-15 14:00:00, final soc 1.12kWh, metric 854.37p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:55:00, load 31.62kWh, PV 0.0kWh 2026-08-14 13:45:13.853862: predict best end_record 08-15 14:00:00, final soc 1.12kWh, metric 834.76p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 30.8kWh, PV 0.0kWh 2026-08-14 13:45:13.853959: Saving plan best values to HA entities 2026-08-14 13:45:14.015635: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 13:45:14.021121: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 13:45:14.026412: Best charging limit SoC's [16.0, 11.0, 12.5, 16.0]kWh, export []kWh gives import battery 10.07kWh, house 4.9kWh, export 0.0kWh, metric 834.76p, metric10 854.37p 2026-08-14 13:45:14.098879: Marginal costs baseline metric (no standing charge): 784.7776 2026-08-14 13:45:14.391426: Marginal energy costs matrix computed: min=21.8 max=38.52 2026-08-14 13:45:14.477043: Rate array import [{'start': 825, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2280, 'rate': 'cheap', 'range': '(15.4p - 27.2p)'}] export [{'start': 825, 'end': 2280, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 13:45:14.477665: - Your estimated bill for today is £6.90 and tomorrow is £6.88 2026-08-14 13:45:14.477719: - Import rates are cheap (21.7p - 22.2p) for the next 2 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 13:45:14.477749: - The battery is currently at 29% and is charging to 68% for the next 1 and a quarter hours. 2026-08-14 13:45:14.477786: - For the next 48 hours there will be no solar generation. 2026-08-14 13:45:14.477817: - You will run out of battery in 16 hours. 2026-08-14 13:45:14.477836: 2026-08-14 13:45:14.525311: Plan calculation took 10.76 seconds 2026-08-14 13:45:14.525791: Inverter 0: Type SK Sunsynk 2026-08-14 13:45:14.525868: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 13:45:14.526150: Reserve min: 7%, battery_min: 7% 2026-08-14 13:45:14.526274: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 13:45:14.526676: Inverter 0 SoC: 4.98kW 31%, current charge rate 5000W, current discharge rate 5250W, current battery power -4550W, current battery voltage 51.2V, grid power -5348W, load power 352W, PV Power 0W 2026-08-14 13:45:14.526923: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:45:14.527060: Inverter 0 scheduled charge enable is True 2026-08-14 13:45:14.527152: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 13:45:14.527333: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 13:45:14.527477: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:45:14.527536: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:45:14.527610: Inverter 0 scheduled discharge enable is False 2026-08-14 13:45:14.527743: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:45:14.527780: Inverter 0 discharge windows currently [] 2026-08-14 13:45:14.527809: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:45:14.527829: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:45:14.527846: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:45:14.593788: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:30:00 2026-08-14 13:45:14.593909: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 31%, target 100% 2026-08-14 13:45:14.594042: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 13:45:14.594208: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:45:14.594398: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:45:14.594491: No export window planned 2026-08-14 13:45:14.594652: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 13:45:14.594686: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:45:14.594822: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:45:14.594932: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 13:45:14.594976: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 13:45:14.595033: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 13:45:14.595211: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.595300: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.595399: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.595458: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.595533: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.595589: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.595650: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.595708: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.595739: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.595788: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.595847: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.595906: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.595963: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.596014: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.596137: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.596208: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.596268: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.596315: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.596367: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.596428: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.596484: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:45:14.596546: Inverter 0 count register writes 0 2026-08-14 13:45:14.623667: Total inverter register writes now 810 2026-08-14 13:45:14.665309: Info: Completed run status Charging 2026-08-14 13:45:14.672205: Info: record_status Charging target 31%-100.0% 2026-08-14 13:45:14.680880: Saved current settings to /config/predbat_config.json 2026-08-14 13:45:14.681270: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 13:45:58.804583: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:45:58.804856: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:45:58.804920: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:45:58.805133: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:45:58.805178: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:45:58.805200: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:45:58.805218: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:47:59.045852: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:47:59.046165: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:47:59.046212: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:47:59.046345: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:47:59.046384: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:47:59.046405: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:47:59.046423: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:49:59.275435: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:49:59.275727: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:49:59.275777: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:49:59.275928: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:49:59.275968: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:49:59.275995: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:49:59.276013: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:50:00.358819: --------------- PredBat - update at 2026-08-14 13:50:00+01:00 with clock skew 0 minutes, minutes now 830 2026-08-14 13:50:00.359579: Saved current settings to /config/predbat_config.json 2026-08-14 13:50:00.359712: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 5.0 minutes 2026-08-14 13:50:00.359776: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 13:50:00.359888: Autoupdate: Currently up to date 2026-08-14 13:50:00.382488: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 13:50:00.382621: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 13:50:00.382799: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 13:50:00.383320: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 13:50:00.383466: Predbat mode is set to Control charge & discharge 2026-08-14 13:50:00.592861: Found 21602 load_today datapoints going back 28 days 2026-08-14 13:50:00.593040: Using load_power data to fill gaps in load_today data 2026-08-14 13:50:01.447084: Processing 721 30-minute periods for power integration 2026-08-14 13:50:01.639694: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 13:50:01.640178: Car charging hold False, threshold 6.0kWh 2026-08-14 13:50:01.640242: Current data so far today: load 13.6kWh, import 18.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 13:50:01.656276: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 13:50:01.657251: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 13:50:01.657353: Standing charge is set to 49.98p 2026-08-14 13:50:01.704126: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 13:50:01.704228: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 13:50:01.704510: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 195.0 minutes 2026-08-14 13:50:01.704989: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 195.0 minutes 2026-08-14 13:50:01.710929: Loaded 95 datapoints of futurerate analysis 2026-08-14 13:50:01.812107: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61'] 2026-08-14 13:50:01.872154: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 13:50:01.877998: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 13:50:01.878527: Import rates: min 14.97p, max 53.39p, average 26.98p 2026-08-14 13:50:01.922172: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 13:50:01.922298: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 13:50:01.923649: High export rate found rates in range 99p to -99p 2026-08-14 13:50:02.020657: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 13:50:02.020811: Car 0 charging is not planned as it is not plugged in 2026-08-14 13:50:02.035483: Battery level now 4.62kWh, -1hr ago 2.08kWh, at midnight 2.43kWh, battery value change in the last hour 32.62p, change today 28.09p, rate_forward 12.86p 2026-08-14 13:50:02.035911: Last hour: net energy 4.25kWh, import 4.25kWh, export 0.0kWh, car 0kWh, load 0.65kWh, net cost 92.85p, import 92.85p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 13:50:02.090211: Today's energy total net 18.4kWh, import 18.4kWh, export 0.0kWh, cost 488.94p, import 438.96p, export 0.0p, carbon 0.0kg 2026-08-14 13:50:02.090355: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 13:50:02.181440: Using weighted-bucket historical load forecast over 14 days 2026-08-14 13:50:02.209469: Today's load divergence 127.13%, in-day adjustment 134.68%, damping 0.95x, yesterday 146.81% today 125.77% blend 42.36% 2026-08-14 13:50:02.209557: Today's predicted so far 8.26kWh with 0.0kWh car/iBoost excluded, 8.48kWh import ignored, and 8.26kWh forecast extra. 2026-08-14 13:50:02.209590: Today's actual load so far 13.61kWh with 0.0kWh car/iBoost excluded, and 8.48kWh import ignored. 2026-08-14 13:50:02.245280: Inverter 0: Type SK Sunsynk 2026-08-14 13:50:02.245367: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 13:50:02.245561: Reserve min: 7%, battery_min: 7% 2026-08-14 13:50:02.245633: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 13:50:02.245912: Inverter 0 SoC: 4.98kW 31%, current charge rate 5000W, current discharge rate 5250W, current battery power -4551W, current battery voltage 51.2V, grid power -5397W, load power 400W, PV Power 0W 2026-08-14 13:50:02.246066: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:50:02.246150: Inverter 0 scheduled charge enable is True 2026-08-14 13:50:02.246193: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 13:50:02.246280: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 13:50:02.246411: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:50:02.246452: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:50:02.246489: Inverter 0 scheduled discharge enable is False 2026-08-14 13:50:02.246610: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:50:02.246647: Inverter 0 discharge windows currently [] 2026-08-14 13:50:02.246670: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:50:02.246688: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:50:02.246705: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:50:02.308759: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 13:50:02.308867: Plan was last updated on 2026-08-14 13:45:00+01:00 and is now 5.0 minutes old 2026-08-14 13:50:02.309110: Best charge window [ 14-08 13:30:00 - 14-08 15:00:00 @ 21.87p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:00:00 - 16-08 14:00:00 @ 15.69p 100% ] 2026-08-14 13:50:02.309158: Best export window [ ] 2026-08-14 13:50:02.310022: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 13:50:02.313147: Load divergence over 8.0 hours mean 349.06W, min 235.2W, max 1001.4W, std dev 92.8W, divergence 13.29% 2026-08-14 13:50:02.332469: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 13:50:02.332587: LoadML is_calculating False 2026-08-14 13:50:02.332653: Creating pool of 12 processes to match your CPU count 2026-08-14 13:50:02.455780: predict base end_record 08-15 14:05:00, final soc 10.82kWh, metric 1016.31p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:50:00, load 30.67kWh, PV 0.0kWh 2026-08-14 13:50:02.610383: Battery has 21.0 hours left - now at 4.98kWh 2026-08-14 13:50:02.656365: predict base10 end_record 08-15 14:05:00, final soc 9.2kWh, metric 1000.76p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:35:00, load 31.48kWh, PV 0.0kWh 2026-08-14 13:50:02.733366: predict best10 end_record 08-15 14:05:00, final soc 1.44kWh, metric 869.58p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:55:00, load 31.48kWh, PV 0.0kWh 2026-08-14 13:50:02.816901: predict best end_record 08-15 14:05:00, final soc 1.51kWh, metric 851.15p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 30.67kWh, PV 0.0kWh 2026-08-14 13:50:02.816999: Saving plan best values to HA entities 2026-08-14 13:50:02.973846: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 13:50:02.978705: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 13:50:02.983290: Best charging limit SoC's [16.0, 11.0, 12.5, 16.0]kWh, export []kWh gives import battery 10.08kWh, house 4.89kWh, export 0.0kWh, metric 851.15p, metric10 869.58p 2026-08-14 13:50:03.056076: Marginal costs baseline metric (no standing charge): 801.1714 2026-08-14 13:50:03.294152: Marginal energy costs matrix computed: min=21.82 max=38.79 2026-08-14 13:50:03.360024: Rate array import [{'start': 830, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2285, 'rate': 'cheap', 'range': '(15.2p - 27.2p)'}] export [{'start': 830, 'end': 2285, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 13:50:03.360415: - Your estimated bill for today is £7.00 and tomorrow is £6.88 2026-08-14 13:50:03.360454: - Import rates are cheap (21.7p - 22.2p) for the next 2 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 13:50:03.360473: - The battery is currently at 31% and is charging to 68% for the next 1 and a quarter hours. 2026-08-14 13:50:03.360489: - For the next 48 hours there will be no solar generation. 2026-08-14 13:50:03.360503: - You will run out of battery in 16 hours. 2026-08-14 13:50:03.360517: 2026-08-14 13:50:03.404273: Plan calculation took 1.10 seconds 2026-08-14 13:50:03.409586: No high rate period found 2026-08-14 13:50:03.460334: Import threshold used for optimisation was 25.52p 2026-08-14 13:50:03.508788: Low import rate windows [0: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 1: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 2: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 3: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 4: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 5: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 6: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 7: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 8: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 9: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 10: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 11: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 12: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 13: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 14: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 15: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 16: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 17: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 18: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 19: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 20: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 21: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 22: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 23: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 24: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 25: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 26: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 27: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 28: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 29: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 30: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 31: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 32: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 33: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 34: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 35: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 36: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 37: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 38: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 39: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 40: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 41: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 42: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 43: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 44: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 45: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 46: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 47: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 48: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 49: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 50: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 51: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 52: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 53: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 54: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 55: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 56: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 57: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 58: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 59: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 60: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 61: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 62: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 63: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 64: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 65: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 66: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 67: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 68: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 69: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 70: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 71: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 72: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 73: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 74: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 75: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 76: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 77: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 78: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 79: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 80: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 81: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 82: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 83: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 84: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 85: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 86: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 87: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 88: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 89: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 90: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 91: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 92: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 93: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 94: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 95: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4] 2026-08-14 13:50:03.516043: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:30:00 2026-08-14 13:50:03.516141: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 31%, target 100% 2026-08-14 13:50:03.516285: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 13:50:03.516471: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:50:03.516680: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:50:03.516757: No export window planned 2026-08-14 13:50:03.516848: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 13:50:03.516877: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:50:03.517045: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:50:03.517153: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 13:50:03.517183: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 13:50:03.517228: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 13:50:03.517317: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517355: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517379: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517414: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517448: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517470: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517490: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517544: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517576: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517598: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517621: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517642: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517662: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517685: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517735: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517764: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517785: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517804: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517822: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517841: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517863: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:50:03.517880: Inverter 0 count register writes 0 2026-08-14 13:50:03.532984: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 13:50:03.537892: Total inverter register writes now 810 2026-08-14 13:50:03.567768: Info: Completed run status Charging 2026-08-14 13:50:03.573815: Info: record_status Charging target 31%-100.0% 2026-08-14 13:50:03.580716: Saved current settings to /config/predbat_config.json 2026-08-14 13:50:03.581057: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 13:50:43.687896: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:50:43.688178: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:50:43.688240: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:50:43.688481: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:50:43.688540: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:50:43.688565: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:50:43.688584: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:52:43.918221: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:52:43.918510: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:52:43.918555: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:52:43.918692: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:52:43.918731: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:52:43.918753: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:52:43.918775: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:54:44.147447: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:54:44.147730: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:54:44.147795: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:54:44.147930: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:54:44.147970: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:54:44.147992: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:54:44.148010: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:55:00.247113: --------------- PredBat - update at 2026-08-14 13:55:00+01:00 with clock skew 0 minutes, minutes now 835 2026-08-14 13:55:00.248373: Saved current settings to /config/predbat_config.json 2026-08-14 13:55:00.248502: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 10.0 minutes 2026-08-14 13:55:00.248571: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 13:55:00.248657: Autoupdate: Currently up to date 2026-08-14 13:55:00.267804: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 13:55:00.267956: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 13:55:00.268133: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 13:55:00.268661: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 13:55:00.268793: Predbat mode is set to Control charge & discharge 2026-08-14 13:55:00.461209: Found 21602 load_today datapoints going back 28 days 2026-08-14 13:55:00.461383: Using load_power data to fill gaps in load_today data 2026-08-14 13:55:01.129480: Processing 721 30-minute periods for power integration 2026-08-14 13:55:01.293316: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 13:55:01.293445: Car charging hold False, threshold 6.0kWh 2026-08-14 13:55:01.293483: Current data so far today: load 13.6kWh, import 18.4kWh, export 0.0kWh, PV 0kWh 2026-08-14 13:55:01.308063: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 13:55:01.309029: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 13:55:01.309120: Standing charge is set to 49.98p 2026-08-14 13:55:01.365288: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 13:55:01.365421: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 13:55:01.365632: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 200.0 minutes 2026-08-14 13:55:01.366017: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 200.0 minutes 2026-08-14 13:55:01.371981: Loaded 95 datapoints of futurerate analysis 2026-08-14 13:55:01.467809: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61'] 2026-08-14 13:55:01.518571: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 13:55:01.524178: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 13:55:01.524624: Import rates: min 14.97p, max 53.39p, average 26.96p 2026-08-14 13:55:01.562345: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 13:55:01.562454: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 13:55:01.563559: High export rate found rates in range 99p to -99p 2026-08-14 13:55:01.643459: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 13:55:01.643577: Car 0 charging is not planned as it is not plugged in 2026-08-14 13:55:01.656161: Battery level now 4.98kWh, -1hr ago 2.08kWh, at midnight 2.43kWh, battery value change in the last hour 37.24p, change today 32.72p, rate_forward 12.86p 2026-08-14 13:55:01.656592: Last hour: net energy 4.1kWh, import 4.1kWh, export 0.0kWh, car 0kWh, load 0.5kWh, net cost 89.52p, import 89.52p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 13:55:01.712257: Today's energy total net 18.4kWh, import 18.4kWh, export 0.0kWh, cost 488.94p, import 438.96p, export 0.0p, carbon 0.0kg 2026-08-14 13:55:01.712459: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 13:55:01.802569: Using weighted-bucket historical load forecast over 14 days 2026-08-14 13:55:01.831520: Today's load divergence 126.86%, in-day adjustment 134.46%, damping 0.95x, yesterday 146.81% today 125.52% blend 42.01% 2026-08-14 13:55:01.831632: Today's predicted so far 8.28kWh with 0.0kWh car/iBoost excluded, 8.6kWh import ignored, and 8.28kWh forecast extra. 2026-08-14 13:55:01.831666: Today's actual load so far 13.57kWh with 0.0kWh car/iBoost excluded, and 8.6kWh import ignored. 2026-08-14 13:55:01.869745: Inverter 0: Type SK Sunsynk 2026-08-14 13:55:01.869838: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 13:55:01.870033: Reserve min: 7%, battery_min: 7% 2026-08-14 13:55:01.870111: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 13:55:01.870476: Inverter 0 SoC: 5.32kW 33%, current charge rate 5000W, current discharge rate 5250W, current battery power -4551W, current battery voltage 51.2V, grid power -5365W, load power 369W, PV Power 0W 2026-08-14 13:55:01.870681: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:55:01.870773: Inverter 0 scheduled charge enable is True 2026-08-14 13:55:01.870818: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 13:55:01.870904: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 13:55:01.871054: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:55:01.871091: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:55:01.871127: Inverter 0 scheduled discharge enable is False 2026-08-14 13:55:01.871245: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:55:01.871282: Inverter 0 discharge windows currently [] 2026-08-14 13:55:01.871305: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:55:01.871343: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:55:01.871363: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:55:01.939689: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 13:55:01.939791: Plan was last updated on 2026-08-14 13:45:00+01:00 and is now 10.0 minutes old 2026-08-14 13:55:01.940011: Best charge window [ 14-08 13:30:00 - 14-08 15:00:00 @ 21.87p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:00:00 - 16-08 14:00:00 @ 15.69p 100% ] 2026-08-14 13:55:01.940064: Best export window [ ] 2026-08-14 13:55:01.940802: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 13:55:01.944353: Load divergence over 8.0 hours mean 355.05W, min 247.2W, max 1000.8W, std dev 106.05W, divergence 14.94% 2026-08-14 13:55:01.965887: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 13:55:01.966017: LoadML is_calculating False 2026-08-14 13:55:01.966083: Creating pool of 12 processes to match your CPU count 2026-08-14 13:55:02.090059: predict base end_record 08-15 14:10:00, final soc 11.21kWh, metric 1013.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:45:00, load 30.64kWh, PV 0.0kWh 2026-08-14 13:55:02.232561: Battery has 20.83 hours left - now at 5.32kWh 2026-08-14 13:55:02.284554: predict base10 end_record 08-15 14:10:00, final soc 9.53kWh, metric 997.11p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:35:00, load 31.45kWh, PV 0.0kWh 2026-08-14 13:55:02.362056: predict best10 end_record 08-15 14:10:00, final soc 1.77kWh, metric 865.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:55:00, load 31.45kWh, PV 0.0kWh 2026-08-14 13:55:02.447515: predict best end_record 08-15 14:10:00, final soc 1.9kWh, metric 848.58p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 30.64kWh, PV 0.0kWh 2026-08-14 13:55:02.447596: Saving plan best values to HA entities 2026-08-14 13:55:02.607953: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 13:55:02.613379: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 13:55:02.618559: Best charging limit SoC's [16.0, 11.0, 12.5, 16.0]kWh, export []kWh gives import battery 10.1kWh, house 4.88kWh, export 0.0kWh, metric 848.58p, metric10 865.9p 2026-08-14 13:55:02.685582: Marginal costs baseline metric (no standing charge): 798.5924 2026-08-14 13:55:02.935388: Marginal energy costs matrix computed: min=21.84 max=39.05 2026-08-14 13:55:03.008550: Rate array import [{'start': 835, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2290, 'rate': 'cheap', 'range': '(15.2p - 27.2p)'}] export [{'start': 835, 'end': 2290, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 13:55:03.009030: - Your estimated bill for today is £6.91 and tomorrow is £6.88 2026-08-14 13:55:03.009100: - Import rates are cheap (21.7p - 22.2p) for the next 2 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 13:55:03.009125: - The battery is currently at 33% and is charging to 68% for the next 1 hour. 2026-08-14 13:55:03.009143: - For the next 48 hours there will be no solar generation. 2026-08-14 13:55:03.009165: - You will run out of battery in 16 hours. 2026-08-14 13:55:03.009183: 2026-08-14 13:55:03.056863: Plan calculation took 1.12 seconds 2026-08-14 13:55:03.060943: No high rate period found 2026-08-14 13:55:03.104746: Import threshold used for optimisation was 25.52p 2026-08-14 13:55:03.162701: Low import rate windows [0: 08-14 13:30:00 - 08-14 14:00:00 @ 21.77, 1: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 2: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 3: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 4: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 5: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 6: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 7: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 8: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 9: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 10: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 11: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 12: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 13: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 14: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 15: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 16: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 17: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 18: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 19: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 20: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 21: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 22: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 23: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 24: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 25: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 26: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 27: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 28: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 29: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 30: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 31: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 32: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 33: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 34: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 35: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 36: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 37: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 38: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 39: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 40: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 41: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 42: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 43: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 44: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 45: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 46: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 47: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 48: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 49: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 50: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 51: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 52: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 53: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 54: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 55: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 56: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 57: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 58: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 59: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 60: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 61: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 62: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 63: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 64: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 65: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 66: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 67: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 68: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 69: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 70: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 71: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 72: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 73: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 74: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 75: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 76: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 77: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 78: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 79: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 80: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 81: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 82: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 83: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 84: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 85: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 86: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 87: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 88: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 89: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 90: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 91: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 92: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 93: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 94: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 95: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4] 2026-08-14 13:55:03.171571: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:30:00 2026-08-14 13:55:03.171696: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 33%, target 100% 2026-08-14 13:55:03.171879: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 13:55:03.172084: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:55:03.172350: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:55:03.172450: No export window planned 2026-08-14 13:55:03.172566: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 13:55:03.172603: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:55:03.172734: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:55:03.172851: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 13:55:03.172893: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 13:55:03.172976: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 13:55:03.173093: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173140: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173169: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173201: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173227: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173252: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173275: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173320: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173379: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173409: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173437: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173470: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173524: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173555: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173629: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173665: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173690: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173721: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173745: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173776: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173800: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:03.173821: Inverter 0 count register writes 0 2026-08-14 13:55:03.190269: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 13:55:03.190454: Recompute is saving previous plan... 2026-08-14 13:55:03.193712: Best charge window [ 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 100%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 100%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 100%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 100%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 100%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 100%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 100%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 100%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 100%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 100%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 100%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 100%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 100%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 100%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 100%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 100%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 100%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 100%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 100%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 100%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 100%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 100%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 100%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 100%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 100%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 100%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 100%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 100%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 100%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 100%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 100%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 100%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 100%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 100%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 100%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 100%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 100%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100% ] 2026-08-14 13:55:03.193807: Best export window [ ] 2026-08-14 13:55:03.194696: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 13:55:03.197855: Load divergence over 8.0 hours mean 355.05W, min 247.2W, max 1000.8W, std dev 106.05W, divergence 14.94% 2026-08-14 13:55:03.216305: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 13:55:03.216407: LoadML is_calculating False 2026-08-14 13:55:03.216466: Creating pool of 12 processes to match your CPU count 2026-08-14 13:55:03.294085: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 13:55:03.296139: Optimise levels pass started at 2026-08-14 13:55:03 2026-08-14 13:55:03.296188: Optimise all windows, total charge 95 export 1 2026-08-14 13:55:04.232311: >> Region optimisation pass width 960 gives best_metric 1047.46p, best_cost 1081.23p, best_cycle 40.12kWh, best_import 32.43kWh 2026-08-14 13:55:04.665875: >> Region optimisation pass width 480 gives best_metric 1039.05p, best_cost 1046.15p, best_cycle 37.46kWh, best_import 30.19kWh 2026-08-14 13:55:05.148231: >> Region optimisation pass width 240 gives best_metric 1039.05p, best_cost 1046.15p, best_cycle 37.46kWh, best_import 30.19kWh 2026-08-14 13:55:06.158935: >> Region optimisation pass width 120 gives best_metric 1039.05p, best_cost 1046.15p, best_cycle 37.46kWh, best_import 30.19kWh 2026-08-14 13:55:06.159367: Calculated end_record as 08-15 14:00:00 based on best_price 22.02p, next_charge_start 08-14 14:00:00, max_windows 48 2026-08-14 13:55:06.159455: Optimise levels pass ended at 2026-08-14 13:55:06, duration 2.9 seconds tried 309 combinations 2026-08-14 13:55:06.159522: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1039.05p, best_keep 0kWh, best_cycle 37.46kWh, best_carbon 0kg, best_import 30.19kWh 2026-08-14 13:55:06.181313: Starting detailed optimisation end_record 08-15 14:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 15.4p with charge limits [16.0, 16.0, 0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 13:55:10.596109: Tweak plan optimisation started metric 773.1p, cost 784.6p 2026-08-14 13:55:10.884883: Tweak optimisation finished metric 773.1p, cost 784.6p, metric_keep 0kWh, cycle 18.44kWh, carbon 0kg, import 14.08kWh, changed 8 window(s) 2026-08-14 13:55:10.901741: Swap charge optimisation started metric 773.1p, cost 784.6p, min_improvement_swap 0.1p 2026-08-14 13:55:12.960244: Swap charge optimisation finished metric 773.1p, cost 784.6p 2026-08-14 13:55:13.046668: Pruned 1 dead plan slot(s) in 6 trial(s), nominal metric 770.19p -> 770.19p, plan now metric 773.1p, cost 784.6p, cycle 18.44kWh, import 14.08kWh 2026-08-14 13:55:13.059147: Raw charge windows [ 14-08 13:30:00 - 14-08 14:00:00 @ 21.77p 100%, 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100% ] reserve 1.12 2026-08-14 13:55:13.059782: Unclipped charge windows [ 14-08 13:30:00 - 14-08 15:00:00 @ 21.87p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:00:00 - 16-08 14:00:00 @ 15.69p 100% ] reserve 1.12 2026-08-14 13:55:13.059977: Unfiltered charge windows [ 14-08 13:30:00 - 14-08 15:00:00 @ 21.87p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:00:00 - 16-08 14:00:00 @ 15.69p 100% ] reserve 1.12 2026-08-14 13:55:13.060148: Filtered charge windows [ 14-08 13:30:00 - 14-08 15:00:00 @ 21.87p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 66%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:00:00 - 16-08 14:00:00 @ 15.69p 100% ] reserve 1.12 2026-08-14 13:55:13.097995: Previous plan best metric is 773.22 (cost 784.73) and new plan best metric is 773.1 (cost 784.6) 2026-08-14 13:55:13.098283: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 13:55:13.098474: Plan valid is now true after recompute was False 2026-08-14 13:55:13.128927: predict base end_record 08-15 14:00:00, final soc 10.43kWh, metric 999.67p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:45:00, load 30.56kWh, PV 0.0kWh 2026-08-14 13:55:13.236822: Battery has 20.83 hours left - now at 5.32kWh 2026-08-14 13:55:13.273565: predict base10 end_record 08-15 14:00:00, final soc 8.88kWh, metric 985.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:35:00, load 31.37kWh, PV 0.0kWh 2026-08-14 13:55:13.343245: predict best10 end_record 08-15 14:00:00, final soc 1.12kWh, metric 854.08p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:55:00, load 31.37kWh, PV 0.0kWh 2026-08-14 13:55:13.413674: predict best end_record 08-15 14:00:00, final soc 1.12kWh, metric 834.71p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 30.56kWh, PV 0.0kWh 2026-08-14 13:55:13.413774: Saving plan best values to HA entities 2026-08-14 13:55:13.548119: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 13:55:13.552673: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 13:55:13.557489: Best charging limit SoC's [16.0, 11.0, 12.5, 16.0]kWh, export []kWh gives import battery 9.19kWh, house 4.88kWh, export 0.0kWh, metric 834.71p, metric10 854.08p 2026-08-14 13:55:13.623435: Marginal costs baseline metric (no standing charge): 784.7219 2026-08-14 13:55:13.861115: Marginal energy costs matrix computed: min=21.84 max=39.05 2026-08-14 13:55:13.932754: Rate array import [{'start': 835, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2280, 'rate': 'cheap', 'range': '(15.4p - 27.2p)'}] export [{'start': 835, 'end': 2280, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 13:55:13.933272: - Your estimated bill for today is £6.91 and tomorrow is £6.88 2026-08-14 13:55:13.933345: - Import rates are cheap (21.7p - 22.2p) for the next 2 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 13:55:13.933372: - The battery is currently at 33% and is charging to 68% for the next 1 hour. 2026-08-14 13:55:13.933391: - For the next 48 hours there will be no solar generation. 2026-08-14 13:55:13.933410: - You will run out of battery in 16 hours. 2026-08-14 13:55:13.933427: 2026-08-14 13:55:13.980755: Plan calculation took 10.79 seconds 2026-08-14 13:55:13.981157: Inverter 0: Type SK Sunsynk 2026-08-14 13:55:13.981269: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 13:55:13.981623: Reserve min: 7%, battery_min: 7% 2026-08-14 13:55:13.981732: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 13:55:13.982144: Inverter 0 SoC: 5.68kW 36%, current charge rate 5000W, current discharge rate 5250W, current battery power -4552W, current battery voltage 51.2V, grid power -5331W, load power 335W, PV Power 0W 2026-08-14 13:55:13.982457: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:55:13.982600: Inverter 0 scheduled charge enable is True 2026-08-14 13:55:13.982680: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 13:55:13.982832: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 13:55:13.983016: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:55:13.983067: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:55:13.983129: Inverter 0 scheduled discharge enable is False 2026-08-14 13:55:13.983384: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:55:13.983433: Inverter 0 discharge windows currently [] 2026-08-14 13:55:13.983463: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:55:13.983489: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:55:13.983507: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:55:14.042853: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:30:00 2026-08-14 13:55:14.042999: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 36%, target 100% 2026-08-14 13:55:14.043133: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 13:55:14.043287: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:55:14.043489: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:55:14.043583: No export window planned 2026-08-14 13:55:14.043693: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 13:55:14.043725: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 13:55:14.043855: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 13:55:14.043965: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 13:55:14.044000: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 13:55:14.044045: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 13:55:14.044152: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.044198: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.044247: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.044299: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.044368: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.044423: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.044468: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.044553: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.044618: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.044670: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.044729: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.044772: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.044821: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.044854: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.044998: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.045057: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.045105: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.045146: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.045181: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.045260: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.045315: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 13:55:14.045365: Inverter 0 count register writes 0 2026-08-14 13:55:14.066864: Total inverter register writes now 810 2026-08-14 13:55:14.103608: Info: Completed run status Charging 2026-08-14 13:55:14.109944: Info: record_status Charging target 36%-100.0% 2026-08-14 13:55:14.117152: Saved current settings to /config/predbat_config.json 2026-08-14 13:55:14.117568: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 13:55:44.217090: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:55:44.217378: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:55:44.217435: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:55:44.217636: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:55:44.217695: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:55:44.217716: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:55:44.217735: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:57:44.438101: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:57:44.438389: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:57:44.438433: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:57:44.438567: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:57:44.438605: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:57:44.438626: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:57:44.438645: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 13:59:58.686307: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 13:59:58.686760: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 13:59:58.686852: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 13:59:58.687076: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 13:59:58.687160: Note: Inverter does not support discharge freeze - disabled 2026-08-14 13:59:58.687192: Note: Inverter does not support charge freeze - disabled 2026-08-14 13:59:58.687220: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:00:00.774307: --------------- PredBat - update at 2026-08-14 14:00:00+01:00 with clock skew 0 minutes, minutes now 840 2026-08-14 14:00:00.775046: Saved current settings to /config/predbat_config.json 2026-08-14 14:00:00.775174: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 15.0 minutes 2026-08-14 14:00:00.775241: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 14:00:00.775363: Autoupdate: Currently up to date 2026-08-14 14:00:00.796829: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 14:00:00.797043: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 14:00:00.797239: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 14:00:00.797768: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 14:00:00.797923: Predbat mode is set to Control charge & discharge 2026-08-14 14:00:01.017489: Found 21602 load_today datapoints going back 28 days 2026-08-14 14:00:01.017652: Using load_power data to fill gaps in load_today data 2026-08-14 14:00:01.782429: Processing 721 30-minute periods for power integration 2026-08-14 14:00:01.948644: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 14:00:01.948772: Car charging hold False, threshold 6.0kWh 2026-08-14 14:00:01.948818: Current data so far today: load 13.72kWh, import 19.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 14:00:01.961942: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 14:00:01.962673: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 14:00:01.962742: Standing charge is set to 49.98p 2026-08-14 14:00:02.001083: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 14:00:02.001190: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 14:00:02.001432: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 205.0 minutes 2026-08-14 14:00:02.001878: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 205.0 minutes 2026-08-14 14:00:02.010591: Loaded 95 datapoints of futurerate analysis 2026-08-14 14:00:02.121194: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3'] 2026-08-14 14:00:02.180975: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 14:00:02.185699: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 14:00:02.186070: Import rates: min 14.97p, max 53.39p, average 26.95p 2026-08-14 14:00:02.221888: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 14:00:02.222014: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 14:00:02.223176: High export rate found rates in range 99p to -99p 2026-08-14 14:00:02.312515: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 14:00:02.312658: Car 0 charging is not planned as it is not plugged in 2026-08-14 14:00:02.325666: Battery level now 5.32kWh, -1hr ago 2.08kWh, at midnight 2.43kWh, battery value change in the last hour 41.67p, change today 37.14p, rate_forward 12.86p 2026-08-14 14:00:02.326054: Last hour: net energy 4.8kWh, import 4.8kWh, export 0.0kWh, car 0kWh, load 0.53kWh, net cost 104.69p, import 104.69p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 14:00:02.387043: Today's energy total net 19.3kWh, import 19.3kWh, export 0.0kWh, cost 508.53p, import 458.55p, export 0.0p, carbon 0.0kg 2026-08-14 14:00:02.387205: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 14:00:02.470826: Using weighted-bucket historical load forecast over 14 days 2026-08-14 14:00:02.503648: Today's load divergence 127.37%, in-day adjustment 134.67%, damping 0.95x, yesterday 146.81% today 126.01% blend 41.67% 2026-08-14 14:00:02.503749: Today's predicted so far 8.38kWh with 0.0kWh car/iBoost excluded, 9.32kWh import ignored, and 8.38kWh forecast extra. 2026-08-14 14:00:02.503792: Today's actual load so far 13.8kWh with 0.0kWh car/iBoost excluded, and 9.32kWh import ignored. 2026-08-14 14:00:02.538375: Inverter 0: Type SK Sunsynk 2026-08-14 14:00:02.538463: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 14:00:02.538645: Reserve min: 7%, battery_min: 7% 2026-08-14 14:00:02.538719: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 14:00:02.538983: Inverter 0 SoC: 6.02kW 38%, current charge rate 5000W, current discharge rate 5250W, current battery power -4553W, current battery voltage 51.2V, grid power -5420W, load power 423W, PV Power 0W 2026-08-14 14:00:02.539142: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:00:02.539230: Inverter 0 scheduled charge enable is True 2026-08-14 14:00:02.539295: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 14:00:02.539395: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 14:00:02.539521: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:00:02.539556: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:00:02.539594: Inverter 0 scheduled discharge enable is False 2026-08-14 14:00:02.539713: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:00:02.539768: Inverter 0 discharge windows currently [] 2026-08-14 14:00:02.539818: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:00:02.539862: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:00:02.539902: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:00:02.600879: Dynamic load last period 0.30kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 14:00:02.601049: Plan was last updated on 2026-08-14 13:55:00+01:00 and is now 5.0 minutes old 2026-08-14 14:00:02.601458: Best charge window [ 14-08 13:30:00 - 14-08 15:00:00 @ 21.87p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:00:00 - 16-08 14:00:00 @ 15.69p 100% ] 2026-08-14 14:00:02.601534: Best export window [ ] 2026-08-14 14:00:02.602727: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 14:00:02.608297: Load divergence over 8.0 hours mean 355.53W, min 239.4W, max 1011.6W, std dev 106.47W, divergence 14.97% 2026-08-14 14:00:02.638961: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 14:00:02.639100: LoadML is_calculating False 2026-08-14 14:00:02.639222: Creating pool of 12 processes to match your CPU count 2026-08-14 14:00:02.769153: predict base end_record 08-15 14:05:00, final soc 10.82kWh, metric 1010.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 11:10:00, load 30.66kWh, PV 0.0kWh 2026-08-14 14:00:02.913242: Battery has 21.17 hours left - now at 6.02kWh 2026-08-14 14:00:02.963888: predict base10 end_record 08-15 14:05:00, final soc 9.2kWh, metric 993.06p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 07:25:00, load 31.47kWh, PV 0.0kWh 2026-08-14 14:00:03.053650: predict best10 end_record 08-15 14:05:00, final soc 1.44kWh, metric 861.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:00:00, load 31.47kWh, PV 0.0kWh 2026-08-14 14:00:03.137099: predict best end_record 08-15 14:05:00, final soc 1.51kWh, metric 843.17p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:00:00, load 30.66kWh, PV 0.0kWh 2026-08-14 14:00:03.137186: Saving plan best values to HA entities 2026-08-14 14:00:03.313848: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 14:00:03.322123: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 14:00:03.328329: Best charging limit SoC's [16.0, 11.0, 12.5, 16.0]kWh, export []kWh gives import battery 8.85kWh, house 4.86kWh, export 0.0kWh, metric 843.17p, metric10 861.39p 2026-08-14 14:00:03.422031: Marginal costs baseline metric (no standing charge): 793.191 2026-08-14 14:00:03.672822: Marginal energy costs matrix computed: min=21.86 max=39.33 2026-08-14 14:00:03.748507: Rate array import [{'start': 840, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2285, 'rate': 'cheap', 'range': '(15.2p - 27.2p)'}] export [{'start': 840, 'end': 2285, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 14:00:03.749132: - Your estimated bill for today is £6.92 and tomorrow is £6.86 2026-08-14 14:00:03.749201: - Import rates are cheap (21.7p - 22.2p) for the next 2 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 14:00:03.749243: - The battery is currently at 38% and is charging to 68% for the next 1 hour. 2026-08-14 14:00:03.749294: - For the next 48 hours there will be no solar generation. 2026-08-14 14:00:03.749342: - You will run out of battery in 16 hours. 2026-08-14 14:00:03.749364: 2026-08-14 14:00:03.806382: Plan calculation took 1.21 seconds 2026-08-14 14:00:03.810075: No high rate period found 2026-08-14 14:00:03.865305: Import threshold used for optimisation was 25.52p 2026-08-14 14:00:03.920371: Low import rate windows [0: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 1: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 2: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 3: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 4: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 5: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 6: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 7: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 8: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 9: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 10: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 11: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 12: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 13: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 14: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 15: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 16: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 17: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 18: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 19: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 20: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 21: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 22: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 23: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 24: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 25: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 26: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 27: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 28: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 29: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 30: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 31: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 32: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 33: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 34: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 35: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 36: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 37: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 38: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 39: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 40: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 41: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 42: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 43: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 44: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 45: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 46: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 47: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 48: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 49: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 50: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 51: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 52: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 53: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 54: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 55: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 56: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 57: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 58: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 59: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 60: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 61: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 62: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 63: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 64: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 65: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 66: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 67: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 68: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 69: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 70: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 71: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 72: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 73: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 74: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 75: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 76: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 77: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 78: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 79: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 80: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 81: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 82: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 83: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 84: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 85: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 86: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 87: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 88: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 89: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 90: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 91: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 92: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 93: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 94: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4] 2026-08-14 14:00:03.928533: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:30:00 2026-08-14 14:00:03.928649: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 38%, target 100% 2026-08-14 14:00:03.928868: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 14:00:03.929171: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:00:03.929493: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:00:03.929638: No export window planned 2026-08-14 14:00:03.929815: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 14:00:03.929861: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:00:03.930083: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:00:03.930311: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 14:00:03.930369: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 14:00:03.930464: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 14:00:03.930628: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.930681: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.930737: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.930789: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.930840: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.930894: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.930955: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.931050: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.931112: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.931176: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.931242: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.931325: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.931390: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.931452: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.931581: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.931631: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.931684: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.931739: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.931794: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.931833: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.931889: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:00:03.931937: Inverter 0 count register writes 0 2026-08-14 14:00:03.951377: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 14:00:03.957054: Total inverter register writes now 810 2026-08-14 14:00:03.995752: Info: Completed run status Charging 2026-08-14 14:00:04.002973: Info: record_status Charging target 38%-100.0% 2026-08-14 14:00:04.010996: Saved current settings to /config/predbat_config.json 2026-08-14 14:00:04.011447: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 14:00:11.824602: MCP POST: Received request from 10.0.10.143 2026-08-14 14:00:11.824815: MCP: Could not even decode without verification: Not enough segments 2026-08-14 14:00:11.824855: MCP: Token verification failed: Not enough segments 2026-08-14 14:00:11.824874: MCP POST: Authenticated via legacy bearer token 2026-08-14 14:00:19.451879: MCP POST: Received request from 10.0.10.143 2026-08-14 14:00:19.452144: MCP: Could not even decode without verification: Not enough segments 2026-08-14 14:00:19.452259: MCP: Token verification failed: Not enough segments 2026-08-14 14:00:19.452332: MCP POST: Authenticated via legacy bearer token 2026-08-14 14:00:44.130814: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:00:44.131116: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:00:44.131162: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:00:44.131389: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:00:44.131441: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:00:44.131463: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:00:44.131481: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:02:44.359041: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:02:44.359524: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:02:44.359605: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:02:44.359788: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:02:44.359842: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:02:44.359879: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:02:44.359900: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:04:58.602433: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:04:58.602699: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:04:58.602743: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:04:58.602875: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:04:58.602916: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:04:58.602938: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:04:58.602956: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:05:00.687299: --------------- PredBat - update at 2026-08-14 14:05:00+01:00 with clock skew 0 minutes, minutes now 845 2026-08-14 14:05:00.688196: Saved current settings to /config/predbat_config.json 2026-08-14 14:05:00.688416: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 20.0 minutes 2026-08-14 14:05:00.688524: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 14:05:00.688643: Autoupdate: Currently up to date 2026-08-14 14:05:00.710628: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 14:05:00.710783: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 14:05:00.711019: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 14:05:00.711715: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 14:05:00.711882: Predbat mode is set to Control charge & discharge 2026-08-14 14:05:00.920124: Found 21602 load_today datapoints going back 28 days 2026-08-14 14:05:00.920286: Using load_power data to fill gaps in load_today data 2026-08-14 14:05:01.658986: Processing 721 30-minute periods for power integration 2026-08-14 14:05:01.820890: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 14:05:01.821027: Car charging hold False, threshold 6.0kWh 2026-08-14 14:05:01.821069: Current data so far today: load 13.75kWh, import 19.3kWh, export 0.0kWh, PV 0kWh 2026-08-14 14:05:01.833654: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 14:05:01.834344: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 14:05:01.834411: Standing charge is set to 49.98p 2026-08-14 14:05:01.882771: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 14:05:01.882924: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 14:05:01.883148: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 210.0 minutes 2026-08-14 14:05:01.883478: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 210.0 minutes 2026-08-14 14:05:01.888484: Loaded 95 datapoints of futurerate analysis 2026-08-14 14:05:01.981831: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3'] 2026-08-14 14:05:02.061325: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 14:05:02.069872: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 14:05:02.070432: Import rates: min 14.97p, max 53.39p, average 26.94p 2026-08-14 14:05:02.116400: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 14:05:02.116532: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 14:05:02.117981: High export rate found rates in range 99p to -99p 2026-08-14 14:05:02.204854: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 14:05:02.205008: Car 0 charging is not planned as it is not plugged in 2026-08-14 14:05:02.220542: Battery level now 6.02kWh, -1hr ago 2.16kWh, at midnight 2.43kWh, battery value change in the last hour 49.75p, change today 46.2p, rate_forward 12.86p 2026-08-14 14:05:02.221178: Last hour: net energy 4.6kWh, import 4.6kWh, export 0.0kWh, car 0kWh, load 0.45kWh, net cost 100.32p, import 100.32p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 14:05:02.282327: Today's energy total net 19.3kWh, import 19.3kWh, export 0.0kWh, cost 508.53p, import 458.55p, export 0.0p, carbon 0.0kg 2026-08-14 14:05:02.282498: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 14:05:02.370611: Using weighted-bucket historical load forecast over 14 days 2026-08-14 14:05:02.397946: Today's load divergence 127.53%, in-day adjustment 134.69%, damping 0.95x, yesterday 146.81% today 126.15% blend 41.32% 2026-08-14 14:05:02.398041: Today's predicted so far 8.45kWh with 0.0kWh car/iBoost excluded, 9.25kWh import ignored, and 8.45kWh forecast extra. 2026-08-14 14:05:02.398074: Today's actual load so far 13.91kWh with 0.0kWh car/iBoost excluded, and 9.25kWh import ignored. 2026-08-14 14:05:02.439592: Inverter 0: Type SK Sunsynk 2026-08-14 14:05:02.439686: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 14:05:02.439888: Reserve min: 7%, battery_min: 7% 2026-08-14 14:05:02.439960: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 14:05:02.440248: Inverter 0 SoC: 6.02kW 38%, current charge rate 5000W, current discharge rate 5250W, current battery power -4553W, current battery voltage 51.2V, grid power -5391W, load power 395W, PV Power 0W 2026-08-14 14:05:02.440413: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:05:02.440520: Inverter 0 scheduled charge enable is True 2026-08-14 14:05:02.440586: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 14:05:02.440721: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 14:05:02.440903: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:05:02.440988: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:05:02.441059: Inverter 0 scheduled discharge enable is False 2026-08-14 14:05:02.441264: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:05:02.441315: Inverter 0 discharge windows currently [] 2026-08-14 14:05:02.441341: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:05:02.441368: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:05:02.441403: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:05:02.502821: Dynamic load last period 0.30kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 14:05:02.502926: Plan was last updated on 2026-08-14 13:55:00+01:00 and is now 10.0 minutes old 2026-08-14 14:05:02.503249: Best charge window [ 14-08 13:30:00 - 14-08 15:00:00 @ 21.87p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 69%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:00:00 - 16-08 14:00:00 @ 15.69p 100% ] 2026-08-14 14:05:02.503301: Best export window [ ] 2026-08-14 14:05:02.504137: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 14:05:02.507403: Load divergence over 8.0 hours mean 355.89W, min 239.4W, max 1094.4W, std dev 119.11W, divergence 16.73% 2026-08-14 14:05:02.527269: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 14:05:02.527415: LoadML is_calculating False 2026-08-14 14:05:02.527506: Creating pool of 12 processes to match your CPU count 2026-08-14 14:05:02.639587: predict base end_record 08-15 14:10:00, final soc 11.21kWh, metric 1013.44p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:45:00, load 30.65kWh, PV 0.0kWh 2026-08-14 14:05:02.791621: Battery has 20.67 hours left - now at 6.02kWh 2026-08-14 14:05:02.846901: predict base10 end_record 08-15 14:10:00, final soc 9.53kWh, metric 997.14p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:50:00, load 31.46kWh, PV 0.0kWh 2026-08-14 14:05:02.931901: predict best10 end_record 08-15 14:10:00, final soc 1.77kWh, metric 865.86p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:00:00, load 31.46kWh, PV 0.0kWh 2026-08-14 14:05:03.025619: predict best end_record 08-15 14:10:00, final soc 1.9kWh, metric 848.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:00:00, load 30.65kWh, PV 0.0kWh 2026-08-14 14:05:03.025711: Saving plan best values to HA entities 2026-08-14 14:05:03.207413: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 14:05:03.212999: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 14:05:03.218484: Best charging limit SoC's [16.0, 11.0, 12.5, 16.0]kWh, export []kWh gives import battery 9.25kWh, house 4.84kWh, export 0.0kWh, metric 848.75p, metric10 865.86p 2026-08-14 14:05:03.311193: Marginal costs baseline metric (no standing charge): 798.7693 2026-08-14 14:05:03.560364: Marginal energy costs matrix computed: min=21.9 max=38.87 2026-08-14 14:05:03.639619: Rate array import [{'start': 845, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2290, 'rate': 'cheap', 'range': '(15.2p - 27.2p)'}] export [{'start': 845, 'end': 2290, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 14:05:03.640182: - Your estimated bill for today is £6.91 and tomorrow is £6.85 2026-08-14 14:05:03.640263: - Import rates are cheap (21.7p - 22.2p) for the next 1 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 14:05:03.640307: - The battery is currently at 38% and is charging to 68% for the next 55 minutes. 2026-08-14 14:05:03.640343: - For the next 48 hours there will be no solar generation. 2026-08-14 14:05:03.640378: - You will run out of battery in 15 hours. 2026-08-14 14:05:03.640413: 2026-08-14 14:05:03.699749: Plan calculation took 1.20 seconds 2026-08-14 14:05:03.703416: No high rate period found 2026-08-14 14:05:03.756831: Import threshold used for optimisation was 25.52p 2026-08-14 14:05:03.813377: Low import rate windows [0: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 1: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 2: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 3: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 4: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 5: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 6: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 7: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 8: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 9: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 10: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 11: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 12: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 13: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 14: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 15: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 16: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 17: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 18: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 19: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 20: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 21: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 22: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 23: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 24: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 25: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 26: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 27: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 28: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 29: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 30: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 31: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 32: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 33: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 34: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 35: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 36: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 37: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 38: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 39: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 40: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 41: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 42: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 43: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 44: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 45: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 46: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 47: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 48: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 49: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 50: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 51: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 52: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 53: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 54: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 55: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 56: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 57: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 58: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 59: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 60: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 61: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 62: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 63: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 64: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 65: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 66: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 67: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 68: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 69: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 70: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 71: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 72: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 73: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 74: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 75: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 76: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 77: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 78: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 79: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 80: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 81: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 82: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 83: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 84: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 85: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 86: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 87: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 88: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 89: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 90: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 91: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 92: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 93: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 94: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 95: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19] 2026-08-14 14:05:03.832787: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 13:30:00 2026-08-14 14:05:03.832917: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 38%, target 100% 2026-08-14 14:05:03.833137: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 14:05:03.833393: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:05:03.833660: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:05:03.833769: No export window planned 2026-08-14 14:05:03.833911: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 14:05:03.833950: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:05:03.834087: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:05:03.834208: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 14:05:03.834295: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 14:05:03.834387: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 14:05:03.834528: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.834571: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.834600: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.834630: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.834655: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.834684: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.834714: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.834770: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.834807: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.834834: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.834868: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.834894: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.834923: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.834947: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.835035: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.835103: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.835169: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.835248: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.835307: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.835363: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.835422: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:03.835472: Inverter 0 count register writes 0 2026-08-14 14:05:03.853949: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 14:05:03.854160: Recompute is saving previous plan... 2026-08-14 14:05:03.857399: Best charge window [ 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 100%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 100%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 100%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 100%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 100%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 100%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 100%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 100%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 100%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 100%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 100%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 100%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 100%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 100%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 100%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 100%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 100%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 100%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 100%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 100%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 100%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 100%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 100%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 100%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 100%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 100%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 100%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 100%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 100%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 100%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 100%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 100%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 100%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 100%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 100%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 100%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 100%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100% ] 2026-08-14 14:05:03.857491: Best export window [ ] 2026-08-14 14:05:03.858425: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 14:05:03.861559: Load divergence over 8.0 hours mean 355.89W, min 239.4W, max 1094.4W, std dev 119.11W, divergence 16.73% 2026-08-14 14:05:03.876591: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 14:05:03.876698: LoadML is_calculating False 2026-08-14 14:05:03.876755: Creating pool of 12 processes to match your CPU count 2026-08-14 14:05:03.960220: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 14:05:03.962079: Optimise levels pass started at 2026-08-14 14:05:03 2026-08-14 14:05:03.962134: Optimise all windows, total charge 95 export 1 2026-08-14 14:05:05.035336: >> Region optimisation pass width 960 gives best_metric 1037.44p, best_cost 1044.98p, best_cycle 41.25kWh, best_import 29.69kWh 2026-08-14 14:05:05.764295: >> Region optimisation pass width 480 gives best_metric 1035.51p, best_cost 1044.69p, best_cycle 43.54kWh, best_import 29.85kWh 2026-08-14 14:05:06.340517: >> Region optimisation pass width 240 gives best_metric 1035.51p, best_cost 1044.69p, best_cycle 43.54kWh, best_import 29.85kWh 2026-08-14 14:05:07.588518: >> Region optimisation pass width 120 gives best_metric 1035.51p, best_cost 1044.69p, best_cycle 43.54kWh, best_import 29.85kWh 2026-08-14 14:05:07.588897: Calculated end_record as 08-15 14:30:00 based on best_price 22.02p, next_charge_start 08-14 14:30:00, max_windows 48 2026-08-14 14:05:07.589004: Optimise levels pass ended at 2026-08-14 14:05:07, duration 3.6 seconds tried 351 combinations 2026-08-14 14:05:07.589078: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1035.51p, best_keep 0kWh, best_cycle 43.54kWh, best_carbon 0kg, best_import 29.85kWh 2026-08-14 14:05:07.608309: Starting detailed optimisation end_record 08-15 14:30:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 15.19p with charge limits [16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9.25, 9.25, 9.25, 9.25, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 14:05:12.266458: Tweak plan optimisation started metric 776.94p, cost 788.44p 2026-08-14 14:05:12.582370: Tweak optimisation finished metric 776.94p, cost 788.44p, metric_keep 0kWh, cycle 17.7kWh, carbon 0kg, import 13.43kWh, changed 8 window(s) 2026-08-14 14:05:12.599526: Swap charge optimisation started metric 776.94p, cost 788.44p, min_improvement_swap 0.1p 2026-08-14 14:05:14.115042: Swap charge optimisation finished metric 776.94p, cost 788.44p 2026-08-14 14:05:14.180871: Pruned 1 dead plan slot(s) in 5 trial(s), nominal metric 774.04p -> 774.04p, plan now metric 776.94p, cost 788.44p, cycle 17.7kWh, import 13.43kWh 2026-08-14 14:05:14.192805: Raw charge windows [ 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100% ] reserve 1.12 2026-08-14 14:05:14.193486: Unclipped charge windows [ 14-08 14:00:00 - 14-08 15:00:00 @ 21.86p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:30:00 - 16-08 14:30:00 @ 15.44p 100% ] reserve 1.12 2026-08-14 14:05:14.193689: Unfiltered charge windows [ 14-08 14:00:00 - 14-08 15:00:00 @ 21.86p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:30:00 - 16-08 14:30:00 @ 15.44p 100% ] reserve 1.12 2026-08-14 14:05:14.193859: Filtered charge windows [ 14-08 14:00:00 - 14-08 15:00:00 @ 21.86p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:30:00 - 16-08 14:30:00 @ 15.44p 100% ] reserve 1.12 2026-08-14 14:05:14.232139: Previous plan best metric is 784.94 (cost 826.59) and new plan best metric is 776.94 (cost 788.44) 2026-08-14 14:05:14.232400: New plan metric is significantly better from previous plan, using new plan 2026-08-14 14:05:14.232447: Plan valid is now true after recompute was False 2026-08-14 14:05:14.267044: predict base end_record 08-15 14:30:00, final soc 12.76kWh, metric 1041.26p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:45:00, load 30.82kWh, PV 0.0kWh 2026-08-14 14:05:14.382918: Battery has 20.67 hours left - now at 6.02kWh 2026-08-14 14:05:14.428661: predict base10 end_record 08-15 14:30:00, final soc 10.82kWh, metric 1020.86p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:50:00, load 31.63kWh, PV 0.0kWh 2026-08-14 14:05:14.507200: predict best10 end_record 08-15 14:30:00, final soc 1.12kWh, metric 857.8p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:10:00, load 31.63kWh, PV 0.0kWh 2026-08-14 14:05:14.597548: predict best end_record 08-15 14:30:00, final soc 1.12kWh, metric 838.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:00:00, load 30.82kWh, PV 0.0kWh 2026-08-14 14:05:14.597646: Saving plan best values to HA entities 2026-08-14 14:05:14.783756: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 14:05:14.789571: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 14:05:14.795163: Best charging limit SoC's [16.0, 10.0, 12.5, 16.0]kWh, export []kWh gives import battery 8.32kWh, house 5.1kWh, export 0.0kWh, metric 838.42p, metric10 857.8p 2026-08-14 14:05:14.874706: Marginal costs baseline metric (no standing charge): 788.4393 2026-08-14 14:05:15.139400: Marginal energy costs matrix computed: min=21.9 max=38.88 2026-08-14 14:05:15.204976: Rate array import [{'start': 845, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2310, 'rate': 'cheap', 'range': '(15.2p - 27.2p)'}] export [{'start': 845, 'end': 2310, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 14:05:15.205366: - Your estimated bill for today is £6.91 and tomorrow is £7.44 2026-08-14 14:05:15.205404: - Import rates are cheap (21.7p - 22.2p) for the next 1 hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 14:05:15.205423: - The battery is currently at 38% and is charging to 64% for the next 55 minutes. 2026-08-14 14:05:15.205438: - For the next 48 hours there will be no solar generation. 2026-08-14 14:05:15.205453: - You will run out of battery in 15 hours. 2026-08-14 14:05:15.205466: 2026-08-14 14:05:15.251134: Plan calculation took 11.40 seconds 2026-08-14 14:05:15.251661: Inverter 0: Type SK Sunsynk 2026-08-14 14:05:15.251714: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 14:05:15.251978: Reserve min: 7%, battery_min: 7% 2026-08-14 14:05:15.252060: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 14:05:15.252412: Inverter 0 SoC: 6.38kW 40%, current charge rate 5000W, current discharge rate 5250W, current battery power -4554W, current battery voltage 51.2V, grid power -5386W, load power 390W, PV Power 0W 2026-08-14 14:05:15.252653: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:05:15.252760: Inverter 0 scheduled charge enable is True 2026-08-14 14:05:15.252814: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 14:05:15.252903: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 14:05:15.253105: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:05:15.253161: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:05:15.253208: Inverter 0 scheduled discharge enable is False 2026-08-14 14:05:15.253364: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:05:15.253404: Inverter 0 discharge windows currently [] 2026-08-14 14:05:15.253434: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:05:15.253454: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:05:15.253471: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:05:15.312326: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 14:00:00 2026-08-14 14:05:15.312455: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 40%, target 100% 2026-08-14 14:05:15.312630: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 14:05:15.312870: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:05:15.313162: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:05:15.313302: No export window planned 2026-08-14 14:05:15.313467: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 14:05:15.313526: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:05:15.313739: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:05:15.313891: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 14:05:15.313962: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 14:05:15.314038: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 14:05:15.314193: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.314283: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.314347: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.314400: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.314453: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.314514: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.314595: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.314683: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.314750: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.314808: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.314860: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.314913: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.314966: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.315018: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.315125: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.315189: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.315261: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.315319: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.315368: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.315406: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.315466: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:05:15.315515: Inverter 0 count register writes 0 2026-08-14 14:05:15.338359: Total inverter register writes now 810 2026-08-14 14:05:15.373151: Info: Completed run status Charging 2026-08-14 14:05:15.380105: Info: record_status Charging target 40%-100.0% 2026-08-14 14:05:15.387872: Saved current settings to /config/predbat_config.json 2026-08-14 14:05:15.388238: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 14:05:59.509486: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:05:59.509752: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:05:59.509787: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:05:59.509940: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:05:59.509979: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:05:59.510001: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:05:59.510019: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:08:13.741858: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:08:13.742202: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:08:13.742278: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:08:13.742497: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:08:13.742553: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:08:13.742595: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:08:13.742683: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:10:00.953092: --------------- PredBat - update at 2026-08-14 14:10:00+01:00 with clock skew 0 minutes, minutes now 850 2026-08-14 14:10:00.953874: Saved current settings to /config/predbat_config.json 2026-08-14 14:10:00.954001: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 25.0 minutes 2026-08-14 14:10:00.954074: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 14:10:00.954184: Autoupdate: Currently up to date 2026-08-14 14:10:00.981792: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 14:10:00.981921: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 14:10:00.982098: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 14:10:00.982631: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 14:10:00.982766: Predbat mode is set to Control charge & discharge 2026-08-14 14:10:01.179814: Found 21602 load_today datapoints going back 28 days 2026-08-14 14:10:01.179980: Using load_power data to fill gaps in load_today data 2026-08-14 14:10:01.948292: Processing 721 30-minute periods for power integration 2026-08-14 14:10:02.108030: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 14:10:02.108146: Car charging hold False, threshold 6.0kWh 2026-08-14 14:10:02.108185: Current data so far today: load 13.85kWh, import 20.2kWh, export 0.0kWh, PV 0kWh 2026-08-14 14:10:02.122229: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 14:10:02.123181: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 14:10:02.123342: Standing charge is set to 49.98p 2026-08-14 14:10:02.178013: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 14:10:02.178134: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 14:10:02.178404: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 215.0 minutes 2026-08-14 14:10:02.178860: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 215.0 minutes 2026-08-14 14:10:02.184588: Loaded 95 datapoints of futurerate analysis 2026-08-14 14:10:02.265653: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3'] 2026-08-14 14:10:02.313529: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 14:10:02.318086: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 14:10:02.318465: Import rates: min 14.97p, max 53.39p, average 26.93p 2026-08-14 14:10:02.356437: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 14:10:02.356552: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 14:10:02.357730: High export rate found rates in range 99p to -99p 2026-08-14 14:10:02.437090: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 14:10:02.437230: Car 0 charging is not planned as it is not plugged in 2026-08-14 14:10:02.448819: Battery level now 6.02kWh, -1hr ago 2.5kWh, at midnight 2.43kWh, battery value change in the last hour 45.27p, change today 46.2p, rate_forward 12.86p 2026-08-14 14:10:02.449150: Last hour: net energy 5.0kWh, import 5.0kWh, export 0.0kWh, car 0kWh, load 0.5kWh, net cost 108.95p, import 108.95p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 14:10:02.502426: Today's energy total net 20.2kWh, import 20.2kWh, export 0.0kWh, cost 528.1p, import 478.11p, export 0.0p, carbon 0.0kg 2026-08-14 14:10:02.502572: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 14:10:02.574073: Using weighted-bucket historical load forecast over 14 days 2026-08-14 14:10:02.596188: Today's load divergence 127.58%, in-day adjustment 134.65%, damping 0.95x, yesterday 146.81% today 126.2% blend 40.97% 2026-08-14 14:10:02.596277: Today's predicted so far 8.46kWh with 0.0kWh car/iBoost excluded, 10.05kWh import ignored, and 8.46kWh forecast extra. 2026-08-14 14:10:02.596304: Today's actual load so far 13.93kWh with 0.0kWh car/iBoost excluded, and 10.05kWh import ignored. 2026-08-14 14:10:02.627994: Inverter 0: Type SK Sunsynk 2026-08-14 14:10:02.628073: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 14:10:02.628250: Reserve min: 7%, battery_min: 7% 2026-08-14 14:10:02.628307: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 14:10:02.628526: Inverter 0 SoC: 6.38kW 40%, current charge rate 5000W, current discharge rate 5250W, current battery power -4555W, current battery voltage 51.2V, grid power -6086W, load power 1089W, PV Power 0W 2026-08-14 14:10:02.628660: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:10:02.628734: Inverter 0 scheduled charge enable is True 2026-08-14 14:10:02.628771: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 14:10:02.628843: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 14:10:02.628968: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:10:02.628997: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:10:02.629030: Inverter 0 scheduled discharge enable is False 2026-08-14 14:10:02.629137: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:10:02.629169: Inverter 0 discharge windows currently [] 2026-08-14 14:10:02.629188: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:10:02.629244: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:10:02.629262: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:10:02.692554: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 14:10:02.692651: Plan was last updated on 2026-08-14 14:05:00+01:00 and is now 5.0 minutes old 2026-08-14 14:10:02.692835: Best charge window [ 14-08 14:00:00 - 14-08 15:00:00 @ 21.86p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:30:00 - 16-08 14:30:00 @ 15.44p 100% ] 2026-08-14 14:10:02.692871: Best export window [ ] 2026-08-14 14:10:02.693624: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 14:10:02.696363: Load divergence over 8.0 hours mean 356.04W, min 240.6W, max 984.0W, std dev 114.05W, divergence 16.02% 2026-08-14 14:10:02.714380: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 14:10:02.714491: LoadML is_calculating False 2026-08-14 14:10:02.714549: Creating pool of 12 processes to match your CPU count 2026-08-14 14:10:02.822470: predict base end_record 08-15 14:35:00, final soc 13.15kWh, metric 1058.34p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:40:00, load 30.92kWh, PV 0.0kWh 2026-08-14 14:10:02.985868: Battery has 20.5 hours left - now at 6.38kWh 2026-08-14 14:10:03.034761: predict base10 end_record 08-15 14:35:00, final soc 11.14kWh, metric 1037.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:50:00, load 31.74kWh, PV 0.0kWh 2026-08-14 14:10:03.116181: predict best10 end_record 08-15 14:35:00, final soc 1.44kWh, metric 874.05p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:10:00, load 31.74kWh, PV 0.0kWh 2026-08-14 14:10:03.208014: predict best end_record 08-15 14:35:00, final soc 1.51kWh, metric 855.78p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 30.92kWh, PV 0.0kWh 2026-08-14 14:10:03.208111: Saving plan best values to HA entities 2026-08-14 14:10:03.417816: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 14:10:03.423724: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 14:10:03.429290: Best charging limit SoC's [16.0, 10.0, 12.5, 16.0]kWh, export []kWh gives import battery 8.35kWh, house 5.12kWh, export 0.0kWh, metric 855.78p, metric10 874.05p 2026-08-14 14:10:03.507456: Marginal costs baseline metric (no standing charge): 805.7937 2026-08-14 14:10:03.772630: Marginal energy costs matrix computed: min=21.95 max=38.38 2026-08-14 14:10:03.848586: Rate array import [{'start': 850, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2315, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 850, 'end': 2315, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 14:10:03.849034: - Your estimated bill for today is £7.01 and tomorrow is £7.45 2026-08-14 14:10:03.849079: - Import rates are cheap (21.7p - 22.2p) for the next 1 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 14:10:03.849099: - The battery is currently at 40% and is charging to 64% for the next 50 minutes. 2026-08-14 14:10:03.849114: - For the next 48 hours there will be no solar generation. 2026-08-14 14:10:03.849128: - You will run out of battery in 15 hours. 2026-08-14 14:10:03.849141: 2026-08-14 14:10:03.894053: Plan calculation took 1.20 seconds 2026-08-14 14:10:03.896886: No high rate period found 2026-08-14 14:10:03.947270: Import threshold used for optimisation was 25.43p 2026-08-14 14:10:04.007525: Low import rate windows [0: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 1: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 2: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 3: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 4: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 5: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 6: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 7: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 8: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 9: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 10: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 11: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 12: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 13: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 14: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 15: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 16: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 17: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 18: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 19: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 20: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 21: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 22: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 23: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 24: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 25: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 26: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 27: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 28: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 29: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 30: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 31: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 32: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 33: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 34: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 35: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 36: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 37: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 38: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 39: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 40: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 41: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 42: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 43: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 44: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 45: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 46: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 47: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 48: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 49: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 50: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 51: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 52: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 53: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 54: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 55: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 56: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 57: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 58: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 59: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 60: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 61: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 62: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 63: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 64: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 65: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 66: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 67: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 68: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 69: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 70: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 71: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 72: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 73: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 74: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 75: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 76: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 77: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 78: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 79: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 80: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 81: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 82: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 83: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 84: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 85: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 86: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 87: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 88: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 89: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 90: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 91: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 92: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 93: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 94: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 95: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19] 2026-08-14 14:10:04.016481: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 14:00:00 2026-08-14 14:10:04.016607: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 40%, target 100% 2026-08-14 14:10:04.016781: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 14:10:04.017033: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:10:04.017442: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:10:04.017571: No export window planned 2026-08-14 14:10:04.017710: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 14:10:04.017745: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:10:04.017934: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:10:04.018107: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 14:10:04.018181: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 14:10:04.018296: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 14:10:04.018453: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.018507: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.018537: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.018562: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.018592: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.018618: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.018642: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.018686: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.018725: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.018757: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.018795: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.018848: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.018879: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.018903: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.018970: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.018999: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.019046: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.019072: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.019098: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.019128: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.019166: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:10:04.019259: Inverter 0 count register writes 0 2026-08-14 14:10:04.037880: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 14:10:04.043496: Total inverter register writes now 810 2026-08-14 14:10:04.076734: Info: Completed run status Charging 2026-08-14 14:10:04.083065: Info: record_status Charging target 40%-100.0% 2026-08-14 14:10:04.088999: Saved current settings to /config/predbat_config.json 2026-08-14 14:10:04.089267: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 14:10:44.199817: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:10:44.200224: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:10:44.200290: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:10:44.200505: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:10:44.200561: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:10:44.200596: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:10:44.200633: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:12:44.445138: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:12:44.445412: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:12:44.445465: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:12:44.445600: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:12:44.445640: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:12:44.445661: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:12:44.445679: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:12:58.508791: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 14:12:59.408294: Processing 1345 30-minute periods for power integration 2026-08-14 14:12:59.502771: ML Component: Car charging hold False, car energy reported load False 2026-08-14 14:12:59.600124: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 14:12:59.709609: ML Temperature data points: 49551 2026-08-14 14:12:59.948800: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 14:12:59.982741: ML Component: Data fetch completed, load data age 56.0 days, 16147 data points 2026-08-14 14:12:59.982851: ML Component: No training needed, model age is 1.92 hours 2026-08-14 14:12:59.982911: ML Component: Generating predictions load data age 56.0 days, 16147 data points 2026-08-14 14:13:00.129714: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0701 max_dow {0: 0.10014999996256083, 1: 0.10541562554407864, 2: 0.11911562483031304, 3: 0.12494687463529408, 4: 0.17094062535744162, 5: 0.1007093750283122, 6: 0.10970937514957041} 2026-08-14 14:13:00.580507: ML Component: Generated 576 predictions (total 39.51 kWh over 48h) 2026-08-14 14:13:00.622523: ML Component: Prediction cycle completed 2026-08-14 14:13:00.737998: ML Component: Saved 16147 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 14:14:58.725472: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:14:58.725731: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:14:58.725762: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:14:58.725893: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:14:58.725926: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:14:58.725945: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:14:58.725959: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:15:00.799622: --------------- PredBat - update at 2026-08-14 14:15:00+01:00 with clock skew 0 minutes, minutes now 855 2026-08-14 14:15:00.800460: Saved current settings to /config/predbat_config.json 2026-08-14 14:15:00.800610: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 30.0 minutes 2026-08-14 14:15:00.800716: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 14:15:00.800803: Autoupdate: Currently up to date 2026-08-14 14:15:00.819661: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 14:15:00.819790: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 14:15:00.819962: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 14:15:00.820467: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 14:15:00.820612: Predbat mode is set to Control charge & discharge 2026-08-14 14:15:00.905826: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 14:15:01.766653: Found 21602 load_today datapoints going back 28 days 2026-08-14 14:15:01.771929: Using load_power data to fill gaps in load_today data 2026-08-14 14:15:02.551966: Processing 1345 30-minute periods for power integration 2026-08-14 14:15:02.777780: ML Component: Car charging hold False, car energy reported load False 2026-08-14 14:15:02.982214: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 14:15:03.228188: ML Temperature data points: 49546 2026-08-14 14:15:03.418117: Processing 721 30-minute periods for power integration 2026-08-14 14:15:03.743493: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 14:15:03.748737: Car charging hold False, threshold 6.0kWh 2026-08-14 14:15:03.753918: Current data so far today: load 13.9kWh, import 20.2kWh, export 0.0kWh, PV 0kWh 2026-08-14 14:15:03.779028: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 14:15:03.792082: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 14:15:03.799344: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 14:15:03.811873: Standing charge is set to 49.98p 2026-08-14 14:15:03.823844: ML Component: Data fetch completed, load data age 56.0 days, 16148 data points 2026-08-14 14:15:03.824497: ML Component: Starting fine-tune training (2h interval), model age is 2.004510738888889 hours 2026-08-14 14:15:03.824878: ML Component: Waiting for current prediction cycle to complete before running ML work 2026-08-14 14:15:03.872093: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 14:15:03.872226: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 14:15:03.872431: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 220.0 minutes 2026-08-14 14:15:03.872823: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 220.0 minutes 2026-08-14 14:15:03.878936: Loaded 95 datapoints of futurerate analysis 2026-08-14 14:15:03.958019: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3'] 2026-08-14 14:15:04.003767: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 14:15:04.009511: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 14:15:04.009851: Import rates: min 14.97p, max 53.39p, average 26.92p 2026-08-14 14:15:04.044391: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 14:15:04.044497: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 14:15:04.045651: High export rate found rates in range 99p to -99p 2026-08-14 14:15:04.125641: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 14:15:04.125762: Car 0 charging is not planned as it is not plugged in 2026-08-14 14:15:04.138630: Battery level now 6.38kWh, -1hr ago 2.5kWh, at midnight 2.43kWh, battery value change in the last hour 49.8p, change today 50.72p, rate_forward 12.86p 2026-08-14 14:15:04.138994: Last hour: net energy 4.5kWh, import 4.5kWh, export 0.0kWh, car 0kWh, load 0.5kWh, net cost 98.02p, import 98.02p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 14:15:04.196166: Today's energy total net 20.2kWh, import 20.2kWh, export 0.0kWh, cost 528.1p, import 478.11p, export 0.0p, carbon 0.0kg 2026-08-14 14:15:04.196307: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 14:15:04.273924: Using weighted-bucket historical load forecast over 14 days 2026-08-14 14:15:04.295833: Today's load divergence 127.53%, in-day adjustment 134.55%, damping 0.95x, yesterday 146.81% today 126.15% blend 40.62% 2026-08-14 14:15:04.296188: Today's predicted so far 8.47kWh with 0.0kWh car/iBoost excluded, 10.11kWh import ignored, and 8.47kWh forecast extra. 2026-08-14 14:15:04.296225: Today's actual load so far 13.93kWh with 0.0kWh car/iBoost excluded, and 10.11kWh import ignored. 2026-08-14 14:15:04.340810: Inverter 0: Type SK Sunsynk 2026-08-14 14:15:04.340892: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 14:15:04.341165: Reserve min: 7%, battery_min: 7% 2026-08-14 14:15:04.341264: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 14:15:04.341542: Inverter 0 SoC: 6.73kW 42%, current charge rate 5000W, current discharge rate 5250W, current battery power -4558W, current battery voltage 51.2V, grid power -6029W, load power 1033W, PV Power 0W 2026-08-14 14:15:04.342079: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:15:04.342196: Inverter 0 scheduled charge enable is True 2026-08-14 14:15:04.342253: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 14:15:04.342372: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 14:15:04.342514: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:15:04.342564: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:15:04.342633: Inverter 0 scheduled discharge enable is False 2026-08-14 14:15:04.342789: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:15:04.342829: Inverter 0 discharge windows currently [] 2026-08-14 14:15:04.342855: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:15:04.342893: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:15:04.342917: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:15:04.399698: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 14:15:04.399802: Plan was last updated on 2026-08-14 14:05:00+01:00 and is now 10.0 minutes old 2026-08-14 14:15:04.400011: Best charge window [ 14-08 14:00:00 - 14-08 15:00:00 @ 21.86p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 14:30:00 - 16-08 14:30:00 @ 15.44p 100% ] 2026-08-14 14:15:04.400049: Best export window [ ] 2026-08-14 14:15:04.400737: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 14:15:04.403253: Load divergence over 8.0 hours mean 356.32W, min 220.2W, max 1090.2W, std dev 116.21W, divergence 16.31% 2026-08-14 14:15:04.418685: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 14:15:04.418768: LoadML is_calculating False 2026-08-14 14:15:04.418819: Creating pool of 12 processes to match your CPU count 2026-08-14 14:15:04.538916: predict base end_record 08-15 14:40:00, final soc 13.54kWh, metric 1055.74p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:35:00, load 30.97kWh, PV 0.0kWh 2026-08-14 14:15:04.668869: Battery has 20.33 hours left - now at 6.73kWh 2026-08-14 14:15:04.719102: predict base10 end_record 08-15 14:40:00, final soc 11.47kWh, metric 1033.8p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:50:00, load 31.79kWh, PV 0.0kWh 2026-08-14 14:15:04.817785: predict best10 end_record 08-15 14:40:00, final soc 1.77kWh, metric 870.72p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:10:00, load 31.79kWh, PV 0.0kWh 2026-08-14 14:15:04.904973: predict best end_record 08-15 14:40:00, final soc 1.9kWh, metric 853.49p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 30.97kWh, PV 0.0kWh 2026-08-14 14:15:04.905070: Saving plan best values to HA entities 2026-08-14 14:15:05.073860: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 14:15:05.079459: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 14:15:05.085310: Best charging limit SoC's [16.0, 10.0, 12.5, 16.0]kWh, export []kWh gives import battery 8.36kWh, house 5.14kWh, export 0.0kWh, metric 853.49p, metric10 870.72p 2026-08-14 14:15:05.163673: Marginal costs baseline metric (no standing charge): 803.5093 2026-08-14 14:15:05.419574: Marginal energy costs matrix computed: min=21.99 max=37.89 2026-08-14 14:15:05.495047: Rate array import [{'start': 855, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2320, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 855, 'end': 2320, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 14:15:05.495752: - Your estimated bill for today is £6.92 and tomorrow is £7.47 2026-08-14 14:15:05.495818: - Import rates are cheap (21.7p - 22.2p) for the next 1 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 14:15:05.495850: - The battery is currently at 42% and is charging to 64% for the next 45 minutes. 2026-08-14 14:15:05.495877: - For the next 48 hours there will be no solar generation. 2026-08-14 14:15:05.495915: - You will run out of battery in 15 hours. 2026-08-14 14:15:05.495942: 2026-08-14 14:15:05.546419: Plan calculation took 1.15 seconds 2026-08-14 14:15:05.550125: No high rate period found 2026-08-14 14:15:05.599744: Import threshold used for optimisation was 25.43p 2026-08-14 14:15:05.646162: Low import rate windows [0: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 1: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 2: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 3: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 4: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 5: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 6: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 7: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 8: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 9: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 10: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 11: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 12: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 13: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 14: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 15: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 16: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 17: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 18: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 19: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 20: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 21: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 22: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 23: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 24: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 25: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 26: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 27: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 28: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 29: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 30: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 31: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 32: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 33: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 34: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 35: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 36: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 37: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 38: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 39: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 40: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 41: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 42: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 43: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 44: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 45: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 46: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 47: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 48: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 49: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 50: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 51: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 52: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 53: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 54: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 55: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 56: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 57: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 58: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 59: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 60: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 61: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 62: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 63: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 64: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 65: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 66: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 67: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 68: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 69: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 70: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 71: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 72: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 73: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 74: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 75: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 76: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 77: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 78: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 79: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 80: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 81: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 82: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 83: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 84: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 85: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 86: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 87: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 88: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 89: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 90: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 91: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 92: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 93: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 94: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 95: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19] 2026-08-14 14:15:05.653561: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 14:00:00 2026-08-14 14:15:05.653676: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 42%, target 100% 2026-08-14 14:15:05.653827: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 14:15:05.654005: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:15:05.654208: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:15:05.654295: No export window planned 2026-08-14 14:15:05.654394: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 14:15:05.654422: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:15:05.654529: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:15:05.654646: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 14:15:05.654678: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 14:15:05.654726: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 14:15:05.654814: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.654848: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.654871: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.654891: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.654911: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.654949: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.654971: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.655009: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.655038: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.655063: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.655084: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.655103: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.655125: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.655144: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.655201: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.655230: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.655250: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.655270: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.655290: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.655309: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.655328: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:05.655345: Inverter 0 count register writes 0 2026-08-14 14:15:05.669502: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 14:15:05.669685: Recompute is saving previous plan... 2026-08-14 14:15:05.672925: Best charge window [ 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 100%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 100%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 100%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 100%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 100%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 100%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 100%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 100%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 100%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 100%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 100%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 100%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 100%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 100%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 100%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 100%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 100%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 100%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 100%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 100%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 100%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 100%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 100%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 100%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 100%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 100%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 100%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 100%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 100%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 100%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 100%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 100%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 100%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 100%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 100%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 100%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 100%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100% ] 2026-08-14 14:15:05.673044: Best export window [ ] 2026-08-14 14:15:05.673872: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 14:15:05.676882: Load divergence over 8.0 hours mean 356.32W, min 220.2W, max 1090.2W, std dev 116.21W, divergence 16.31% 2026-08-14 14:15:05.692744: Calculating data from yesterday for savings calculation 2026-08-14 14:15:05.702576: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 14:15:05.743463: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 14:15:05.757643: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 869.96p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 14:15:05.784298: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 14:15:05.816636: Yesterday: Predbat disabled was £8.56 (adjusted £8.42) vs £6.21 (adjusted £5.88), saving £2.35 (adjusted £2.53) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 14.4kWh 2026-08-14 14:15:05.891443: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 901.25p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 14:15:05.891564: Yesterday: No Battery/PV system cost predicted was £9.01 (adjusted £9.01) vs £6.21 (adjusted £5.88), saving £2.8 (adjusted £3.13) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 14:15:05.900113: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 14:15:05.900227: LoadML is_calculating False 2026-08-14 14:15:05.900351: Creating pool of 12 processes to match your CPU count 2026-08-14 14:15:05.991837: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 14:15:05.993728: Optimise levels pass started at 2026-08-14 14:15:05 2026-08-14 14:15:05.993782: Optimise all windows, total charge 95 export 1 2026-08-14 14:15:07.029155: >> Region optimisation pass width 960 gives best_metric 1039.71p, best_cost 1047.27p, best_cycle 40.38kWh, best_import 28.91kWh 2026-08-14 14:15:07.488548: >> Region optimisation pass width 480 gives best_metric 1039.71p, best_cost 1047.27p, best_cycle 40.38kWh, best_import 28.91kWh 2026-08-14 14:15:08.011399: >> Region optimisation pass width 240 gives best_metric 1039.71p, best_cost 1047.27p, best_cycle 40.38kWh, best_import 28.91kWh 2026-08-14 14:15:09.102412: >> Region optimisation pass width 120 gives best_metric 1039.71p, best_cost 1047.27p, best_cycle 40.38kWh, best_import 28.91kWh 2026-08-14 14:15:09.102804: Calculated end_record as 08-15 14:30:00 based on best_price 22.02p, next_charge_start 08-14 14:30:00, max_windows 48 2026-08-14 14:15:09.102903: Optimise levels pass ended at 2026-08-14 14:15:09, duration 3.1 seconds tried 325 combinations 2026-08-14 14:15:09.102998: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1039.71p, best_keep 0kWh, best_cycle 40.38kWh, best_carbon 0kg, best_import 28.91kWh 2026-08-14 14:15:09.125404: Starting detailed optimisation end_record 08-15 14:30:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 15.19p with charge limits [16.0, 16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 14:15:12.626497: Tweak plan optimisation started metric 778.19p, cost 789.7p 2026-08-14 14:15:12.942753: Tweak optimisation finished metric 778.19p, cost 789.7p, metric_keep 0kWh, cycle 17.09kWh, carbon 0kg, import 12.59kWh, changed 8 window(s) 2026-08-14 14:15:12.958861: Swap charge optimisation started metric 778.19p, cost 789.7p, min_improvement_swap 0.1p 2026-08-14 14:15:13.910320: Swap charge optimisation finished metric 778.19p, cost 789.7p 2026-08-14 14:15:13.957101: Raw charge windows [ 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100% ] reserve 1.12 2026-08-14 14:15:13.957594: Unclipped charge windows [ 14-08 14:00:00 - 14-08 15:00:00 @ 21.86p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 14:30:00 - 16-08 14:30:00 @ 15.44p 100% ] reserve 1.12 2026-08-14 14:15:13.957766: Unfiltered charge windows [ 14-08 14:00:00 - 14-08 15:00:00 @ 21.86p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 14:30:00 - 16-08 14:30:00 @ 15.44p 100% ] reserve 1.12 2026-08-14 14:15:13.957905: Filtered charge windows [ 14-08 14:00:00 - 14-08 15:00:00 @ 21.86p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 14:30:00 - 16-08 14:30:00 @ 15.44p 100% ] reserve 1.12 2026-08-14 14:15:13.987623: Previous plan best metric is 778.19 (cost 789.71) and new plan best metric is 778.19 (cost 789.7) 2026-08-14 14:15:13.987808: New plan is a cost-neutral improvement but less fragmented (2 vs 3 segments), using new plan 2026-08-14 14:15:13.987842: Plan valid is now true after recompute was False 2026-08-14 14:15:14.011869: predict base end_record 08-15 14:30:00, final soc 12.76kWh, metric 1041.93p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:35:00, load 30.88kWh, PV 0.0kWh 2026-08-14 14:15:14.126296: Battery has 20.33 hours left - now at 6.73kWh 2026-08-14 14:15:14.164660: predict base10 end_record 08-15 14:30:00, final soc 10.82kWh, metric 1022.02p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:50:00, load 31.69kWh, PV 0.0kWh 2026-08-14 14:15:14.238135: predict best10 end_record 08-15 14:30:00, final soc 1.12kWh, metric 858.93p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:10:00, load 31.69kWh, PV 0.0kWh 2026-08-14 14:15:14.322352: predict best end_record 08-15 14:30:00, final soc 1.12kWh, metric 839.69p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:00:00, load 30.88kWh, PV 0.0kWh 2026-08-14 14:15:14.322455: Saving plan best values to HA entities 2026-08-14 14:15:14.474110: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 14:15:14.479543: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 14:15:14.484924: Best charging limit SoC's [16.0, 10.0, 16.0, 16.0]kWh, export []kWh gives import battery 7.5kWh, house 5.09kWh, export 0.0kWh, metric 839.69p, metric10 858.93p 2026-08-14 14:15:14.560303: Marginal costs baseline metric (no standing charge): 789.7022 2026-08-14 14:15:14.837191: Marginal energy costs matrix computed: min=21.99 max=37.86 2026-08-14 14:15:14.905872: Rate array import [{'start': 855, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2310, 'rate': 'cheap', 'range': '(15.2p - 27.2p)'}] export [{'start': 855, 'end': 2310, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 14:15:14.906329: - Your estimated bill for today is £6.93 and tomorrow is £7.45 2026-08-14 14:15:14.906377: - Import rates are cheap (21.7p - 22.2p) for the next 1 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 14:15:14.906421: - The battery is currently at 42% and is charging to 64% for the next 45 minutes. 2026-08-14 14:15:14.906441: - For the next 48 hours there will be no solar generation. 2026-08-14 14:15:14.906458: - You will run out of battery in 15 hours. 2026-08-14 14:15:14.906476: 2026-08-14 14:15:14.953690: Plan calculation took 9.28 seconds 2026-08-14 14:15:14.954113: Inverter 0: Type SK Sunsynk 2026-08-14 14:15:14.954157: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 14:15:14.954418: Reserve min: 7%, battery_min: 7% 2026-08-14 14:15:14.954498: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 14:15:14.954861: Inverter 0 SoC: 6.73kW 42%, current charge rate 5000W, current discharge rate 5250W, current battery power -4558W, current battery voltage 51.2V, grid power -6029W, load power 1033W, PV Power 0W 2026-08-14 14:15:14.955102: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:15:14.955209: Inverter 0 scheduled charge enable is True 2026-08-14 14:15:14.955263: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 14:15:14.955362: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 14:15:14.955485: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:15:14.955521: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:15:14.955562: Inverter 0 scheduled discharge enable is False 2026-08-14 14:15:14.955705: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:15:14.955744: Inverter 0 discharge windows currently [] 2026-08-14 14:15:14.955771: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:15:14.955790: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:15:14.955807: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:15:15.011347: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 14:00:00 2026-08-14 14:15:15.011629: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 42%, target 100% 2026-08-14 14:15:15.011829: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 14:15:15.012076: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:15:15.012344: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:15:15.012480: No export window planned 2026-08-14 14:15:15.012698: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 14:15:15.012753: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:15:15.013006: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:15:15.013200: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 14:15:15.013279: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 14:15:15.013360: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 14:15:15.013535: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.013626: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.013696: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.013795: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.013856: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.013944: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.013997: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.014081: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.014150: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.014214: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.014269: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.014327: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.014384: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.014420: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.014523: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.014593: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.014794: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.014851: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.014920: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.014965: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.014991: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:15:15.015018: Inverter 0 count register writes 0 2026-08-14 14:15:15.038635: Total inverter register writes now 810 2026-08-14 14:15:15.072378: Info: Completed run status Charging 2026-08-14 14:15:15.079171: Info: record_status Charging target 42%-100.0% 2026-08-14 14:15:15.086194: Saved current settings to /config/predbat_config.json 2026-08-14 14:15:15.086460: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 14:15:15.362734: ML Component: Doing training... 2026-08-14 14:15:15.385596: ML Predictor: Curriculum training - capped to last 4 intermediate passes (starting at window=53.0 days) 2026-08-14 14:15:15.385740: ML Predictor: Curriculum training - 5 passes, window 53.0→56.0 days + final full pass (56.1 days) 2026-08-14 14:15:15.447254: ML Predictor: Curriculum pass 1/5: window=53.0 days (1272 hours of data) 2026-08-14 14:15:15.447398: ML Predictor: Starting initial training with 30 epochs 2026-08-14 14:15:16.078453: ML Predictor: Creating dataset with 1272 hours of training data, 48 hours validation 2026-08-14 14:15:20.840388: ML Predictor: Created 14976 training samples, 576 validation samples 2026-08-14 14:15:20.911074: ML Predictor: Normalization stats [fit] target(mean=0.0589 std=0.0472) load(mean=0.0589 std=0.0473) pv(mean=0.0000 std=0.0100) temp(mean=19.4861 std=4.4025) import_rate(mean=24.2395 std=1.9636) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1907 std=0.5232) 2026-08-14 14:15:35.375274: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0138 val_mae=0.0034 kWh val_bias=+0.0003 kWh (+0.4%) combined=0.0019 kWh ema_combined=0.0019 kWh 2026-08-14 14:15:50.131021: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0155 val_mae=0.0031 kWh val_bias=-0.0009 kWh (-1.6%) combined=0.0020 kWh ema_combined=0.0019 kWh 2026-08-14 14:15:58.787059: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:15:58.787698: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:15:58.787910: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:15:58.788285: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:15:58.788444: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:15:58.788622: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:15:58.788809: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:16:06.570120: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0124 val_mae=0.0029 kWh val_bias=-0.0010 kWh (-1.8%) combined=0.0021 kWh ema_combined=0.0020 kWh 2026-08-14 14:16:18.926966: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0116 val_mae=0.0026 kWh val_bias=-0.0009 kWh (-1.6%) combined=0.0022 kWh ema_combined=0.0020 kWh 2026-08-14 14:16:31.807831: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0104 val_mae=0.0027 kWh val_bias=-0.0011 kWh (-1.9%) combined=0.0019 kWh ema_combined=0.0020 kWh 2026-08-14 14:16:45.476740: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0123 val_mae=0.0025 kWh val_bias=-0.0005 kWh (-0.9%) combined=0.0014 kWh ema_combined=0.0018 kWh 2026-08-14 14:16:57.884094: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0125 val_mae=0.0024 kWh val_bias=+0.0006 kWh (+1.0%) combined=0.0017 kWh ema_combined=0.0018 kWh 2026-08-14 14:17:11.598691: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0091 val_mae=0.0024 kWh val_bias=+0.0005 kWh (+0.9%) combined=0.0017 kWh ema_combined=0.0018 kWh 2026-08-14 14:17:24.782174: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0084 val_mae=0.0021 kWh val_bias=-0.0009 kWh (-1.6%) combined=0.0019 kWh ema_combined=0.0018 kWh 2026-08-14 14:17:37.235889: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0087 val_mae=0.0021 kWh val_bias=-0.0003 kWh (-0.6%) combined=0.0011 kWh ema_combined=0.0016 kWh 2026-08-14 14:17:49.533528: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0072 val_mae=0.0019 kWh val_bias=-0.0005 kWh (-0.8%) combined=0.0014 kWh ema_combined=0.0015 kWh 2026-08-14 14:17:59.214289: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:17:59.214633: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:17:59.214678: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:17:59.214863: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:17:59.214916: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:17:59.214945: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:17:59.215069: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:18:02.572462: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0076 val_mae=0.0021 kWh val_bias=-0.0012 kWh (-2.0%) combined=0.0020 kWh ema_combined=0.0017 kWh 2026-08-14 14:18:07.141270: TemperatureAPI: Using coordinates latitude 53.4, longitude -2.2 2026-08-14 14:18:07.297797: TemperatureAPI: Successfully fetched temperature data from Open-Meteo API 2026-08-14 14:18:16.029994: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0071 val_mae=0.0018 kWh val_bias=+0.0005 kWh (+0.9%) combined=0.0015 kWh ema_combined=0.0016 kWh 2026-08-14 14:18:29.329454: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0061 val_mae=0.0017 kWh val_bias=-0.0006 kWh (-1.0%) combined=0.0014 kWh ema_combined=0.0016 kWh 2026-08-14 14:18:37.604209: Info: HAHistory: Pruning history data started. 2026-08-14 14:18:37.607644: Info: HAHistory: Pruning history data completed. 2026-08-14 14:18:42.922085: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0066 val_mae=0.0016 kWh val_bias=+0.0004 kWh (+0.7%) combined=0.0013 kWh ema_combined=0.0015 kWh 2026-08-14 14:18:57.025636: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0064 val_mae=0.0019 kWh val_bias=-0.0008 kWh (-1.5%) combined=0.0013 kWh ema_combined=0.0014 kWh 2026-08-14 14:19:10.460125: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0056 val_mae=0.0015 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0008 kWh ema_combined=0.0012 kWh 2026-08-14 14:19:25.106539: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0063 val_mae=0.0017 kWh val_bias=+0.0005 kWh (+0.9%) combined=0.0014 kWh ema_combined=0.0013 kWh 2026-08-14 14:19:39.008007: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0054 val_mae=0.0016 kWh val_bias=+0.0003 kWh (+0.5%) combined=0.0010 kWh ema_combined=0.0012 kWh 2026-08-14 14:19:53.744392: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0059 val_mae=0.0014 kWh val_bias=+0.0000 kWh (+0.1%) combined=0.0008 kWh ema_combined=0.0011 kWh 2026-08-14 14:20:00.613812: --------------- PredBat - update at 2026-08-14 14:20:00+01:00 with clock skew 0 minutes, minutes now 860 2026-08-14 14:20:00.614997: Saved current settings to /config/predbat_config.json 2026-08-14 14:20:00.615209: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 35.0 minutes 2026-08-14 14:20:00.615348: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 14:20:00.615488: Autoupdate: Currently up to date 2026-08-14 14:20:00.666992: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 14:20:00.667212: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 14:20:00.667485: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 14:20:00.668286: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 14:20:00.668482: Predbat mode is set to Control charge & discharge 2026-08-14 14:20:00.953074: Found 21602 load_today datapoints going back 27 days 2026-08-14 14:20:00.953373: Using load_power data to fill gaps in load_today data 2026-08-14 14:20:02.106206: Processing 721 30-minute periods for power integration 2026-08-14 14:20:02.406118: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 14:20:02.406397: Car charging hold False, threshold 6.0kWh 2026-08-14 14:20:02.406488: Current data so far today: load 13.95kWh, import 21.2kWh, export 0.0kWh, PV 0kWh 2026-08-14 14:20:02.420648: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 14:20:02.422167: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 14:20:02.422273: Standing charge is set to 49.98p 2026-08-14 14:20:02.481563: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 14:20:02.481699: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 14:20:02.482016: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 225.0 minutes 2026-08-14 14:20:02.482508: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 225.0 minutes 2026-08-14 14:20:02.489594: Loaded 95 datapoints of futurerate analysis 2026-08-14 14:20:02.616988: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3'] 2026-08-14 14:20:02.711453: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 14:20:02.717080: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 14:20:02.718128: Import rates: min 14.97p, max 53.39p, average 26.91p 2026-08-14 14:20:02.797107: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 14:20:02.797441: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 14:20:02.802127: High export rate found rates in range 99p to -99p 2026-08-14 14:20:03.028906: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 14:20:03.029121: Car 0 charging is not planned as it is not plugged in 2026-08-14 14:20:03.056664: Battery level now 6.73kWh, -1hr ago 2.86kWh, at midnight 2.43kWh, battery value change in the last hour 49.8p, change today 55.25p, rate_forward 12.86p 2026-08-14 14:20:03.057400: Last hour: net energy 5.05kWh, import 5.05kWh, export 0.0kWh, car 0kWh, load 0.5kWh, net cost 109.89p, import 109.89p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 14:20:03.172831: Today's energy total net 21.2kWh, import 21.2kWh, export 0.0kWh, cost 549.8p, import 499.82p, export 0.0p, carbon 0.0kg 2026-08-14 14:20:03.173084: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 14:20:03.393270: Using weighted-bucket historical load forecast over 14 days 2026-08-14 14:20:03.440929: Today's load divergence 127.44%, in-day adjustment 134.42%, damping 0.95x, yesterday 146.81% today 126.06% blend 40.28% 2026-08-14 14:20:03.441068: Today's predicted so far 8.49kWh with 0.0kWh car/iBoost excluded, 11.01kWh import ignored, and 8.49kWh forecast extra. 2026-08-14 14:20:03.441107: Today's actual load so far 13.92kWh with 0.0kWh car/iBoost excluded, and 11.01kWh import ignored. 2026-08-14 14:20:03.513095: Inverter 0: Type SK Sunsynk 2026-08-14 14:20:03.513188: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 14:20:03.513376: Reserve min: 7%, battery_min: 7% 2026-08-14 14:20:03.513449: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 14:20:03.513811: Inverter 0 SoC: 7.42kW 46%, current charge rate 5000W, current discharge rate 5250W, current battery power -4558W, current battery voltage 51.2V, grid power -6135W, load power 1139W, PV Power 0W 2026-08-14 14:20:03.514075: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:20:03.514221: Inverter 0 scheduled charge enable is True 2026-08-14 14:20:03.514283: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 14:20:03.514469: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 14:20:03.514655: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:20:03.514701: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:20:03.514814: Inverter 0 scheduled discharge enable is False 2026-08-14 14:20:03.515032: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:20:03.515079: Inverter 0 discharge windows currently [] 2026-08-14 14:20:03.515106: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:20:03.515174: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:20:03.515241: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:20:03.634351: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 14:20:03.634491: Plan was last updated on 2026-08-14 14:15:00+01:00 and is now 5.0 minutes old 2026-08-14 14:20:03.634778: Best charge window [ 14-08 14:00:00 - 14-08 15:00:00 @ 21.86p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 14:30:00 - 16-08 14:30:00 @ 15.44p 100% ] 2026-08-14 14:20:03.634837: Best export window [ ] 2026-08-14 14:20:03.636171: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 14:20:03.641511: Load divergence over 8.0 hours mean 357.78W, min 235.2W, max 1001.4W, std dev 109.63W, divergence 15.32% 2026-08-14 14:20:03.713050: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 14:20:03.713214: LoadML is_calculating True 2026-08-14 14:20:03.713253: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 14:20:03.767536: predict base end_record 08-15 14:35:00, final soc 13.15kWh, metric 1055.16p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 11:00:00, load 30.93kWh, PV 0.0kWh 2026-08-14 14:20:03.975556: Battery has 20.67 hours left - now at 7.42kWh 2026-08-14 14:20:04.068412: predict base10 end_record 08-15 14:35:00, final soc 11.14kWh, metric 1032.81p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 07:40:00, load 31.74kWh, PV 0.0kWh 2026-08-14 14:20:04.181405: predict best10 end_record 08-15 14:35:00, final soc 1.44kWh, metric 869.17p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:05:00, load 31.74kWh, PV 0.0kWh 2026-08-14 14:20:04.340386: predict best end_record 08-15 14:35:00, final soc 1.51kWh, metric 851.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:15:00, load 30.93kWh, PV 0.0kWh 2026-08-14 14:20:04.340491: Saving plan best values to HA entities 2026-08-14 14:20:04.653035: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 14:20:04.661338: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 14:20:04.669550: Best charging limit SoC's [16.0, 10.0, 16.0, 16.0]kWh, export []kWh gives import battery 7.31kWh, house 5.0kWh, export 0.0kWh, metric 851.75p, metric10 869.17p 2026-08-14 14:20:04.789754: Marginal costs baseline metric (no standing charge): 801.7622 2026-08-14 14:20:05.119319: Marginal energy costs matrix computed: min=22.09 max=37.34 2026-08-14 14:20:05.259414: Rate array import [{'start': 860, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2315, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 860, 'end': 2315, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 14:20:05.259930: - Your estimated bill for today is £7.00 and tomorrow is £7.44 2026-08-14 14:20:05.260132: - Import rates are cheap (21.7p - 22.2p) for the next 1 and three quarters hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 14:20:05.260177: - The battery is currently at 46% and is charging to 64% for the next 40 minutes. 2026-08-14 14:20:05.260200: - For the next 48 hours there will be no solar generation. 2026-08-14 14:20:05.260220: - You will run out of battery in 15 hours. 2026-08-14 14:20:05.260240: 2026-08-14 14:20:05.305053: Plan calculation took 1.67 seconds 2026-08-14 14:20:05.310482: No high rate period found 2026-08-14 14:20:05.479752: Import threshold used for optimisation was 22.25p 2026-08-14 14:20:05.601137: Low import rate windows [0: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 1: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 2: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 3: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 4: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 5: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 6: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 7: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 8: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 9: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 10: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 11: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 12: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 13: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 14: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 15: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 16: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 17: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 18: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 19: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 20: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 21: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 22: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 23: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 24: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 25: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 26: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 27: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 28: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 29: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 30: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 31: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 32: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 33: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 34: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 35: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 36: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 37: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 38: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 39: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 40: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 41: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 42: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 43: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 44: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 45: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 46: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 47: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 48: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 49: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 50: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 51: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 52: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 53: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 54: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 55: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 56: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 57: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 58: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 59: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 60: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 61: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 62: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 63: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 64: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 65: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 66: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 67: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 68: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 69: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 70: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 71: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 72: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 73: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 74: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 75: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 76: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 77: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 78: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 79: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 80: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 81: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 82: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 83: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 84: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 85: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 86: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 87: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 88: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 89: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 90: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 91: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 92: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 93: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 94: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 95: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19] 2026-08-14 14:20:05.631209: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 14:00:00 2026-08-14 14:20:05.631367: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 46%, target 100% 2026-08-14 14:20:05.631509: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 14:20:05.631692: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:20:05.631941: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:20:05.632045: No export window planned 2026-08-14 14:20:05.632174: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 14:20:05.632220: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:20:05.632392: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:20:05.632511: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 14:20:05.632563: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 14:20:05.632631: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 14:20:05.632759: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.632814: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.632852: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.632898: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.632990: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.633052: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.633089: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.633266: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.633355: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.633498: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.633557: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.633675: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.633730: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.633848: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.634020: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.634081: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.634204: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.634257: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.634373: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.634426: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.634542: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:20:05.634589: Inverter 0 count register writes 0 2026-08-14 14:20:05.670667: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 14:20:05.678181: Total inverter register writes now 810 2026-08-14 14:20:05.765365: Info: Completed run status Charging 2026-08-14 14:20:05.779575: Info: record_status Charging target 46%-100.0% 2026-08-14 14:20:05.794004: Saved current settings to /config/predbat_config.json 2026-08-14 14:20:05.794194: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 14:20:11.214055: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0055 val_mae=0.0014 kWh val_bias=-0.0003 kWh (-0.6%) combined=0.0010 kWh ema_combined=0.0011 kWh 2026-08-14 14:20:24.818503: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0054 val_mae=0.0014 kWh val_bias=-0.0004 kWh (-0.8%) combined=0.0009 kWh ema_combined=0.0010 kWh 2026-08-14 14:20:38.323764: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0050 val_mae=0.0014 kWh val_bias=-0.0004 kWh (-0.8%) combined=0.0010 kWh ema_combined=0.0010 kWh 2026-08-14 14:20:43.922479: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:20:43.922797: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:20:43.922852: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:20:43.923036: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:20:43.923087: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:20:43.923116: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:20:43.923175: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:20:52.259679: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0053 val_mae=0.0015 kWh val_bias=+0.0006 kWh (+1.0%) combined=0.0014 kWh ema_combined=0.0011 kWh 2026-08-14 14:21:08.247856: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0051 val_mae=0.0014 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0008 kWh ema_combined=0.0010 kWh 2026-08-14 14:21:26.542566: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0049 val_mae=0.0013 kWh val_bias=+0.0001 kWh (+0.3%) combined=0.0008 kWh ema_combined=0.0010 kWh 2026-08-14 14:21:44.474918: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0051 val_mae=0.0013 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0008 kWh ema_combined=0.0009 kWh 2026-08-14 14:21:58.293955: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0054 val_mae=0.0013 kWh val_bias=-0.0002 kWh (-0.4%) combined=0.0008 kWh ema_combined=0.0009 kWh 2026-08-14 14:22:11.645364: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0047 val_mae=0.0013 kWh val_bias=+0.0003 kWh (+0.5%) combined=0.0009 kWh ema_combined=0.0009 kWh 2026-08-14 14:22:24.106258: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0050 val_mae=0.0013 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0006 kWh ema_combined=0.0008 kWh 2026-08-14 14:22:24.113182: ML Predictor: Restored best weights from epoch with val_mae=0.0013 kWh val_bias=-0.0001 kWh (-0.1%) 2026-08-14 14:22:24.113451: ML Predictor: Training complete, final val_mae=0.0013 kWh val_bias=-0.0001 kWh (-0.1%) 2026-08-14 14:22:25.160785: ML Predictor: AR rollout over holdout: ar_mae=0.0013 kWh ar_bias=-0.0000 kWh (-0.0%) [drift vs teacher-forced: +0.0001 kWh] 2026-08-14 14:22:25.205555: ML Predictor: Curriculum pass 1/5 complete, val_mae=0.0013 kWh 2026-08-14 14:22:25.291342: ML Predictor: Curriculum pass 2/5: window=54.0 days (1296 hours of data) 2026-08-14 14:22:25.291609: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 14:22:25.829401: ML Predictor: Creating dataset with 1296 hours of training data, 48 hours validation 2026-08-14 14:22:30.120226: ML Predictor: Created 15264 training samples, 576 validation samples 2026-08-14 14:22:30.166585: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0472) load(mean=0.0589 std=0.0473) pv(mean=0.0000 std=0.0100) temp(mean=19.4875 std=4.4038) import_rate(mean=24.2399 std=1.9618) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1905 std=0.5233) 2026-08-14 14:22:30.355532: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 14:22:30.369582: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 14:22:30.395686: ML Predictor: Baseline (pre-finetune) val_mae=0.0023 kWh val_bias=-0.0004 kWh 2026-08-14 14:22:43.558246: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0081 val_mae=0.0023 kWh val_bias=-0.0000 kWh (-0.1%) combined=0.0014 kWh ema_combined=0.0014 kWh 2026-08-14 14:22:44.141352: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:22:44.141687: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:22:44.141841: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:22:44.142116: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:22:44.142258: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:22:44.142377: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:22:44.142488: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:22:56.801256: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0096 val_mae=0.0026 kWh val_bias=-0.0016 kWh (-3.0%) combined=0.0027 kWh ema_combined=0.0018 kWh 2026-08-14 14:23:10.355441: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0098 val_mae=0.0025 kWh val_bias=-0.0004 kWh (-0.8%) combined=0.0019 kWh ema_combined=0.0018 kWh 2026-08-14 14:23:23.629477: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0099 val_mae=0.0027 kWh val_bias=+0.0005 kWh (+0.9%) combined=0.0015 kWh ema_combined=0.0017 kWh 2026-08-14 14:23:36.804113: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0106 val_mae=0.0025 kWh val_bias=-0.0010 kWh (-2.0%) combined=0.0020 kWh ema_combined=0.0018 kWh 2026-08-14 14:23:48.287461: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0103 val_mae=0.0022 kWh val_bias=-0.0007 kWh (-1.4%) combined=0.0016 kWh ema_combined=0.0017 kWh 2026-08-14 14:24:00.066499: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0096 val_mae=0.0021 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0012 kWh ema_combined=0.0016 kWh 2026-08-14 14:24:12.804528: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0092 val_mae=0.0020 kWh val_bias=-0.0002 kWh (-0.4%) combined=0.0012 kWh ema_combined=0.0015 kWh 2026-08-14 14:24:26.070201: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0088 val_mae=0.0022 kWh val_bias=-0.0004 kWh (-0.8%) combined=0.0017 kWh ema_combined=0.0015 kWh 2026-08-14 14:24:39.335073: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0080 val_mae=0.0019 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0011 kWh ema_combined=0.0014 kWh 2026-08-14 14:24:44.518992: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:24:44.519450: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:24:44.519661: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:24:44.520764: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:24:44.520821: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:24:44.520847: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:24:44.520873: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:24:53.055633: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0065 val_mae=0.0018 kWh val_bias=-0.0006 kWh (-1.2%) combined=0.0016 kWh ema_combined=0.0015 kWh 2026-08-14 14:24:53.055772: ML Predictor: Early stopping at epoch 11 2026-08-14 14:24:53.056805: ML Predictor: Restored best weights from epoch with val_mae=0.0023 kWh val_bias=-0.0000 kWh (-0.1%) 2026-08-14 14:24:53.057128: ML Predictor: Training complete, final val_mae=0.0023 kWh val_bias=-0.0000 kWh (-0.1%) 2026-08-14 14:24:54.180727: ML Predictor: AR rollout over holdout: ar_mae=0.0028 kWh ar_bias=+0.0005 kWh (+0.9%) [drift vs teacher-forced: +0.0005 kWh] 2026-08-14 14:24:54.205765: ML Predictor: Curriculum pass 2/5 complete, val_mae=0.0023 kWh 2026-08-14 14:24:54.269868: ML Predictor: Curriculum pass 3/5: window=55.0 days (1320 hours of data) 2026-08-14 14:24:54.270199: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 14:24:54.901351: ML Predictor: Creating dataset with 1320 hours of training data, 48 hours validation 2026-08-14 14:24:59.169096: ML Predictor: Created 15552 training samples, 576 validation samples 2026-08-14 14:24:59.215306: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0472) load(mean=0.0589 std=0.0473) pv(mean=0.0000 std=0.0100) temp(mean=19.4982 std=4.4110) import_rate(mean=24.2408 std=1.9586) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1903 std=0.5235) 2026-08-14 14:24:59.288843: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 14:24:59.302586: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 14:24:59.330377: ML Predictor: Baseline (pre-finetune) val_mae=0.0052 kWh val_bias=-0.0023 kWh 2026-08-14 14:25:00.820773: --------------- PredBat - update at 2026-08-14 14:25:00+01:00 with clock skew 0 minutes, minutes now 865 2026-08-14 14:25:00.821858: Saved current settings to /config/predbat_config.json 2026-08-14 14:25:00.822009: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 40.0 minutes 2026-08-14 14:25:00.822099: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 14:25:00.822195: Autoupdate: Currently up to date 2026-08-14 14:25:00.857043: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 14:25:00.857217: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 14:25:00.857590: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 14:25:00.858319: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 14:25:00.858543: Predbat mode is set to Control charge & discharge 2026-08-14 14:25:01.081033: Found 21602 load_today datapoints going back 27 days 2026-08-14 14:25:01.081406: Using load_power data to fill gaps in load_today data 2026-08-14 14:25:02.037897: Processing 721 30-minute periods for power integration 2026-08-14 14:25:02.380215: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 14:25:02.381179: Car charging hold False, threshold 6.0kWh 2026-08-14 14:25:02.381264: Current data so far today: load 14.0kWh, import 21.2kWh, export 0.0kWh, PV 0kWh 2026-08-14 14:25:02.402900: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 14:25:02.404256: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 14:25:02.405737: Standing charge is set to 49.98p 2026-08-14 14:25:02.458547: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 14:25:02.458663: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 14:25:02.458854: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 230.0 minutes 2026-08-14 14:25:02.459265: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 230.0 minutes 2026-08-14 14:25:02.465918: Loaded 95 datapoints of futurerate analysis 2026-08-14 14:25:02.555629: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3'] 2026-08-14 14:25:02.709990: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 14:25:02.718146: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 14:25:02.718575: Import rates: min 14.97p, max 53.39p, average 26.9p 2026-08-14 14:25:02.795463: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 14:25:02.796729: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 14:25:02.798072: High export rate found rates in range 99p to -99p 2026-08-14 14:25:02.882708: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 14:25:02.882911: Car 0 charging is not planned as it is not plugged in 2026-08-14 14:25:02.896382: Battery level now 7.42kWh, -1hr ago 3.56kWh, at midnight 2.43kWh, battery value change in the last hour 49.59p, change today 64.1p, rate_forward 12.86p 2026-08-14 14:25:02.896993: Last hour: net energy 4.6kWh, import 4.6kWh, export 0.0kWh, car 0kWh, load 0.5kWh, net cost 100.06p, import 100.06p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 14:25:02.968439: Today's energy total net 21.2kWh, import 21.2kWh, export 0.0kWh, cost 549.8p, import 499.82p, export 0.0p, carbon 0.0kg 2026-08-14 14:25:02.968593: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 14:25:03.080899: Using weighted-bucket historical load forecast over 14 days 2026-08-14 14:25:03.113811: Today's load divergence 127.36%, in-day adjustment 134.3%, damping 0.95x, yesterday 146.81% today 125.99% blend 39.93% 2026-08-14 14:25:03.114062: Today's predicted so far 8.52kWh with 0.0kWh car/iBoost excluded, 11.13kWh import ignored, and 8.52kWh forecast extra. 2026-08-14 14:25:03.114283: Today's actual load so far 13.93kWh with 0.0kWh car/iBoost excluded, and 11.13kWh import ignored. 2026-08-14 14:25:03.186447: Inverter 0: Type SK Sunsynk 2026-08-14 14:25:03.186658: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 14:25:03.186924: Reserve min: 7%, battery_min: 7% 2026-08-14 14:25:03.187121: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 14:25:03.187516: Inverter 0 SoC: 7.42kW 46%, current charge rate 5000W, current discharge rate 5250W, current battery power -4557W, current battery voltage 51.2V, grid power -6017W, load power 1019W, PV Power 0W 2026-08-14 14:25:03.187818: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:25:03.188009: Inverter 0 scheduled charge enable is True 2026-08-14 14:25:03.188163: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 14:25:03.188361: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 14:25:03.188604: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:25:03.188748: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:25:03.188884: Inverter 0 scheduled discharge enable is False 2026-08-14 14:25:03.189170: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:25:03.189300: Inverter 0 discharge windows currently [] 2026-08-14 14:25:03.189406: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:25:03.189507: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:25:03.189607: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:25:03.298550: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 14:25:03.298666: Plan was last updated on 2026-08-14 14:15:00+01:00 and is now 10.0 minutes old 2026-08-14 14:25:03.298885: Best charge window [ 14-08 14:00:00 - 14-08 15:00:00 @ 21.86p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 14:30:00 - 16-08 14:30:00 @ 15.44p 100% ] 2026-08-14 14:25:03.298927: Best export window [ ] 2026-08-14 14:25:03.299688: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 14:25:03.302429: Load divergence over 8.0 hours mean 359.35W, min 247.2W, max 1000.8W, std dev 106.7W, divergence 14.85% 2026-08-14 14:25:03.383785: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 14:25:03.384359: LoadML is_calculating True 2026-08-14 14:25:03.384412: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 14:25:03.435627: predict base end_record 08-15 14:40:00, final soc 13.54kWh, metric 1058.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:30:00, load 30.96kWh, PV 0.0kWh 2026-08-14 14:25:03.616329: Battery has 20.08 hours left - now at 7.42kWh 2026-08-14 14:25:03.669380: predict base10 end_record 08-15 14:40:00, final soc 11.47kWh, metric 1036.88p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:55:00, load 31.76kWh, PV 0.0kWh 2026-08-14 14:25:03.787455: predict best10 end_record 08-15 14:40:00, final soc 1.77kWh, metric 873.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:05:00, load 31.76kWh, PV 0.0kWh 2026-08-14 14:25:03.978099: predict best end_record 08-15 14:40:00, final soc 1.9kWh, metric 856.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 30.96kWh, PV 0.0kWh 2026-08-14 14:25:03.978240: Saving plan best values to HA entities 2026-08-14 14:25:04.363068: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 14:25:04.372725: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 14:25:04.381577: Best charging limit SoC's [16.0, 10.0, 16.0, 16.0]kWh, export []kWh gives import battery 7.49kWh, house 5.15kWh, export 0.0kWh, metric 856.75p, metric10 873.75p 2026-08-14 14:25:04.502069: Marginal costs baseline metric (no standing charge): 806.7686 2026-08-14 14:25:04.909284: Marginal energy costs matrix computed: min=22.08 max=37.0 2026-08-14 14:25:05.065232: Rate array import [{'start': 865, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2320, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 865, 'end': 2320, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 14:25:05.065807: - Your estimated bill for today is £6.94 and tomorrow is £7.48 2026-08-14 14:25:05.065881: - Import rates are cheap (21.7p - 22.2p) for the next 1 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 14:25:05.065926: - The battery is currently at 46% and is charging to 64% for the next 35 minutes. 2026-08-14 14:25:05.065978: - For the next 48 hours there will be no solar generation. 2026-08-14 14:25:05.066019: - You will run out of battery in 15 hours. 2026-08-14 14:25:05.066048: 2026-08-14 14:25:05.220436: Plan calculation took 1.92 seconds 2026-08-14 14:25:05.223864: No high rate period found 2026-08-14 14:25:05.277736: Import threshold used for optimisation was 22.25p 2026-08-14 14:25:05.361333: Low import rate windows [0: 08-14 14:00:00 - 08-14 14:30:00 @ 21.7, 1: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 2: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 3: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 4: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 5: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 6: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 7: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 8: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 9: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 10: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 11: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 12: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 13: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 14: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 15: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 16: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 17: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 18: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 19: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 20: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 21: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 22: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 23: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 24: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 25: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 26: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 27: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 28: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 29: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 30: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 31: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 32: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 33: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 34: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 35: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 36: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 37: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 38: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 39: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 40: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 41: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 42: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 43: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 44: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 45: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 46: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 47: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 48: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 49: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 50: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 51: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 52: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 53: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 54: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 55: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 56: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 57: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 58: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 59: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 60: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 61: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 62: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 63: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 64: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 65: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 66: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 67: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 68: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 69: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 70: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 71: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 72: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 73: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 74: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 75: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 76: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 77: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 78: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 79: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 80: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 81: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 82: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 83: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 84: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 85: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 86: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 87: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 88: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 89: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 90: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 91: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 92: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 93: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 94: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 95: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19] 2026-08-14 14:25:05.374133: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 14:00:00 2026-08-14 14:25:05.374304: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 46%, target 100% 2026-08-14 14:25:05.374454: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 14:25:05.374696: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:25:05.375013: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:25:05.375190: No export window planned 2026-08-14 14:25:05.375381: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 14:25:05.375453: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:25:05.375673: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:25:05.375797: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 14:25:05.375872: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 14:25:05.375964: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 14:25:05.376074: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.376152: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.376214: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.376272: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.376344: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.376415: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.376488: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.376581: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.376657: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.376725: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.376798: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.376870: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.376942: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.377060: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.377206: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.377286: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.377327: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.377364: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.377405: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.377446: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.377491: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:05.377536: Inverter 0 count register writes 0 2026-08-14 14:25:05.420462: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 14:25:05.420665: Recompute is saving previous plan... 2026-08-14 14:25:05.425131: Best charge window [ 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 100%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 100%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 100%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 100%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 100%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 100%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 100%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 100%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 100%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 100%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 100%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 100%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 100%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 100%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 100%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 100%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 100%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 100%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 100%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 100%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 100%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 100%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 100%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 100%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 100%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 100%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 100%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 100%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 100%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 100%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 100%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 100%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 100%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 100%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 100%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 100%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 100%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100% ] 2026-08-14 14:25:05.425255: Best export window [ ] 2026-08-14 14:25:05.426206: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 14:25:05.430061: Load divergence over 8.0 hours mean 359.35W, min 247.2W, max 1000.8W, std dev 106.7W, divergence 14.85% 2026-08-14 14:25:05.468747: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 14:25:05.468875: LoadML is_calculating True 2026-08-14 14:25:05.468904: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 14:25:05.489269: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 14:25:05.490731: Optimise levels pass started at 2026-08-14 14:25:05 2026-08-14 14:25:05.490794: Optimise all windows, total charge 95 export 1 2026-08-14 14:25:09.872619: >> Region optimisation pass width 960 gives best_metric 1047.67p, best_cost 1054.94p, best_cycle 34.83kWh, best_import 27.81kWh 2026-08-14 14:25:12.872896: >> Region optimisation pass width 480 gives best_metric 1045.74p, best_cost 1054.67p, best_cycle 37.13kWh, best_import 27.97kWh 2026-08-14 14:25:14.122458: >> Region optimisation pass width 240 gives best_metric 1045.74p, best_cost 1054.67p, best_cycle 37.13kWh, best_import 27.97kWh 2026-08-14 14:25:17.247218: >> Region optimisation pass width 120 gives best_metric 1045.74p, best_cost 1054.67p, best_cycle 37.13kWh, best_import 27.97kWh 2026-08-14 14:25:17.247850: Calculated end_record as 08-15 14:30:00 based on best_price 22.02p, next_charge_start 08-14 14:30:00, max_windows 48 2026-08-14 14:25:17.248076: Optimise levels pass ended at 2026-08-14 14:25:17, duration 11.8 seconds tried 353 combinations 2026-08-14 14:25:17.248276: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1045.74p, best_keep 0kWh, best_cycle 37.13kWh, best_carbon 0kg, best_import 27.97kWh 2026-08-14 14:25:17.278059: Starting detailed optimisation end_record 08-15 14:30:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 15.19p with charge limits [16.0, 0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9.25, 9.25, 9.25, 9.25, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 14:25:35.229423: Tweak plan optimisation started metric 781.41p, cost 792.96p 2026-08-14 14:25:35.860155: Tweak optimisation finished metric 781.41p, cost 792.96p, metric_keep 0kWh, cycle 16.2kWh, carbon 0kg, import 11.72kWh, changed 8 window(s) 2026-08-14 14:25:35.897023: Swap charge optimisation started metric 781.41p, cost 792.96p, min_improvement_swap 0.1p 2026-08-14 14:25:37.514506: Swap charge optimisation finished metric 781.41p, cost 792.96p 2026-08-14 14:25:37.580822: Raw charge windows [ 14-08 14:00:00 - 14-08 14:30:00 @ 21.7p 100%, 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100% ] reserve 1.12 2026-08-14 14:25:37.581482: Unclipped charge windows [ 14-08 14:00:00 - 14-08 15:00:00 @ 21.86p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 14:30:00 - 16-08 14:30:00 @ 15.44p 100% ] reserve 1.12 2026-08-14 14:25:37.581901: Unfiltered charge windows [ 14-08 14:00:00 - 14-08 15:00:00 @ 21.86p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 14:30:00 - 16-08 14:30:00 @ 15.44p 100% ] reserve 1.12 2026-08-14 14:25:37.582244: Filtered charge windows [ 14-08 14:00:00 - 14-08 15:00:00 @ 21.86p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 14:30:00 - 16-08 14:30:00 @ 15.44p 100% ] reserve 1.12 2026-08-14 14:25:37.622037: Previous plan best metric is 781.41 (cost 792.96) and new plan best metric is 781.41 (cost 792.96) 2026-08-14 14:25:37.622334: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 14:25:37.622491: Plan valid is now true after recompute was False 2026-08-14 14:25:37.657687: predict base end_record 08-15 14:30:00, final soc 12.76kWh, metric 1044.7p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:30:00, load 30.87kWh, PV 0.0kWh 2026-08-14 14:25:37.862100: Battery has 20.08 hours left - now at 7.42kWh 2026-08-14 14:25:37.931885: predict base10 end_record 08-15 14:30:00, final soc 10.82kWh, metric 1025.08p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:55:00, load 31.67kWh, PV 0.0kWh 2026-08-14 14:25:38.066880: predict best10 end_record 08-15 14:30:00, final soc 1.12kWh, metric 861.96p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:05:00, load 31.67kWh, PV 0.0kWh 2026-08-14 14:25:38.228912: predict best end_record 08-15 14:30:00, final soc 1.12kWh, metric 842.94p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 30.87kWh, PV 0.0kWh 2026-08-14 14:25:38.229045: Saving plan best values to HA entities 2026-08-14 14:25:38.512923: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 14:25:38.519509: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 14:25:38.538339: Best charging limit SoC's [16.0, 10.0, 16.0, 16.0]kWh, export []kWh gives import battery 6.57kWh, house 5.15kWh, export 0.0kWh, metric 842.94p, metric10 861.96p 2026-08-14 14:25:38.683537: Marginal costs baseline metric (no standing charge): 792.9567 2026-08-14 14:25:39.170515: Marginal energy costs matrix computed: min=22.08 max=37.0 2026-08-14 14:25:39.272572: Rate array import [{'start': 865, 'end': 960, 'rate': 'cheap', 'range': '(21.7p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2310, 'rate': 'cheap', 'range': '(15.2p - 27.2p)'}] export [{'start': 865, 'end': 2310, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 14:25:39.273298: - Your estimated bill for today is £6.94 and tomorrow is £7.48 2026-08-14 14:25:39.273523: - Import rates are cheap (21.7p - 22.2p) for the next 1 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 14:25:39.274673: - The battery is currently at 46% and is charging to 64% for the next 35 minutes. 2026-08-14 14:25:39.274878: - For the next 48 hours there will be no solar generation. 2026-08-14 14:25:39.275240: - You will run out of battery in 15 hours. 2026-08-14 14:25:39.275405: 2026-08-14 14:25:39.320816: Plan calculation took 33.90 seconds 2026-08-14 14:25:39.321289: Inverter 0: Type SK Sunsynk 2026-08-14 14:25:39.321472: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 14:25:39.321806: Reserve min: 7%, battery_min: 7% 2026-08-14 14:25:39.322004: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 14:25:39.322466: Inverter 0 SoC: 7.77kW 49%, current charge rate 5000W, current discharge rate 5250W, current battery power -4559W, current battery voltage 51.2V, grid power -6022W, load power 1025W, PV Power 0W 2026-08-14 14:25:39.322778: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:25:39.322991: Inverter 0 scheduled charge enable is True 2026-08-14 14:25:39.323172: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 14:25:39.323421: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 14:25:39.323711: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:25:39.323862: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:25:39.324014: Inverter 0 scheduled discharge enable is False 2026-08-14 14:25:39.324314: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:25:39.324467: Inverter 0 discharge windows currently [] 2026-08-14 14:25:39.324595: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:25:39.324717: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:25:39.324838: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:25:39.464484: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 14:00:00 2026-08-14 14:25:39.464668: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 49%, target 100% 2026-08-14 14:25:39.464815: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 14:25:39.465032: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:25:39.465291: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:25:39.465394: No export window planned 2026-08-14 14:25:39.465526: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 14:25:39.465572: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:25:39.465864: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:25:39.466058: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 14:25:39.466124: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 14:25:39.466313: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 14:25:39.466499: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.466563: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.466701: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.466785: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.466923: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.467019: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.467114: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.467258: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.467319: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.467457: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.467556: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.467615: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.467742: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.467838: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.467986: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.468057: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.468254: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.468378: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.468517: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.468580: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.468712: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:25:39.468763: Inverter 0 count register writes 0 2026-08-14 14:25:39.510690: Total inverter register writes now 810 2026-08-14 14:25:39.563009: Info: Completed run status Charging 2026-08-14 14:25:39.572648: Info: record_status Charging target 49%-100.0% 2026-08-14 14:25:39.583147: Saved current settings to /config/predbat_config.json 2026-08-14 14:25:39.583369: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 14:25:43.531440: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0099 val_mae=0.0040 kWh val_bias=-0.0021 kWh (-3.0%) combined=0.0031 kWh ema_combined=0.0031 kWh 2026-08-14 14:25:57.789880: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0105 val_mae=0.0050 kWh val_bias=-0.0012 kWh (-1.8%) combined=0.0026 kWh ema_combined=0.0029 kWh 2026-08-14 14:26:11.497691: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0093 val_mae=0.0036 kWh val_bias=+0.0005 kWh (+0.7%) combined=0.0023 kWh ema_combined=0.0027 kWh 2026-08-14 14:26:13.729467: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:26:13.730872: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:26:13.730949: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:26:13.731126: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:26:13.731217: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:26:13.731347: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:26:13.731394: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:26:25.382658: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0109 val_mae=0.0043 kWh val_bias=+0.0015 kWh (+2.2%) combined=0.0022 kWh ema_combined=0.0026 kWh 2026-08-14 14:26:38.008188: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0111 val_mae=0.0039 kWh val_bias=+0.0001 kWh (+0.1%) combined=0.0026 kWh ema_combined=0.0026 kWh 2026-08-14 14:26:51.244998: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0092 val_mae=0.0036 kWh val_bias=-0.0024 kWh (-3.3%) combined=0.0037 kWh ema_combined=0.0029 kWh 2026-08-14 14:27:05.518591: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0114 val_mae=0.0040 kWh val_bias=+0.0001 kWh (+0.1%) combined=0.0022 kWh ema_combined=0.0027 kWh 2026-08-14 14:27:20.069004: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0102 val_mae=0.0031 kWh val_bias=-0.0010 kWh (-1.4%) combined=0.0021 kWh ema_combined=0.0025 kWh 2026-08-14 14:27:33.746250: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0092 val_mae=0.0037 kWh val_bias=-0.0020 kWh (-2.9%) combined=0.0028 kWh ema_combined=0.0026 kWh 2026-08-14 14:27:46.603293: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0084 val_mae=0.0031 kWh val_bias=-0.0004 kWh (-0.6%) combined=0.0017 kWh ema_combined=0.0023 kWh 2026-08-14 14:27:59.919124: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0078 val_mae=0.0030 kWh val_bias=-0.0003 kWh (-0.4%) combined=0.0015 kWh ema_combined=0.0021 kWh 2026-08-14 14:28:11.725720: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0075 val_mae=0.0030 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0020 kWh ema_combined=0.0021 kWh 2026-08-14 14:28:14.163437: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:28:14.163911: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:28:14.164092: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:28:14.164408: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:28:14.164531: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:28:14.164687: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:28:14.164836: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:28:24.708438: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0074 val_mae=0.0030 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0019 kWh ema_combined=0.0020 kWh 2026-08-14 14:28:39.246649: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0067 val_mae=0.0024 kWh val_bias=+0.0003 kWh (+0.4%) combined=0.0015 kWh ema_combined=0.0019 kWh 2026-08-14 14:28:53.966380: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0064 val_mae=0.0027 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0014 kWh ema_combined=0.0017 kWh 2026-08-14 14:29:10.193438: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0068 val_mae=0.0025 kWh val_bias=+0.0003 kWh (+0.5%) combined=0.0015 kWh ema_combined=0.0017 kWh 2026-08-14 14:29:24.271500: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0065 val_mae=0.0025 kWh val_bias=-0.0008 kWh (-1.2%) combined=0.0015 kWh ema_combined=0.0016 kWh 2026-08-14 14:29:38.952424: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0065 val_mae=0.0027 kWh val_bias=-0.0009 kWh (-1.3%) combined=0.0017 kWh ema_combined=0.0016 kWh 2026-08-14 14:29:54.036525: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0071 val_mae=0.0022 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0012 kWh ema_combined=0.0015 kWh 2026-08-14 14:30:00.502420: --------------- PredBat - update at 2026-08-14 14:30:00+01:00 with clock skew 0 minutes, minutes now 870 2026-08-14 14:30:00.503375: Saved current settings to /config/predbat_config.json 2026-08-14 14:30:00.503500: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 45.0 minutes 2026-08-14 14:30:00.503606: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 14:30:00.503685: Autoupdate: Currently up to date 2026-08-14 14:30:00.531808: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 14:30:00.532133: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 14:30:00.532401: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 14:30:00.533096: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 14:30:00.533284: Predbat mode is set to Control charge & discharge 2026-08-14 14:30:00.919137: Found 21602 load_today datapoints going back 28 days 2026-08-14 14:30:00.919322: Using load_power data to fill gaps in load_today data 2026-08-14 14:30:02.294430: Processing 721 30-minute periods for power integration 2026-08-14 14:30:02.513296: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 14:30:02.513624: Car charging hold False, threshold 6.0kWh 2026-08-14 14:30:02.513910: Current data so far today: load 14.2kWh, import 22.2kWh, export 0.0kWh, PV 0kWh 2026-08-14 14:30:02.532795: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 14:30:02.533947: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 14:30:02.534188: Standing charge is set to 49.98p 2026-08-14 14:30:02.699695: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 14:30:02.699821: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 14:30:02.700039: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 235.0 minutes 2026-08-14 14:30:02.700537: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 235.0 minutes 2026-08-14 14:30:02.707182: Loaded 95 datapoints of futurerate analysis 2026-08-14 14:30:02.947821: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3'] 2026-08-14 14:30:03.016915: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 14:30:03.022047: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 14:30:03.022520: Import rates: min 14.97p, max 53.39p, average 26.89p 2026-08-14 14:30:03.059796: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 14:30:03.059995: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 14:30:03.061107: High export rate found rates in range 99p to -99p 2026-08-14 14:30:03.170765: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 14:30:03.170895: Car 0 charging is not planned as it is not plugged in 2026-08-14 14:30:03.187305: Battery level now 7.42kWh, -1hr ago 3.56kWh, at midnight 2.43kWh, battery value change in the last hour 49.59p, change today 64.1p, rate_forward 12.86p 2026-08-14 14:30:03.187696: Last hour: net energy 5.15kWh, import 5.15kWh, export 0.0kWh, car 0kWh, load 0.65kWh, net cost 111.94p, import 111.94p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 14:30:03.300360: Today's energy total net 22.2kWh, import 22.2kWh, export 0.0kWh, cost 571.5p, import 521.52p, export 0.0p, carbon 0.0kg 2026-08-14 14:30:03.300527: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 14:30:03.428106: Using weighted-bucket historical load forecast over 14 days 2026-08-14 14:30:03.469845: Today's load divergence 128.11%, in-day adjustment 134.67%, damping 0.95x, yesterday 146.81% today 126.71% blend 39.58% 2026-08-14 14:30:03.469979: Today's predicted so far 8.61kWh with 0.0kWh car/iBoost excluded, 11.84kWh import ignored, and 8.61kWh forecast extra. 2026-08-14 14:30:03.470336: Today's actual load so far 14.23kWh with 0.0kWh car/iBoost excluded, and 11.84kWh import ignored. 2026-08-14 14:30:03.543211: Inverter 0: Type SK Sunsynk 2026-08-14 14:30:03.543360: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 14:30:03.543862: Reserve min: 7%, battery_min: 7% 2026-08-14 14:30:03.544145: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 14:30:03.544832: Inverter 0 SoC: 7.77kW 49%, current charge rate 5000W, current discharge rate 5250W, current battery power -4559W, current battery voltage 51.2V, grid power -6094W, load power 1098W, PV Power 0W 2026-08-14 14:30:03.545268: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:30:03.545603: Inverter 0 scheduled charge enable is True 2026-08-14 14:30:03.545764: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 14:30:03.546203: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 14:30:03.547160: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:30:03.547232: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:30:03.547423: Inverter 0 scheduled discharge enable is False 2026-08-14 14:30:03.547787: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:30:03.547893: Inverter 0 discharge windows currently [] 2026-08-14 14:30:03.547998: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:30:03.548084: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:30:03.548207: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:30:03.744450: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 14:30:03.744623: Plan was last updated on 2026-08-14 14:25:00+01:00 and is now 5.0 minutes old 2026-08-14 14:30:03.745050: Best charge window [ 14-08 14:00:00 - 14-08 15:00:00 @ 21.86p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 14:30:00 - 16-08 14:30:00 @ 15.44p 100% ] 2026-08-14 14:30:03.745115: Best export window [ ] 2026-08-14 14:30:03.745917: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 14:30:03.750331: Load divergence over 8.0 hours mean 360.65W, min 239.4W, max 1011.6W, std dev 108.38W, divergence 15.03% 2026-08-14 14:30:03.793945: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 14:30:03.794114: LoadML is_calculating True 2026-08-14 14:30:03.794161: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 14:30:03.882304: predict base end_record 08-15 14:35:00, final soc 13.15kWh, metric 1063.63p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:30:00, load 31.05kWh, PV 0.0kWh 2026-08-14 14:30:04.136356: Battery has 20.0 hours left - now at 7.77kWh 2026-08-14 14:30:04.214849: predict base10 end_record 08-15 14:35:00, final soc 11.14kWh, metric 1043.13p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 07:00:00, load 31.85kWh, PV 0.0kWh 2026-08-14 14:30:04.440001: predict best10 end_record 08-15 14:35:00, final soc 1.44kWh, metric 879.96p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:10:00, load 31.85kWh, PV 0.0kWh 2026-08-14 14:30:04.614952: predict best end_record 08-15 14:35:00, final soc 1.51kWh, metric 862.07p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:50:00, load 31.05kWh, PV 0.0kWh 2026-08-14 14:30:04.615182: Saving plan best values to HA entities 2026-08-14 14:30:04.988750: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 14:30:05.018679: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 14:30:05.026585: Best charging limit SoC's [16.0, 10.0, 16.0, 16.0]kWh, export []kWh gives import battery 6.56kWh, house 5.18kWh, export 0.0kWh, metric 862.07p, metric10 879.96p 2026-08-14 14:30:05.124683: Marginal costs baseline metric (no standing charge): 812.0841 2026-08-14 14:30:05.548769: Marginal energy costs matrix computed: min=22.13 max=36.58 2026-08-14 14:30:05.715183: Rate array import [{'start': 870, 'end': 960, 'rate': 'cheap', 'range': '(22.0p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2315, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 870, 'end': 2315, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 14:30:05.715767: - Your estimated bill for today is £7.06 and tomorrow is £7.47 2026-08-14 14:30:05.715830: - Import rates are cheap (22.0p - 22.2p) for the next 1 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 14:30:05.715868: - The battery is currently at 49% and is charging to 64% for the next 30 minutes. 2026-08-14 14:30:05.715902: - For the next 48 hours there will be no solar generation. 2026-08-14 14:30:05.716029: - You will run out of battery in 15 hours. 2026-08-14 14:30:05.716169: 2026-08-14 14:30:05.779301: Plan calculation took 2.03 seconds 2026-08-14 14:30:05.784320: No high rate period found 2026-08-14 14:30:05.927171: Import threshold used for optimisation was 22.25p 2026-08-14 14:30:06.252799: Low import rate windows [0: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 1: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 2: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 3: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 4: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 5: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 6: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 7: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 8: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 9: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 10: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 11: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 12: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 13: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 14: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 15: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 16: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 17: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 18: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 19: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 20: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 21: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 22: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 23: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 24: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 25: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 26: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 27: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 28: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 29: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 30: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 31: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 32: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 33: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 34: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 35: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 36: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 37: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 38: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 39: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 40: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 41: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 42: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 43: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 44: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 45: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 46: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 47: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 48: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 49: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 50: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 51: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 52: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 53: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 54: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 55: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 56: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 57: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 58: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 59: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 60: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 61: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 62: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 63: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 64: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 65: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 66: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 67: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 68: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 69: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 70: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 71: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 72: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 73: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 74: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 75: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 76: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 77: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 78: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 79: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 80: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 81: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 82: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 83: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 84: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 85: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 86: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 87: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 88: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 89: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 90: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 91: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 92: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 93: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 94: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19] 2026-08-14 14:30:06.272593: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 14:00:00 2026-08-14 14:30:06.273012: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 49%, target 100% 2026-08-14 14:30:06.273383: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 14:30:06.273741: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:30:06.274134: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:30:06.274380: No export window planned 2026-08-14 14:30:06.274669: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 14:30:06.274856: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:30:06.275293: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:30:06.275600: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 14:30:06.275769: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 14:30:06.275927: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 14:30:06.276198: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.276423: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.276633: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.276844: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.277061: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.277224: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.277451: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.277637: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.277839: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.278038: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.278194: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.278399: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.278596: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.278740: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.278919: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.279058: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.279182: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.279350: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.279492: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.279650: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.279776: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:30:06.279891: Inverter 0 count register writes 0 2026-08-14 14:30:06.316375: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 14:30:06.340655: Total inverter register writes now 810 2026-08-14 14:30:06.423876: Info: Completed run status Charging 2026-08-14 14:30:06.438308: Info: record_status Charging target 49%-100.0% 2026-08-14 14:30:06.463588: Saved current settings to /config/predbat_config.json 2026-08-14 14:30:06.463975: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 14:30:20.952308: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0054 val_mae=0.0022 kWh val_bias=+0.0000 kWh (+0.0%) combined=0.0014 kWh ema_combined=0.0015 kWh 2026-08-14 14:30:35.459992: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0061 val_mae=0.0026 kWh val_bias=-0.0011 kWh (-1.5%) combined=0.0015 kWh ema_combined=0.0015 kWh 2026-08-14 14:30:43.675077: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:30:43.675454: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:30:43.675523: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:30:43.675683: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:30:43.675727: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:30:43.675749: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:30:43.675899: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:30:49.322364: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0055 val_mae=0.0020 kWh val_bias=-0.0007 kWh (-1.0%) combined=0.0014 kWh ema_combined=0.0015 kWh 2026-08-14 14:31:03.541125: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0050 val_mae=0.0023 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0015 kWh ema_combined=0.0015 kWh 2026-08-14 14:31:17.610008: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0053 val_mae=0.0020 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0012 kWh ema_combined=0.0014 kWh 2026-08-14 14:31:30.905657: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0055 val_mae=0.0021 kWh val_bias=-0.0008 kWh (-1.2%) combined=0.0014 kWh ema_combined=0.0014 kWh 2026-08-14 14:31:43.399583: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0050 val_mae=0.0021 kWh val_bias=-0.0009 kWh (-1.2%) combined=0.0014 kWh ema_combined=0.0014 kWh 2026-08-14 14:31:58.783911: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0053 val_mae=0.0019 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0011 kWh ema_combined=0.0013 kWh 2026-08-14 14:32:16.754459: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0049 val_mae=0.0019 kWh val_bias=-0.0005 kWh (-0.8%) combined=0.0012 kWh ema_combined=0.0013 kWh 2026-08-14 14:32:31.444484: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0052 val_mae=0.0019 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0010 kWh ema_combined=0.0012 kWh 2026-08-14 14:32:44.092671: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:32:44.093001: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:32:44.093052: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:32:44.093200: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:32:44.093242: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:32:44.093264: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:32:44.093282: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:32:44.924844: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0052 val_mae=0.0019 kWh val_bias=-0.0003 kWh (-0.4%) combined=0.0010 kWh ema_combined=0.0011 kWh 2026-08-14 14:32:44.933787: ML Predictor: Restored best weights from epoch with val_mae=0.0019 kWh val_bias=-0.0003 kWh (-0.4%) 2026-08-14 14:32:44.934199: ML Predictor: Training complete, final val_mae=0.0019 kWh val_bias=-0.0003 kWh (-0.4%) 2026-08-14 14:32:46.301414: ML Predictor: AR rollout over holdout: ar_mae=0.0020 kWh ar_bias=-0.0002 kWh (-0.3%) [drift vs teacher-forced: +0.0001 kWh] 2026-08-14 14:32:46.310616: ML Predictor: Curriculum pass 3/5 complete, val_mae=0.0019 kWh 2026-08-14 14:32:46.402863: ML Predictor: Curriculum pass 4/5: window=56.0 days (1344 hours of data) 2026-08-14 14:32:46.403178: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 14:32:47.083876: ML Predictor: Creating dataset with 1344 hours of training data, 48 hours validation 2026-08-14 14:32:51.778602: ML Predictor: Created 15840 training samples, 576 validation samples 2026-08-14 14:32:51.826531: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0472) load(mean=0.0589 std=0.0473) pv(mean=0.0000 std=0.0100) temp(mean=19.5206 std=4.4282) import_rate(mean=24.2518 std=2.0164) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1905 std=0.5239) 2026-08-14 14:32:51.902311: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 14:32:51.916167: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 14:32:51.942056: ML Predictor: Baseline (pre-finetune) val_mae=0.0102 kWh val_bias=-0.0060 kWh 2026-08-14 14:33:05.228454: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0132 val_mae=0.0091 kWh val_bias=-0.0030 kWh (-3.4%) combined=0.0047 kWh ema_combined=0.0047 kWh 2026-08-14 14:33:19.958608: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0133 val_mae=0.0097 kWh val_bias=-0.0038 kWh (-4.3%) combined=0.0058 kWh ema_combined=0.0050 kWh 2026-08-14 14:33:35.281491: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0149 val_mae=0.0086 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0057 kWh ema_combined=0.0052 kWh 2026-08-14 14:33:49.102046: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0127 val_mae=0.0079 kWh val_bias=-0.0034 kWh (-3.8%) combined=0.0050 kWh ema_combined=0.0052 kWh 2026-08-14 14:34:03.184584: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0121 val_mae=0.0069 kWh val_bias=+0.0015 kWh (+1.6%) combined=0.0044 kWh ema_combined=0.0050 kWh 2026-08-14 14:34:16.898989: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0111 val_mae=0.0075 kWh val_bias=-0.0026 kWh (-2.9%) combined=0.0048 kWh ema_combined=0.0049 kWh 2026-08-14 14:34:30.293471: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0140 val_mae=0.0078 kWh val_bias=-0.0011 kWh (-1.2%) combined=0.0039 kWh ema_combined=0.0046 kWh 2026-08-14 14:34:45.008861: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0129 val_mae=0.0083 kWh val_bias=-0.0003 kWh (-0.3%) combined=0.0049 kWh ema_combined=0.0047 kWh 2026-08-14 14:34:58.147285: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0117 val_mae=0.0075 kWh val_bias=-0.0043 kWh (-4.9%) combined=0.0056 kWh ema_combined=0.0050 kWh 2026-08-14 14:34:58.957381: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:34:58.957898: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:34:58.958098: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:34:58.958458: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:34:58.958593: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:34:58.958726: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:34:58.958830: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:35:00.127088: --------------- PredBat - update at 2026-08-14 14:35:00+01:00 with clock skew 0 minutes, minutes now 875 2026-08-14 14:35:00.128115: Saved current settings to /config/predbat_config.json 2026-08-14 14:35:00.128266: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 50.0 minutes 2026-08-14 14:35:00.128413: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 14:35:00.128508: Autoupdate: Currently up to date 2026-08-14 14:35:00.174230: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 14:35:00.174418: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 14:35:00.174639: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 14:35:00.175794: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 14:35:00.175966: Predbat mode is set to Control charge & discharge 2026-08-14 14:35:00.665523: Found 21602 load_today datapoints going back 28 days 2026-08-14 14:35:00.665672: Using load_power data to fill gaps in load_today data 2026-08-14 14:35:01.871987: Processing 721 30-minute periods for power integration 2026-08-14 14:35:02.206140: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 14:35:02.206620: Car charging hold False, threshold 6.0kWh 2026-08-14 14:35:02.206851: Current data so far today: load 14.3kWh, import 22.2kWh, export 0.0kWh, PV 0kWh 2026-08-14 14:35:02.220717: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 14:35:02.221557: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 14:35:02.221635: Standing charge is set to 49.98p 2026-08-14 14:35:02.315893: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 14:35:02.316134: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 14:35:02.316488: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 240.0 minutes 2026-08-14 14:35:02.317491: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 240.0 minutes 2026-08-14 14:35:02.327422: Loaded 95 datapoints of futurerate analysis 2026-08-14 14:35:02.516243: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3'] 2026-08-14 14:35:02.574686: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 14:35:02.580527: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 14:35:02.581074: Import rates: min 14.97p, max 53.39p, average 26.87p 2026-08-14 14:35:02.649978: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 14:35:02.650125: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 14:35:02.652109: High export rate found rates in range 99p to -99p 2026-08-14 14:35:02.809528: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 14:35:02.809691: Car 0 charging is not planned as it is not plugged in 2026-08-14 14:35:02.828126: Battery level now 7.77kWh, -1hr ago 4.28kWh, at midnight 2.43kWh, battery value change in the last hour 44.86p, change today 68.63p, rate_forward 12.86p 2026-08-14 14:35:02.828825: Last hour: net energy 4.7kWh, import 4.7kWh, export 0.0kWh, car 0kWh, load 0.7kWh, net cost 102.14p, import 102.14p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 14:35:02.917689: Today's energy total net 22.2kWh, import 22.2kWh, export 0.0kWh, cost 571.5p, import 521.52p, export 0.0p, carbon 0.0kg 2026-08-14 14:35:02.917919: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 14:35:03.125557: Using weighted-bucket historical load forecast over 14 days 2026-08-14 14:35:03.157152: Today's load divergence 128.5%, in-day adjustment 134.82%, damping 0.95x, yesterday 146.81% today 127.07% blend 39.24% 2026-08-14 14:35:03.157596: Today's predicted so far 8.69kWh with 0.0kWh car/iBoost excluded, 11.77kWh import ignored, and 8.69kWh forecast extra. 2026-08-14 14:35:03.157677: Today's actual load so far 14.42kWh with 0.0kWh car/iBoost excluded, and 11.77kWh import ignored. 2026-08-14 14:35:03.232504: Inverter 0: Type SK Sunsynk 2026-08-14 14:35:03.232614: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 14:35:03.232834: Reserve min: 7%, battery_min: 7% 2026-08-14 14:35:03.232925: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 14:35:03.233289: Inverter 0 SoC: 8.12kW 51%, current charge rate 5000W, current discharge rate 5250W, current battery power -4558W, current battery voltage 51.2V, grid power -6049W, load power 1052W, PV Power 0W 2026-08-14 14:35:03.233496: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:35:03.233605: Inverter 0 scheduled charge enable is True 2026-08-14 14:35:03.233670: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 14:35:03.233777: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 14:35:03.233923: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:35:03.233968: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:35:03.234012: Inverter 0 scheduled discharge enable is False 2026-08-14 14:35:03.234170: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:35:03.234215: Inverter 0 discharge windows currently [] 2026-08-14 14:35:03.234246: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:35:03.234272: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:35:03.234306: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:35:03.387517: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 14:35:03.387671: Plan was last updated on 2026-08-14 14:25:00+01:00 and is now 10.0 minutes old 2026-08-14 14:35:03.387948: Best charge window [ 14-08 14:00:00 - 14-08 15:00:00 @ 21.86p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 14:30:00 - 16-08 14:30:00 @ 15.44p 100% ] 2026-08-14 14:35:03.388000: Best export window [ ] 2026-08-14 14:35:03.389337: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 14:35:03.394209: Load divergence over 8.0 hours mean 362.16W, min 239.4W, max 1094.4W, std dev 121.05W, divergence 16.71% 2026-08-14 14:35:03.423473: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 14:35:03.423685: LoadML is_calculating True 2026-08-14 14:35:03.423747: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 14:35:03.470894: predict base end_record 08-15 14:40:00, final soc 13.54kWh, metric 1060.49p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:25:00, load 31.12kWh, PV 0.0kWh 2026-08-14 14:35:03.760070: Battery has 19.83 hours left - now at 8.12kWh 2026-08-14 14:35:03.861039: predict base10 end_record 08-15 14:40:00, final soc 11.47kWh, metric 1039.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 07:05:00, load 31.93kWh, PV 0.0kWh 2026-08-14 14:35:04.019076: predict best10 end_record 08-15 14:40:00, final soc 1.77kWh, metric 875.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:10:00, load 31.93kWh, PV 0.0kWh 2026-08-14 14:35:04.148537: predict best end_record 08-15 14:40:00, final soc 1.9kWh, metric 859.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:45:00, load 31.12kWh, PV 0.0kWh 2026-08-14 14:35:04.148645: Saving plan best values to HA entities 2026-08-14 14:35:04.482549: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 14:35:04.490103: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 14:35:04.498867: Best charging limit SoC's [16.0, 10.0, 16.0, 16.0]kWh, export []kWh gives import battery 6.54kWh, house 5.21kWh, export 0.0kWh, metric 859.09p, metric10 875.9p 2026-08-14 14:35:04.661181: Marginal costs baseline metric (no standing charge): 809.102 2026-08-14 14:35:05.074822: Marginal energy costs matrix computed: min=22.13 max=36.05 2026-08-14 14:35:05.165289: Rate array import [{'start': 875, 'end': 960, 'rate': 'cheap', 'range': '(22.0p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2320, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 875, 'end': 2320, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 14:35:05.165753: - Your estimated bill for today is £6.95 and tomorrow is £7.46 2026-08-14 14:35:05.165800: - Import rates are cheap (22.0p - 22.2p) for the next 1 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 14:35:05.165823: - The battery is currently at 51% and is charging to 64% for the next 25 minutes. 2026-08-14 14:35:05.165843: - For the next 48 hours there will be no solar generation. 2026-08-14 14:35:05.165862: - You will run out of battery in 15 hours. 2026-08-14 14:35:05.165891: 2026-08-14 14:35:05.210870: Plan calculation took 1.82 seconds 2026-08-14 14:35:05.215291: No high rate period found 2026-08-14 14:35:05.328536: Import threshold used for optimisation was 22.25p 2026-08-14 14:35:05.454903: Low import rate windows [0: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 1: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 2: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 3: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 4: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 5: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 6: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 7: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 8: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 9: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 10: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 11: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 12: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 13: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 14: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 15: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 16: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 17: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 18: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 19: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 20: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 21: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 22: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 23: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 24: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 25: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 26: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 27: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 28: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 29: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 30: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 31: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 32: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 33: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 34: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 35: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 36: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 37: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 38: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 39: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 40: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 41: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 42: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 43: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 44: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 45: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 46: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 47: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 48: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 49: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 50: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 51: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 52: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 53: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 54: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 55: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 56: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 57: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 58: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 59: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 60: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 61: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 62: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 63: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 64: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 65: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 66: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 67: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 68: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 69: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 70: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 71: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 72: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 73: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 74: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 75: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 76: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 77: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 78: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 79: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 80: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 81: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 82: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 83: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 84: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 85: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 86: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 87: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 88: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 89: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 90: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 91: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 92: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 93: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 94: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19, 95: 08-16 14:30:00 - 08-16 15:00:00 @ 14.97] 2026-08-14 14:35:05.468495: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 14:00:00 2026-08-14 14:35:05.468832: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 51%, target 100% 2026-08-14 14:35:05.469169: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 14:35:05.469502: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:35:05.469877: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:35:05.470092: No export window planned 2026-08-14 14:35:05.470363: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 14:35:05.470515: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:35:05.470821: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:35:05.471047: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 14:35:05.471188: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 14:35:05.471354: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 14:35:05.471566: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.471708: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.471890: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.472054: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.472192: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.472336: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.472493: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.478463: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.478670: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.478802: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.478923: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.479066: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.479216: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.479356: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.479693: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.479848: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.479971: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.480159: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.480315: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.480468: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.480592: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:05.480700: Inverter 0 count register writes 0 2026-08-14 14:35:05.519467: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 14:35:05.519822: Recompute is saving previous plan... 2026-08-14 14:35:05.525093: Best charge window [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 100%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 100%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 100%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 100%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 100%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 100%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 100%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 100%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 100%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 100%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 100%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 100%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 100%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 100%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 100%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 100%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 100%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 100%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 100%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 100%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 100%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 100%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 100%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 100%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 100%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 100%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 100%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 100%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 100%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 100%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 100%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 100%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 100%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 100%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 100%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 100%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 100%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 100% ] 2026-08-14 14:35:05.525318: Best export window [ ] 2026-08-14 14:35:05.526737: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 14:35:05.531550: Load divergence over 8.0 hours mean 362.16W, min 239.4W, max 1094.4W, std dev 121.05W, divergence 16.71% 2026-08-14 14:35:05.564174: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 14:35:05.573547: LoadML is_calculating True 2026-08-14 14:35:05.573670: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 14:35:05.586520: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 14:35:05.588308: Optimise levels pass started at 2026-08-14 14:35:05 2026-08-14 14:35:05.588390: Optimise all windows, total charge 95 export 1 2026-08-14 14:35:11.680930: >> Region optimisation pass width 960 gives best_metric 1045.6p, best_cost 1054.75p, best_cycle 40.6kWh, best_import 27.47kWh 2026-08-14 14:35:12.795121: >> Region optimisation pass width 480 gives best_metric 1045.6p, best_cost 1054.75p, best_cycle 40.6kWh, best_import 27.47kWh 2026-08-14 14:35:13.727677: >> Region optimisation pass width 240 gives best_metric 1045.6p, best_cost 1054.75p, best_cycle 40.6kWh, best_import 27.47kWh 2026-08-14 14:35:17.207117: >> Region optimisation pass width 120 gives best_metric 1045.6p, best_cost 1054.75p, best_cycle 40.6kWh, best_import 27.47kWh 2026-08-14 14:35:17.207568: Calculated end_record as 08-15 15:00:00 based on best_price 22.02p, next_charge_start 08-14 15:00:00, max_windows 48 2026-08-14 14:35:17.207749: Optimise levels pass ended at 2026-08-14 14:35:17, duration 11.6 seconds tried 322 combinations 2026-08-14 14:35:17.207877: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1045.6p, best_keep 0kWh, best_cycle 40.6kWh, best_carbon 0kg, best_import 27.47kWh 2026-08-14 14:35:17.237781: Starting detailed optimisation end_record 08-15 15:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 14.97p with charge limits [16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.75, 13.75, 13.75, 13.75, 13.75, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 14:35:36.257038: Tweak plan optimisation started metric 787.6p, cost 799.16p 2026-08-14 14:35:36.706867: Tweak optimisation finished metric 787.6p, cost 799.16p, metric_keep 0kWh, cycle 15.33kWh, carbon 0kg, import 11.08kWh, changed 8 window(s) 2026-08-14 14:35:36.736192: Swap charge optimisation started metric 787.6p, cost 799.16p, min_improvement_swap 0.1p 2026-08-14 14:35:38.778967: Swap charge optimisation finished metric 787.6p, cost 799.16p 2026-08-14 14:35:38.936356: Pruned 1 dead plan slot(s) in 4 trial(s), nominal metric 784.75p -> 784.75p, plan now metric 787.61p, cost 799.16p, cycle 15.33kWh, import 11.08kWh 2026-08-14 14:35:38.952079: Raw charge windows [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 100% ] reserve 1.12 2026-08-14 14:35:38.961821: Unclipped charge windows [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 15:00:00 - 16-08 15:00:00 @ 15.21p 100% ] reserve 1.12 2026-08-14 14:35:38.962362: Unfiltered charge windows [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 15:00:00 - 16-08 15:00:00 @ 15.21p 100% ] reserve 1.12 2026-08-14 14:35:38.962754: Filtered charge windows [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 15:00:00 - 16-08 15:00:00 @ 15.21p 100% ] reserve 1.12 2026-08-14 14:35:39.004004: Previous plan best metric is 794.91 (cost 836.58) and new plan best metric is 787.6 (cost 799.16) 2026-08-14 14:35:39.004496: New plan metric is significantly better from previous plan, using new plan 2026-08-14 14:35:39.004545: Plan valid is now true after recompute was False 2026-08-14 14:35:39.029860: predict base end_record 08-15 15:00:00, final soc 15.09kWh, metric 1087.97p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:25:00, load 31.29kWh, PV 0.0kWh 2026-08-14 14:35:39.222925: Battery has 19.83 hours left - now at 8.12kWh 2026-08-14 14:35:39.315257: predict base10 end_record 08-15 15:00:00, final soc 12.76kWh, metric 1062.57p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 07:05:00, load 32.1kWh, PV 0.0kWh 2026-08-14 14:35:39.529306: predict best10 end_record 08-15 15:00:00, final soc 1.12kWh, metric 868.16p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:10:00, load 32.1kWh, PV 0.0kWh 2026-08-14 14:35:39.661811: predict best end_record 08-15 15:00:00, final soc 1.12kWh, metric 849.14p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:45:00, load 31.29kWh, PV 0.0kWh 2026-08-14 14:35:39.661927: Saving plan best values to HA entities 2026-08-14 14:35:40.002917: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 14:35:40.010647: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 14:35:40.018566: Best charging limit SoC's [16.0, 10.0, 16.0, 16.0]kWh, export []kWh gives import battery 5.62kWh, house 5.46kWh, export 0.0kWh, metric 849.14p, metric10 868.16p 2026-08-14 14:35:40.215302: Marginal costs baseline metric (no standing charge): 799.1584 2026-08-14 14:35:40.677170: Marginal energy costs matrix computed: min=22.13 max=36.05 2026-08-14 14:35:40.833789: Rate array import [{'start': 875, 'end': 960, 'rate': 'cheap', 'range': '(22.0p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2340, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 875, 'end': 2340, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 14:35:40.834526: - Your estimated bill for today is £6.95 and tomorrow is £8.11 2026-08-14 14:35:40.834698: - Import rates are cheap (22.0p - 22.2p) for the next 1 and a half hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 14:35:40.834756: - The battery is currently at 51% and is charging to 63% for the next 25 minutes. 2026-08-14 14:35:40.834785: - For the next 48 hours there will be no solar generation. 2026-08-14 14:35:40.834824: - You will run out of battery in 15 hours. 2026-08-14 14:35:40.834849: 2026-08-14 14:35:40.878225: Plan calculation took 35.36 seconds 2026-08-14 14:35:40.878536: Inverter 0: Type SK Sunsynk 2026-08-14 14:35:40.878596: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 14:35:40.878777: Reserve min: 7%, battery_min: 7% 2026-08-14 14:35:40.878851: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 14:35:40.879116: Inverter 0 SoC: 8.47kW 53%, current charge rate 5000W, current discharge rate 5250W, current battery power -4559W, current battery voltage 51.2V, grid power -6051W, load power 1055W, PV Power 0W 2026-08-14 14:35:40.879277: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:35:40.879395: Inverter 0 scheduled charge enable is True 2026-08-14 14:35:40.879472: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 14:35:40.879572: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 14:35:40.879704: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:35:40.879743: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:35:40.879779: Inverter 0 scheduled discharge enable is False 2026-08-14 14:35:40.879991: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:35:40.880060: Inverter 0 discharge windows currently [] 2026-08-14 14:35:40.880088: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:35:40.880115: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:35:40.880134: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:35:41.061138: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 14:30:00 2026-08-14 14:35:41.061298: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 53%, target 100% 2026-08-14 14:35:41.061479: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 14:35:41.061703: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:35:41.061970: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:35:41.062094: No export window planned 2026-08-14 14:35:41.062268: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 14:35:41.062324: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:35:41.062672: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:35:41.062922: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 14:35:41.063088: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 14:35:41.063263: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 14:35:41.063489: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.063558: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.063654: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.063811: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.063958: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.064103: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.064284: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.064495: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.064649: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.064796: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.064939: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.065122: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.065269: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.065431: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.065633: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.065788: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.065933: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.066074: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.066215: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.066374: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.066523: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:35:41.066656: Inverter 0 count register writes 0 2026-08-14 14:35:41.140754: Total inverter register writes now 810 2026-08-14 14:35:41.226105: Info: Completed run status Charging 2026-08-14 14:35:41.234824: Info: record_status Charging target 53%-100.0% 2026-08-14 14:35:41.245146: Saved current settings to /config/predbat_config.json 2026-08-14 14:35:41.245500: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 14:35:41.449879: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0109 val_mae=0.0067 kWh val_bias=-0.0022 kWh (-2.5%) combined=0.0044 kWh ema_combined=0.0048 kWh 2026-08-14 14:35:55.631929: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0097 val_mae=0.0060 kWh val_bias=-0.0016 kWh (-1.8%) combined=0.0031 kWh ema_combined=0.0043 kWh 2026-08-14 14:36:11.219792: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0098 val_mae=0.0060 kWh val_bias=-0.0007 kWh (-0.7%) combined=0.0031 kWh ema_combined=0.0039 kWh 2026-08-14 14:36:14.408642: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:36:14.409194: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:36:14.409382: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:36:14.409694: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:36:14.409846: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:36:14.409978: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:36:14.410102: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:36:24.805169: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0091 val_mae=0.0076 kWh val_bias=-0.0044 kWh (-4.9%) combined=0.0057 kWh ema_combined=0.0045 kWh 2026-08-14 14:36:38.281544: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0091 val_mae=0.0072 kWh val_bias=-0.0040 kWh (-4.5%) combined=0.0048 kWh ema_combined=0.0046 kWh 2026-08-14 14:36:51.669009: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0089 val_mae=0.0057 kWh val_bias=-0.0016 kWh (-1.8%) combined=0.0030 kWh ema_combined=0.0041 kWh 2026-08-14 14:37:05.036593: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0090 val_mae=0.0054 kWh val_bias=-0.0014 kWh (-1.5%) combined=0.0035 kWh ema_combined=0.0039 kWh 2026-08-14 14:37:18.979444: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0097 val_mae=0.0054 kWh val_bias=-0.0012 kWh (-1.4%) combined=0.0027 kWh ema_combined=0.0036 kWh 2026-08-14 14:37:32.360753: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0072 val_mae=0.0050 kWh val_bias=-0.0020 kWh (-2.3%) combined=0.0031 kWh ema_combined=0.0034 kWh 2026-08-14 14:37:46.161119: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0074 val_mae=0.0049 kWh val_bias=-0.0012 kWh (-1.4%) combined=0.0030 kWh ema_combined=0.0033 kWh 2026-08-14 14:38:00.648864: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0073 val_mae=0.0049 kWh val_bias=-0.0009 kWh (-1.0%) combined=0.0025 kWh ema_combined=0.0031 kWh 2026-08-14 14:38:13.412542: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0069 val_mae=0.0053 kWh val_bias=-0.0025 kWh (-2.9%) combined=0.0034 kWh ema_combined=0.0032 kWh 2026-08-14 14:38:26.755946: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0065 val_mae=0.0052 kWh val_bias=-0.0018 kWh (-2.1%) combined=0.0028 kWh ema_combined=0.0031 kWh 2026-08-14 14:38:28.815003: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:38:28.815419: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:38:28.815572: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:38:28.815843: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:38:28.815900: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:38:28.815978: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:38:28.816058: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:38:39.110813: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0069 val_mae=0.0051 kWh val_bias=-0.0014 kWh (-1.6%) combined=0.0028 kWh ema_combined=0.0030 kWh 2026-08-14 14:38:52.007289: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0070 val_mae=0.0047 kWh val_bias=-0.0017 kWh (-2.0%) combined=0.0027 kWh ema_combined=0.0029 kWh 2026-08-14 14:39:04.283268: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0065 val_mae=0.0051 kWh val_bias=-0.0024 kWh (-2.7%) combined=0.0033 kWh ema_combined=0.0030 kWh 2026-08-14 14:39:17.805484: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0064 val_mae=0.0047 kWh val_bias=-0.0023 kWh (-2.6%) combined=0.0033 kWh ema_combined=0.0031 kWh 2026-08-14 14:39:31.195278: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0062 val_mae=0.0045 kWh val_bias=-0.0017 kWh (-1.9%) combined=0.0028 kWh ema_combined=0.0030 kWh 2026-08-14 14:39:45.680834: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0061 val_mae=0.0049 kWh val_bias=-0.0026 kWh (-3.0%) combined=0.0033 kWh ema_combined=0.0031 kWh 2026-08-14 14:39:58.933750: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0061 val_mae=0.0048 kWh val_bias=-0.0016 kWh (-1.8%) combined=0.0028 kWh ema_combined=0.0030 kWh 2026-08-14 14:40:00.174421: --------------- PredBat - update at 2026-08-14 14:40:00+01:00 with clock skew 0 minutes, minutes now 880 2026-08-14 14:40:00.175664: Saved current settings to /config/predbat_config.json 2026-08-14 14:40:00.175926: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 55.0 minutes 2026-08-14 14:40:00.176164: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 14:40:00.176375: Autoupdate: Currently up to date 2026-08-14 14:40:00.222541: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 14:40:00.222698: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 14:40:00.222880: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 14:40:00.223476: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 14:40:00.223623: Predbat mode is set to Control charge & discharge 2026-08-14 14:40:00.602897: Found 21602 load_today datapoints going back 28 days 2026-08-14 14:40:00.603047: Using load_power data to fill gaps in load_today data 2026-08-14 14:40:01.920338: Processing 721 30-minute periods for power integration 2026-08-14 14:40:02.244323: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 14:40:02.244535: Car charging hold False, threshold 6.0kWh 2026-08-14 14:40:02.244587: Current data so far today: load 14.25kWh, import 23.2kWh, export 0.0kWh, PV 0kWh 2026-08-14 14:40:02.261191: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 14:40:02.262264: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 14:40:02.262355: Standing charge is set to 49.98p 2026-08-14 14:40:02.362281: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 14:40:02.362595: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 14:40:02.362967: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 245.0 minutes 2026-08-14 14:40:02.363671: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 245.0 minutes 2026-08-14 14:40:02.372079: Loaded 95 datapoints of futurerate analysis 2026-08-14 14:40:02.591141: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3'] 2026-08-14 14:40:02.737507: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 14:40:02.745885: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 14:40:02.747000: Import rates: min 14.97p, max 53.39p, average 26.86p 2026-08-14 14:40:02.795413: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 14:40:02.796033: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 14:40:02.798426: High export rate found rates in range 99p to -99p 2026-08-14 14:40:03.019176: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 14:40:03.019348: Car 0 charging is not planned as it is not plugged in 2026-08-14 14:40:03.049459: Battery level now 8.12kWh, -1hr ago 4.28kWh, at midnight 2.43kWh, battery value change in the last hour 49.39p, change today 73.15p, rate_forward 12.86p 2026-08-14 14:40:03.049998: Last hour: net energy 5.25kWh, import 5.25kWh, export 0.0kWh, car 0kWh, load 0.62kWh, net cost 114.23p, import 114.23p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 14:40:03.179703: Today's energy total net 23.2kWh, import 23.2kWh, export 0.0kWh, cost 593.36p, import 543.38p, export 0.0p, carbon 0.0kg 2026-08-14 14:40:03.179876: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 14:40:03.304360: Using weighted-bucket historical load forecast over 14 days 2026-08-14 14:40:03.328721: Today's load divergence 128.14%, in-day adjustment 134.54%, damping 0.95x, yesterday 146.81% today 126.73% blend 38.89% 2026-08-14 14:40:03.328894: Today's predicted so far 8.7kWh with 0.0kWh car/iBoost excluded, 12.68kWh import ignored, and 8.7kWh forecast extra. 2026-08-14 14:40:03.328981: Today's actual load so far 14.33kWh with 0.0kWh car/iBoost excluded, and 12.68kWh import ignored. 2026-08-14 14:40:03.386507: Inverter 0: Type SK Sunsynk 2026-08-14 14:40:03.386599: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 14:40:03.386782: Reserve min: 7%, battery_min: 7% 2026-08-14 14:40:03.386857: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 14:40:03.387133: Inverter 0 SoC: 8.47kW 53%, current charge rate 5000W, current discharge rate 5250W, current battery power -4558W, current battery voltage 51.2V, grid power -5489W, load power 493W, PV Power 0W 2026-08-14 14:40:03.387429: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:40:03.387532: Inverter 0 scheduled charge enable is True 2026-08-14 14:40:03.387587: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 14:40:03.387709: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 14:40:03.387836: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:40:03.387875: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:40:03.387913: Inverter 0 scheduled discharge enable is False 2026-08-14 14:40:03.388031: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:40:03.388069: Inverter 0 discharge windows currently [] 2026-08-14 14:40:03.388094: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:40:03.388114: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:40:03.388134: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:40:03.521378: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 14:40:03.521558: Plan was last updated on 2026-08-14 14:35:00+01:00 and is now 5.0 minutes old 2026-08-14 14:40:03.521910: Best charge window [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 15:00:00 - 16-08 15:00:00 @ 15.21p 100% ] 2026-08-14 14:40:03.521982: Best export window [ ] 2026-08-14 14:40:03.523132: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 14:40:03.527412: Load divergence over 8.0 hours mean 365.26W, min 240.6W, max 984.0W, std dev 126.5W, divergence 17.32% 2026-08-14 14:40:03.552046: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 14:40:03.552160: LoadML is_calculating True 2026-08-14 14:40:03.552186: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 14:40:03.592723: predict base end_record 08-15 15:05:00, final soc 15.48kWh, metric 1107.13p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:25:00, load 31.23kWh, PV 0.0kWh 2026-08-14 14:40:03.770568: Battery has 19.75 hours left - now at 8.47kWh 2026-08-14 14:40:03.841041: predict base10 end_record 08-15 15:05:00, final soc 13.08kWh, metric 1080.79p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 07:10:00, load 32.03kWh, PV 0.0kWh 2026-08-14 14:40:03.995295: predict best10 end_record 08-15 15:05:00, final soc 1.44kWh, metric 886.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:10:00, load 32.03kWh, PV 0.0kWh 2026-08-14 14:40:04.177134: predict best end_record 08-15 15:05:00, final soc 1.51kWh, metric 868.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:40:00, load 31.23kWh, PV 0.0kWh 2026-08-14 14:40:04.177504: Saving plan best values to HA entities 2026-08-14 14:40:04.570097: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 14:40:04.577194: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 14:40:04.583600: Best charging limit SoC's [16.0, 10.0, 16.0, 16.0]kWh, export []kWh gives import battery 5.6kWh, house 5.5kWh, export 0.0kWh, metric 868.47p, metric10 886.33p 2026-08-14 14:40:04.734741: Marginal costs baseline metric (no standing charge): 818.4912 2026-08-14 14:40:05.103197: Marginal energy costs matrix computed: min=22.13 max=35.57 2026-08-14 14:40:05.225960: Rate array import [{'start': 880, 'end': 960, 'rate': 'cheap', 'range': '(22.0p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2345, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 880, 'end': 2345, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 14:40:05.226384: - Your estimated bill for today is £7.06 and tomorrow is £8.13 2026-08-14 14:40:05.226446: - Import rates are cheap (22.0p - 22.2p) for the next 1 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 14:40:05.226466: - The battery is currently at 53% and is charging to 63% for the next 20 minutes. 2026-08-14 14:40:05.226481: - For the next 48 hours there will be no solar generation. 2026-08-14 14:40:05.226495: - You will run out of battery in 15 hours. 2026-08-14 14:40:05.226509: 2026-08-14 14:40:05.283986: Plan calculation took 1.76 seconds 2026-08-14 14:40:05.287249: No high rate period found 2026-08-14 14:40:05.407577: Import threshold used for optimisation was 25.43p 2026-08-14 14:40:05.538079: Low import rate windows [0: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 1: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 2: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 3: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 4: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 5: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 6: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 7: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 8: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 9: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 10: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 11: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 12: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 13: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 14: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 15: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 16: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 17: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 18: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 19: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 20: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 21: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 22: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 23: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 24: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 25: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 26: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 27: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 28: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 29: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 30: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 31: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 32: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 33: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 34: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 35: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 36: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 37: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 38: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 39: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 40: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 41: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 42: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 43: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 44: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 45: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 46: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 47: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 48: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 49: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 50: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 51: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 52: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 53: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 54: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 55: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 56: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 57: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 58: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 59: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 60: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 61: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 62: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 63: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 64: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 65: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 66: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 67: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 68: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 69: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 70: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 71: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 72: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 73: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 74: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 75: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 76: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 77: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 78: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 79: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 80: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 81: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 82: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 83: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 84: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 85: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 86: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 87: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 88: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 89: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 90: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 91: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 92: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 93: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 94: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19, 95: 08-16 14:30:00 - 08-16 15:00:00 @ 14.97] 2026-08-14 14:40:05.550445: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 14:30:00 2026-08-14 14:40:05.550600: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 53%, target 100% 2026-08-14 14:40:05.550742: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 14:40:05.550914: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:40:05.551143: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:40:05.551237: No export window planned 2026-08-14 14:40:05.551356: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 14:40:05.551416: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:40:05.551591: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:40:05.551713: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 14:40:05.551762: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 14:40:05.551816: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 14:40:05.552078: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.552245: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.552408: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.552561: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.552706: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.552852: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.553031: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.553230: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.553436: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.553607: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.553774: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.554069: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.554257: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.554440: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.554668: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.554811: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.554963: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.555107: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.555246: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.555404: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.555554: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:40:05.555685: Inverter 0 count register writes 0 2026-08-14 14:40:05.581373: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 14:40:05.589677: Total inverter register writes now 810 2026-08-14 14:40:05.676093: Info: Completed run status Charging 2026-08-14 14:40:05.686860: Info: record_status Charging target 53%-100.0% 2026-08-14 14:40:05.709349: Saved current settings to /config/predbat_config.json 2026-08-14 14:40:05.709810: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 14:40:18.604027: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0064 val_mae=0.0045 kWh val_bias=-0.0012 kWh (-1.4%) combined=0.0024 kWh ema_combined=0.0028 kWh 2026-08-14 14:40:18.611068: ML Predictor: Restored best weights from epoch with val_mae=0.0045 kWh val_bias=-0.0012 kWh (-1.4%) 2026-08-14 14:40:18.611270: ML Predictor: Training complete, final val_mae=0.0045 kWh val_bias=-0.0012 kWh (-1.4%) 2026-08-14 14:40:19.738759: ML Predictor: AR rollout over holdout: ar_mae=0.0047 kWh ar_bias=-0.0013 kWh (-1.4%) [drift vs teacher-forced: +0.0002 kWh] 2026-08-14 14:40:19.746869: ML Predictor: Curriculum pass 4/5 complete, val_mae=0.0045 kWh 2026-08-14 14:40:19.747111: ML Predictor: Curriculum final pass 5/5: full dataset (56.1 days) 2026-08-14 14:40:19.747260: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 14:40:20.427199: ML Predictor: Creating dataset with 1345 hours of training data, 48 hours validation 2026-08-14 14:40:25.602801: ML Predictor: Created 15859 training samples, 576 validation samples 2026-08-14 14:40:25.657504: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0472) load(mean=0.0590 std=0.0474) pv(mean=0.0000 std=0.0100) temp(mean=19.5414 std=4.4441) import_rate(mean=24.2626 std=2.0737) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1907 std=0.5242) 2026-08-14 14:40:25.744994: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 14:40:25.762063: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 14:40:25.788660: ML Predictor: Baseline (pre-finetune) val_mae=0.0060 kWh val_bias=-0.0008 kWh 2026-08-14 14:40:40.126478: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0109 val_mae=0.0093 kWh val_bias=-0.0048 kWh (-5.4%) combined=0.0059 kWh ema_combined=0.0059 kWh 2026-08-14 14:40:44.305517: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:40:44.305874: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:40:44.305961: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:40:44.306152: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:40:44.306207: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:40:44.306246: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:40:44.306280: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:40:55.806757: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0129 val_mae=0.0083 kWh val_bias=-0.0013 kWh (-1.5%) combined=0.0048 kWh ema_combined=0.0056 kWh 2026-08-14 14:41:14.361457: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0139 val_mae=0.0085 kWh val_bias=+0.0013 kWh (+1.4%) combined=0.0051 kWh ema_combined=0.0054 kWh 2026-08-14 14:41:28.592986: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0149 val_mae=0.0087 kWh val_bias=-0.0036 kWh (-4.0%) combined=0.0053 kWh ema_combined=0.0054 kWh 2026-08-14 14:41:42.372388: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0167 val_mae=0.0078 kWh val_bias=-0.0011 kWh (-1.2%) combined=0.0041 kWh ema_combined=0.0050 kWh 2026-08-14 14:41:56.278852: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0136 val_mae=0.0087 kWh val_bias=-0.0043 kWh (-4.8%) combined=0.0045 kWh ema_combined=0.0049 kWh 2026-08-14 14:42:10.400434: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0114 val_mae=0.0081 kWh val_bias=-0.0039 kWh (-4.3%) combined=0.0053 kWh ema_combined=0.0050 kWh 2026-08-14 14:42:24.003221: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0133 val_mae=0.0070 kWh val_bias=-0.0040 kWh (-4.4%) combined=0.0056 kWh ema_combined=0.0052 kWh 2026-08-14 14:42:40.053121: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0117 val_mae=0.0060 kWh val_bias=-0.0012 kWh (-1.3%) combined=0.0033 kWh ema_combined=0.0046 kWh 2026-08-14 14:42:58.791995: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:42:58.792469: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:42:58.792618: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:42:58.792881: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:42:58.793017: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:42:58.793127: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:42:58.793232: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:42:59.105713: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0097 val_mae=0.0064 kWh val_bias=-0.0015 kWh (-1.7%) combined=0.0034 kWh ema_combined=0.0043 kWh 2026-08-14 14:42:59.105952: ML Predictor: Early stopping at epoch 10 2026-08-14 14:42:59.106851: ML Predictor: Restored best weights from epoch with val_mae=0.0060 kWh val_bias=-0.0008 kWh (-0.9%) 2026-08-14 14:42:59.107103: ML Predictor: Training complete, final val_mae=0.0060 kWh val_bias=-0.0008 kWh (-0.9%) 2026-08-14 14:43:00.214797: ML Predictor: AR rollout over holdout: ar_mae=0.0062 kWh ar_bias=-0.0008 kWh (-0.9%) [drift vs teacher-forced: +0.0002 kWh] 2026-08-14 14:43:00.221000: ML Predictor: Curriculum training complete, final val_mae=0.0060 kWh 2026-08-14 14:43:00.230469: ML Component: Training successful, val_mae=0.0060 kWh 2026-08-14 14:43:00.376127: ML Predictor: Model saved to /config/predbat_ml_model.npz 2026-08-14 14:43:00.381239: ML Component: Generating predictions load data age 56.0 days, 16148 data points 2026-08-14 14:43:00.529334: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0722 max_dow {0: 0.10500312496256084, 1: 0.10763750054407865, 2: 0.11822499983031302, 3: 0.1251781244263053, 4: 0.1736281253574416, 5: 0.10149375002831221, 6: 0.10796875073947013} 2026-08-14 14:43:01.761554: ML Component: Generated 576 predictions (total 37.00 kWh over 48h) 2026-08-14 14:43:01.808709: ML Component: Prediction cycle completed 2026-08-14 14:43:01.930351: ML Component: Saved 16148 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 14:44:59.108378: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:44:59.108672: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:44:59.108717: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:44:59.108851: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:44:59.108889: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:44:59.108910: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:44:59.108927: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:45:00.186458: --------------- PredBat - update at 2026-08-14 14:45:00+01:00 with clock skew 0 minutes, minutes now 885 2026-08-14 14:45:00.187198: Saved current settings to /config/predbat_config.json 2026-08-14 14:45:00.187305: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 60.0 minutes 2026-08-14 14:45:00.187375: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 14:45:00.187456: Autoupdate: Currently up to date 2026-08-14 14:45:00.206939: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 14:45:00.207052: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 14:45:00.207191: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 14:45:00.207624: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 14:45:00.207723: Predbat mode is set to Control charge & discharge 2026-08-14 14:45:00.398676: Found 21602 load_today datapoints going back 28 days 2026-08-14 14:45:00.398827: Using load_power data to fill gaps in load_today data 2026-08-14 14:45:01.090134: Processing 721 30-minute periods for power integration 2026-08-14 14:45:01.241480: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 14:45:01.241606: Car charging hold False, threshold 6.0kWh 2026-08-14 14:45:01.241645: Current data so far today: load 14.3kWh, import 23.2kWh, export 0.0kWh, PV 0kWh 2026-08-14 14:45:01.254282: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 14:45:01.254960: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 14:45:01.255025: Standing charge is set to 49.98p 2026-08-14 14:45:01.309496: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 14:45:01.309623: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 14:45:01.309865: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 250.0 minutes 2026-08-14 14:45:01.310493: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 250.0 minutes 2026-08-14 14:45:01.320036: Loaded 95 datapoints of futurerate analysis 2026-08-14 14:45:01.422257: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3'] 2026-08-14 14:45:01.469254: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 14:45:01.473892: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 14:45:01.474232: Import rates: min 14.97p, max 53.39p, average 26.85p 2026-08-14 14:45:01.509563: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 14:45:01.509673: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 14:45:01.510732: High export rate found rates in range 99p to -99p 2026-08-14 14:45:01.589341: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 14:45:01.589493: Car 0 charging is not planned as it is not plugged in 2026-08-14 14:45:01.600860: Battery level now 8.47kWh, -1hr ago 4.62kWh, at midnight 2.43kWh, battery value change in the last hour 49.59p, change today 77.68p, rate_forward 12.86p 2026-08-14 14:45:01.601343: Last hour: net energy 4.8kWh, import 4.8kWh, export 0.0kWh, car 0kWh, load 0.65kWh, net cost 104.44p, import 104.44p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 14:45:01.654319: Today's energy total net 23.2kWh, import 23.2kWh, export 0.0kWh, cost 593.36p, import 543.38p, export 0.0p, carbon 0.0kg 2026-08-14 14:45:01.654460: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 14:45:01.728965: Using weighted-bucket historical load forecast over 14 days 2026-08-14 14:45:01.751678: Today's load divergence 128.25%, in-day adjustment 134.53%, damping 0.95x, yesterday 146.81% today 126.83% blend 38.54% 2026-08-14 14:45:01.751774: Today's predicted so far 8.71kWh with 0.0kWh car/iBoost excluded, 12.7kWh import ignored, and 8.71kWh forecast extra. 2026-08-14 14:45:01.751802: Today's actual load so far 14.36kWh with 0.0kWh car/iBoost excluded, and 12.7kWh import ignored. 2026-08-14 14:45:01.782872: Inverter 0: Type SK Sunsynk 2026-08-14 14:45:01.782955: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 14:45:01.783178: Reserve min: 7%, battery_min: 7% 2026-08-14 14:45:01.783279: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 14:45:01.783571: Inverter 0 SoC: 8.82kW 55%, current charge rate 5000W, current discharge rate 5250W, current battery power -4561W, current battery voltage 51.2V, grid power -5359W, load power 363W, PV Power 0W 2026-08-14 14:45:01.783764: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:45:01.783873: Inverter 0 scheduled charge enable is True 2026-08-14 14:45:01.783935: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 14:45:01.784102: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 14:45:01.784269: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:45:01.784313: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:45:01.784370: Inverter 0 scheduled discharge enable is False 2026-08-14 14:45:01.784545: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:45:01.784590: Inverter 0 discharge windows currently [] 2026-08-14 14:45:01.784625: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:45:01.784655: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:45:01.784683: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:45:01.834790: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 14:45:01.834884: Plan was last updated on 2026-08-14 14:35:00+01:00 and is now 10.0 minutes old 2026-08-14 14:45:01.835061: Best charge window [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 15:00:00 - 16-08 15:00:00 @ 15.21p 100% ] 2026-08-14 14:45:01.835095: Best export window [ ] 2026-08-14 14:45:01.835707: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 14:45:01.838291: Load divergence over 8.0 hours mean 368.3W, min 220.2W, max 1090.2W, std dev 132.91W, divergence 18.04% 2026-08-14 14:45:01.853822: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 14:45:01.853918: LoadML is_calculating False 2026-08-14 14:45:01.853998: Creating pool of 12 processes to match your CPU count 2026-08-14 14:45:01.958456: predict base end_record 08-15 15:10:00, final soc 15.84kWh, metric 1104.98p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:20:00, load 31.3kWh, PV 0.0kWh 2026-08-14 14:45:02.082047: Battery has 19.58 hours left - now at 8.82kWh 2026-08-14 14:45:02.123246: predict base10 end_record 08-15 15:10:00, final soc 13.41kWh, metric 1078.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 07:10:00, load 32.11kWh, PV 0.0kWh 2026-08-14 14:45:02.195126: predict best10 end_record 08-15 15:10:00, final soc 1.77kWh, metric 883.88p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:10:00, load 32.11kWh, PV 0.0kWh 2026-08-14 14:45:02.286491: predict best end_record 08-15 15:10:00, final soc 1.9kWh, metric 867.06p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:35:00, load 31.3kWh, PV 0.0kWh 2026-08-14 14:45:02.286591: Saving plan best values to HA entities 2026-08-14 14:45:02.478067: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 14:45:02.483677: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 14:45:02.489275: Best charging limit SoC's [16.0, 10.0, 16.0, 16.0]kWh, export []kWh gives import battery 5.61kWh, house 5.55kWh, export 0.0kWh, metric 867.06p, metric10 883.88p 2026-08-14 14:45:02.566540: Marginal costs baseline metric (no standing charge): 817.0786 2026-08-14 14:45:02.838813: Marginal energy costs matrix computed: min=22.13 max=35.14 2026-08-14 14:45:02.909899: Rate array import [{'start': 885, 'end': 960, 'rate': 'cheap', 'range': '(22.0p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2350, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 885, 'end': 2350, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 14:45:02.910357: - Your estimated bill for today is £6.96 and tomorrow is £8.15 2026-08-14 14:45:02.910405: - Import rates are cheap (22.0p - 22.2p) for the next 1 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 14:45:02.910436: - The battery is currently at 55% and is charging to 63% for the next 15 minutes. 2026-08-14 14:45:02.910472: - For the next 48 hours there will be no solar generation. 2026-08-14 14:45:02.910491: - You will run out of battery in 14 hours. 2026-08-14 14:45:02.910513: 2026-08-14 14:45:02.959120: Plan calculation took 1.12 seconds 2026-08-14 14:45:02.962915: No high rate period found 2026-08-14 14:45:03.012830: Import threshold used for optimisation was 25.43p 2026-08-14 14:45:03.065639: Low import rate windows [0: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 1: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 2: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 3: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 4: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 5: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 6: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 7: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 8: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 9: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 10: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 11: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 12: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 13: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 14: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 15: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 16: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 17: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 18: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 19: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 20: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 21: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 22: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 23: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 24: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 25: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 26: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 27: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 28: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 29: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 30: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 31: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 32: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 33: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 34: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 35: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 36: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 37: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 38: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 39: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 40: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 41: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 42: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 43: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 44: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 45: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 46: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 47: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 48: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 49: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 50: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 51: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 52: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 53: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 54: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 55: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 56: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 57: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 58: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 59: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 60: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 61: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 62: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 63: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 64: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 65: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 66: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 67: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 68: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 69: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 70: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 71: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 72: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 73: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 74: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 75: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 76: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 77: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 78: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 79: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 80: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 81: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 82: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 83: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 84: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 85: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 86: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 87: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 88: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 89: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 90: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 91: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 92: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 93: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 94: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19, 95: 08-16 14:30:00 - 08-16 15:00:00 @ 14.97] 2026-08-14 14:45:03.072772: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 14:30:00 2026-08-14 14:45:03.072883: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 55%, target 100% 2026-08-14 14:45:03.073113: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 14:45:03.073323: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:45:03.073590: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:45:03.073690: No export window planned 2026-08-14 14:45:03.073806: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 14:45:03.073842: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:45:03.073975: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:45:03.074099: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 14:45:03.074142: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 14:45:03.074209: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 14:45:03.074320: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.074365: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.074400: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.074431: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.074477: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.074504: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.074529: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.074573: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.074610: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.074640: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.074665: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.074752: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.074789: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.074821: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.074887: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.074922: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.074953: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.075002: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.075033: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.075062: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.075086: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:03.075108: Inverter 0 count register writes 0 2026-08-14 14:45:03.091583: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 14:45:03.091799: Recompute is saving previous plan... 2026-08-14 14:45:03.095556: Best charge window [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 100%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 100%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 100%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 100%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 100%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 100%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 100%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 100%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 100%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 100%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 100%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 100%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 100%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 100%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 100%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 100%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 100%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 100%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 100%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 100%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 100%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 100%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 100%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 100%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 100%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 100%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 100%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 100%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 100%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 100%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 100%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 100%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 100%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 100%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 100%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 100%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 100%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 100% ] 2026-08-14 14:45:03.095665: Best export window [ ] 2026-08-14 14:45:03.096552: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 14:45:03.099804: Load divergence over 8.0 hours mean 368.3W, min 220.2W, max 1090.2W, std dev 132.91W, divergence 18.04% 2026-08-14 14:45:03.118377: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 14:45:03.118581: LoadML is_calculating False 2026-08-14 14:45:03.118683: Creating pool of 12 processes to match your CPU count 2026-08-14 14:45:03.216801: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 14:45:03.218965: Optimise levels pass started at 2026-08-14 14:45:03 2026-08-14 14:45:03.219045: Optimise all windows, total charge 95 export 1 2026-08-14 14:45:04.224717: >> Region optimisation pass width 960 gives best_metric 1052.35p, best_cost 1059.97p, best_cycle 37.74kWh, best_import 26.55kWh 2026-08-14 14:45:04.716818: >> Region optimisation pass width 480 gives best_metric 1052.35p, best_cost 1059.97p, best_cycle 37.74kWh, best_import 26.55kWh 2026-08-14 14:45:05.258459: >> Region optimisation pass width 240 gives best_metric 1052.35p, best_cost 1059.97p, best_cycle 37.74kWh, best_import 26.55kWh 2026-08-14 14:45:06.417428: >> Region optimisation pass width 120 gives best_metric 1052.35p, best_cost 1059.97p, best_cycle 37.74kWh, best_import 26.55kWh 2026-08-14 14:45:06.417859: Calculated end_record as 08-15 15:00:00 based on best_price 22.02p, next_charge_start 08-14 15:00:00, max_windows 48 2026-08-14 14:45:06.417938: Optimise levels pass ended at 2026-08-14 14:45:06, duration 3.2 seconds tried 313 combinations 2026-08-14 14:45:06.418016: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1052.35p, best_keep 0kWh, best_cycle 37.74kWh, best_carbon 0kg, best_import 26.55kWh 2026-08-14 14:45:06.439621: Starting detailed optimisation end_record 08-15 15:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 14.97p with charge limits [16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 14:45:09.799873: Tweak plan optimisation started metric 790.84p, cost 802.41p 2026-08-14 14:45:10.115227: Tweak optimisation finished metric 790.84p, cost 802.41p, metric_keep 0kWh, cycle 14.49kWh, carbon 0kg, import 10.23kWh, changed 8 window(s) 2026-08-14 14:45:10.136388: Swap charge optimisation started metric 790.84p, cost 802.41p, min_improvement_swap 0.1p 2026-08-14 14:45:10.965741: Swap charge optimisation finished metric 790.84p, cost 802.41p 2026-08-14 14:45:11.016549: Raw charge windows [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 100% ] reserve 1.12 2026-08-14 14:45:11.017205: Unclipped charge windows [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 15:00:00 - 16-08 15:00:00 @ 15.21p 100% ] reserve 1.12 2026-08-14 14:45:11.017403: Unfiltered charge windows [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 15:00:00 - 16-08 15:00:00 @ 15.21p 100% ] reserve 1.12 2026-08-14 14:45:11.017598: Filtered charge windows [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 15:00:00 - 16-08 15:00:00 @ 15.21p 100% ] reserve 1.12 2026-08-14 14:45:11.056173: Previous plan best metric is 790.85 (cost 802.41) and new plan best metric is 790.84 (cost 802.41) 2026-08-14 14:45:11.056482: New plan is a cost-neutral improvement but less fragmented (2 vs 3 segments), using new plan 2026-08-14 14:45:11.056527: Plan valid is now true after recompute was False 2026-08-14 14:45:11.088054: predict base end_record 08-15 15:00:00, final soc 15.09kWh, metric 1090.72p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:20:00, load 31.2kWh, PV 0.0kWh 2026-08-14 14:45:12.516914: Battery has 19.58 hours left - now at 8.82kWh 2026-08-14 14:45:12.563881: predict base10 end_record 08-15 15:00:00, final soc 12.76kWh, metric 1065.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 07:10:00, load 32.0kWh, PV 0.0kWh 2026-08-14 14:45:12.642713: predict best10 end_record 08-15 15:00:00, final soc 1.12kWh, metric 871.31p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:10:00, load 32.0kWh, PV 0.0kWh 2026-08-14 14:45:12.725940: predict best end_record 08-15 15:00:00, final soc 1.12kWh, metric 852.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:35:00, load 31.2kWh, PV 0.0kWh 2026-08-14 14:45:12.726048: Saving plan best values to HA entities 2026-08-14 14:45:12.885763: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 14:45:12.891571: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 14:45:12.897561: Best charging limit SoC's [16.0, 10.0, 16.0, 16.0]kWh, export []kWh gives import battery 4.68kWh, house 5.55kWh, export 0.0kWh, metric 852.39p, metric10 871.31p 2026-08-14 14:45:12.977200: Marginal costs baseline metric (no standing charge): 802.4064 2026-08-14 14:45:13.198923: Marginal energy costs matrix computed: min=22.13 max=35.14 2026-08-14 14:45:13.265093: Rate array import [{'start': 885, 'end': 960, 'rate': 'cheap', 'range': '(22.0p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2340, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 885, 'end': 2340, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 14:45:13.265580: - Your estimated bill for today is £6.96 and tomorrow is £8.15 2026-08-14 14:45:13.265629: - Import rates are cheap (22.0p - 22.2p) for the next 1 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 14:45:13.265655: - The battery is currently at 55% and is charging to 62% for the next 15 minutes. 2026-08-14 14:45:13.265674: - For the next 48 hours there will be no solar generation. 2026-08-14 14:45:13.265694: - You will run out of battery in 14 hours. 2026-08-14 14:45:13.265712: 2026-08-14 14:45:13.317915: Plan calculation took 10.23 seconds 2026-08-14 14:45:13.318504: Inverter 0: Type SK Sunsynk 2026-08-14 14:45:13.318583: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 14:45:13.318979: Reserve min: 7%, battery_min: 7% 2026-08-14 14:45:13.319117: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 14:45:13.319609: Inverter 0 SoC: 9.16kW 57%, current charge rate 5000W, current discharge rate 5250W, current battery power -4561W, current battery voltage 51.2V, grid power -5357W, load power 361W, PV Power 0W 2026-08-14 14:45:13.319876: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:45:13.319983: Inverter 0 scheduled charge enable is True 2026-08-14 14:45:13.320038: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 14:45:13.320143: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 14:45:13.320266: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:45:13.320302: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:45:13.320345: Inverter 0 scheduled discharge enable is False 2026-08-14 14:45:13.320506: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:45:13.320574: Inverter 0 discharge windows currently [] 2026-08-14 14:45:13.320627: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:45:13.320650: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:45:13.320674: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:45:13.381715: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 14:30:00 2026-08-14 14:45:13.381858: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 57%, target 100% 2026-08-14 14:45:13.382035: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 14:45:13.382279: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:45:13.382505: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:45:13.382603: No export window planned 2026-08-14 14:45:13.382718: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 14:45:13.382755: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:45:13.382894: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:45:13.383003: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 14:45:13.383045: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 14:45:13.383089: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 14:45:13.383196: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383243: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383275: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383307: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383332: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383363: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383389: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383452: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383492: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383526: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383555: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383587: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383619: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383645: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383725: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383755: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383780: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383809: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383839: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383883: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383914: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:45:13.383936: Inverter 0 count register writes 0 2026-08-14 14:45:13.423318: Total inverter register writes now 810 2026-08-14 14:45:13.455019: Info: Completed run status Charging 2026-08-14 14:45:13.461085: Info: record_status Charging target 57%-100.0% 2026-08-14 14:45:13.467557: Saved current settings to /config/predbat_config.json 2026-08-14 14:45:13.467842: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 14:45:43.561837: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:45:43.562200: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:45:43.562262: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:45:43.562504: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:45:43.562559: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:45:43.562600: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:45:43.562636: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:47:43.784068: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:47:43.784385: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:47:43.784429: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:47:43.784550: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:47:43.784603: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:47:43.784621: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:47:43.784636: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:49:44.013452: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:49:44.013733: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:49:44.013772: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:49:44.013886: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:49:44.013918: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:49:44.013935: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:49:44.013950: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:50:00.103777: --------------- PredBat - update at 2026-08-14 14:50:00+01:00 with clock skew 0 minutes, minutes now 890 2026-08-14 14:50:00.104507: Saved current settings to /config/predbat_config.json 2026-08-14 14:50:00.104628: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 65.0 minutes 2026-08-14 14:50:00.104717: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 14:50:00.104836: Autoupdate: Currently up to date 2026-08-14 14:50:00.124921: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 14:50:00.125120: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 14:50:00.125307: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 14:50:00.125856: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 14:50:00.126011: Predbat mode is set to Control charge & discharge 2026-08-14 14:50:00.330254: Found 21602 load_today datapoints going back 28 days 2026-08-14 14:50:00.330417: Using load_power data to fill gaps in load_today data 2026-08-14 14:50:01.176647: Processing 721 30-minute periods for power integration 2026-08-14 14:50:01.374018: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 14:50:01.374163: Car charging hold False, threshold 6.0kWh 2026-08-14 14:50:01.374212: Current data so far today: load 14.5kWh, import 24.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 14:50:01.391546: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 14:50:01.392531: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 14:50:01.392620: Standing charge is set to 49.98p 2026-08-14 14:50:01.449494: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 14:50:01.449913: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 14:50:01.450210: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 255.0 minutes 2026-08-14 14:50:01.450679: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 255.0 minutes 2026-08-14 14:50:01.458227: Loaded 95 datapoints of futurerate analysis 2026-08-14 14:50:01.554508: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3'] 2026-08-14 14:50:01.605247: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 14:50:01.610147: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 14:50:01.610527: Import rates: min 14.97p, max 53.39p, average 26.84p 2026-08-14 14:50:01.646768: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 14:50:01.646887: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 14:50:01.648111: High export rate found rates in range 99p to -99p 2026-08-14 14:50:01.731661: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 14:50:01.731799: Car 0 charging is not planned as it is not plugged in 2026-08-14 14:50:01.743603: Battery level now 8.82kWh, -1hr ago 4.98kWh, at midnight 2.43kWh, battery value change in the last hour 49.39p, change today 82.1p, rate_forward 12.86p 2026-08-14 14:50:01.744029: Last hour: net energy 5.25kWh, import 5.25kWh, export 0.0kWh, car 0kWh, load 0.82kWh, net cost 114.45p, import 114.45p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 14:50:01.799107: Today's energy total net 24.1kWh, import 24.1kWh, export 0.0kWh, cost 613.17p, import 563.18p, export 0.0p, carbon 0.0kg 2026-08-14 14:50:01.799279: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 14:50:01.872244: Using weighted-bucket historical load forecast over 14 days 2026-08-14 14:50:01.896370: Today's load divergence 128.66%, in-day adjustment 134.7%, damping 0.95x, yesterday 146.81% today 127.22% blend 38.19% 2026-08-14 14:50:01.896489: Today's predicted so far 8.73kWh with 0.0kWh car/iBoost excluded, 13.31kWh import ignored, and 8.73kWh forecast extra. 2026-08-14 14:50:01.896534: Today's actual load so far 14.5kWh with 0.0kWh car/iBoost excluded, and 13.31kWh import ignored. 2026-08-14 14:50:01.936758: Inverter 0: Type SK Sunsynk 2026-08-14 14:50:01.936848: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 14:50:01.937137: Reserve min: 7%, battery_min: 7% 2026-08-14 14:50:01.937229: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 14:50:01.937492: Inverter 0 SoC: 9.16kW 57%, current charge rate 5000W, current discharge rate 5250W, current battery power -4563W, current battery voltage 51.2V, grid power -5400W, load power 403W, PV Power 0W 2026-08-14 14:50:01.937676: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:50:01.937772: Inverter 0 scheduled charge enable is True 2026-08-14 14:50:01.937822: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 14:50:01.937916: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 14:50:01.938041: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:50:01.938079: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:50:01.938116: Inverter 0 scheduled discharge enable is False 2026-08-14 14:50:01.938231: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:50:01.938267: Inverter 0 discharge windows currently [] 2026-08-14 14:50:01.938291: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:50:01.938310: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:50:01.938333: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:50:02.011693: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 14:50:02.011823: Plan was last updated on 2026-08-14 14:45:00+01:00 and is now 5.0 minutes old 2026-08-14 14:50:02.012087: Best charge window [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 15:00:00 - 16-08 15:00:00 @ 15.21p 100% ] 2026-08-14 14:50:02.012137: Best export window [ ] 2026-08-14 14:50:02.013216: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 14:50:02.016633: Load divergence over 8.0 hours mean 371.99W, min 235.2W, max 1001.4W, std dev 127.46W, divergence 17.13% 2026-08-14 14:50:02.037977: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 14:50:02.038115: LoadML is_calculating False 2026-08-14 14:50:02.038223: Creating pool of 12 processes to match your CPU count 2026-08-14 14:50:02.166505: predict base end_record 08-15 15:05:00, final soc 15.48kWh, metric 1108.79p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:15:00, load 31.41kWh, PV 0.0kWh 2026-08-14 14:50:02.335310: Battery has 19.42 hours left - now at 9.16kWh 2026-08-14 14:50:02.380744: predict base10 end_record 08-15 15:05:00, final soc 13.08kWh, metric 1083.02p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 07:10:00, load 32.22kWh, PV 0.0kWh 2026-08-14 14:50:02.461433: predict best10 end_record 08-15 15:05:00, final soc 1.44kWh, metric 888.55p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:05:00, load 32.22kWh, PV 0.0kWh 2026-08-14 14:50:02.549002: predict best end_record 08-15 15:05:00, final soc 1.51kWh, metric 870.76p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:35:00, load 31.41kWh, PV 0.0kWh 2026-08-14 14:50:02.549120: Saving plan best values to HA entities 2026-08-14 14:50:02.720240: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 14:50:02.726208: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 14:50:02.732206: Best charging limit SoC's [16.0, 10.0, 16.0, 16.0]kWh, export []kWh gives import battery 4.73kWh, house 5.56kWh, export 0.0kWh, metric 870.76p, metric10 888.55p 2026-08-14 14:50:02.808166: Marginal costs baseline metric (no standing charge): 820.7786 2026-08-14 14:50:03.097571: Marginal energy costs matrix computed: min=22.13 max=34.79 2026-08-14 14:50:03.173187: Rate array import [{'start': 890, 'end': 960, 'rate': 'cheap', 'range': '(22.0p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2345, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 890, 'end': 2345, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 14:50:03.173685: - Your estimated bill for today is £7.07 and tomorrow is £8.16 2026-08-14 14:50:03.173738: - Import rates are cheap (22.0p - 22.2p) for the next 1 and a quarter hours and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 14:50:03.173763: - The battery is currently at 57% and is charging to 62% for the next 10 minutes. 2026-08-14 14:50:03.173800: - For the next 48 hours there will be no solar generation. 2026-08-14 14:50:03.173838: - You will run out of battery in 14 hours. 2026-08-14 14:50:03.173874: 2026-08-14 14:50:03.223907: Plan calculation took 1.21 seconds 2026-08-14 14:50:03.228875: No high rate period found 2026-08-14 14:50:03.279883: Import threshold used for optimisation was 22.25p 2026-08-14 14:50:03.337469: Low import rate windows [0: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 1: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 2: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 3: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 4: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 5: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 6: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 7: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 8: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 9: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 10: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 11: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 12: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 13: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 14: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 15: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 16: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 17: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 18: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 19: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 20: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 21: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 22: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 23: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 24: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 25: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 26: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 27: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 28: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 29: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 30: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 31: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 32: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 33: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 34: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 35: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 36: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 37: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 38: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 39: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 40: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 41: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 42: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 43: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 44: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 45: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 46: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 47: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 48: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 49: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 50: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 51: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 52: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 53: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 54: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 55: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 56: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 57: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 58: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 59: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 60: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 61: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 62: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 63: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 64: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 65: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 66: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 67: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 68: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 69: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 70: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 71: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 72: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 73: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 74: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 75: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 76: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 77: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 78: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 79: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 80: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 81: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 82: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 83: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 84: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 85: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 86: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 87: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 88: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 89: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 90: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 91: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 92: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 93: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 94: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19, 95: 08-16 14:30:00 - 08-16 15:00:00 @ 14.97] 2026-08-14 14:50:03.346937: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 14:30:00 2026-08-14 14:50:03.347068: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 57%, target 100% 2026-08-14 14:50:03.347252: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 14:50:03.347459: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:50:03.347727: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:50:03.347829: No export window planned 2026-08-14 14:50:03.347940: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 14:50:03.347977: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:50:03.348142: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:50:03.348268: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 14:50:03.348311: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 14:50:03.348386: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 14:50:03.348565: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.348623: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.348737: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.348827: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.348899: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.348997: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.349063: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.349155: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.349211: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.349245: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.349276: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.349331: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.349380: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.349441: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.349600: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.349671: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.349706: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.349735: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.349774: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.349827: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.349888: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:50:03.349928: Inverter 0 count register writes 0 2026-08-14 14:50:03.367794: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 14:50:03.373786: Total inverter register writes now 810 2026-08-14 14:50:03.408250: Info: Completed run status Charging 2026-08-14 14:50:03.415152: Info: record_status Charging target 57%-100.0% 2026-08-14 14:50:03.423146: Saved current settings to /config/predbat_config.json 2026-08-14 14:50:03.423511: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 14:50:43.543484: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:50:43.543777: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:50:43.543825: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:50:43.543993: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:50:43.544036: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:50:43.544059: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:50:43.544077: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:52:43.763332: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:52:43.763610: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:52:43.763650: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:52:43.763905: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:52:43.763958: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:52:43.763980: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:52:43.763995: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:54:43.980759: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:54:43.981115: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:54:43.981167: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:54:43.981300: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:54:43.981339: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:54:43.981361: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:54:43.981378: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:55:00.080693: --------------- PredBat - update at 2026-08-14 14:55:00+01:00 with clock skew 0 minutes, minutes now 895 2026-08-14 14:55:00.081567: Saved current settings to /config/predbat_config.json 2026-08-14 14:55:00.081802: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 70.0 minutes 2026-08-14 14:55:00.081933: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 14:55:00.082077: Autoupdate: Currently up to date 2026-08-14 14:55:00.102873: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 14:55:00.102996: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 14:55:00.103148: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 14:55:00.103591: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 14:55:00.103707: Predbat mode is set to Control charge & discharge 2026-08-14 14:55:00.274652: Found 21602 load_today datapoints going back 28 days 2026-08-14 14:55:00.274834: Using load_power data to fill gaps in load_today data 2026-08-14 14:55:01.012927: Processing 721 30-minute periods for power integration 2026-08-14 14:55:01.207622: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 14:55:01.207763: Car charging hold False, threshold 6.0kWh 2026-08-14 14:55:01.207825: Current data so far today: load 14.6kWh, import 24.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 14:55:01.223549: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 14:55:01.224392: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 14:55:01.224468: Standing charge is set to 49.98p 2026-08-14 14:55:01.272882: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 14:55:01.273053: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 14:55:01.273276: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 260.0 minutes 2026-08-14 14:55:01.273664: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 260.0 minutes 2026-08-14 14:55:01.279511: Loaded 95 datapoints of futurerate analysis 2026-08-14 14:55:01.382905: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3'] 2026-08-14 14:55:01.443675: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 14:55:01.449134: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 14:55:01.449525: Import rates: min 14.97p, max 53.39p, average 26.82p 2026-08-14 14:55:01.495704: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 14:55:01.495857: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 14:55:01.497258: High export rate found rates in range 99p to -99p 2026-08-14 14:55:01.598432: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 14:55:01.598591: Car 0 charging is not planned as it is not plugged in 2026-08-14 14:55:01.613166: Battery level now 9.16kWh, -1hr ago 5.32kWh, at midnight 2.43kWh, battery value change in the last hour 49.39p, change today 86.53p, rate_forward 12.86p 2026-08-14 14:55:01.613542: Last hour: net energy 4.8kWh, import 4.8kWh, export 0.0kWh, car 0kWh, load 0.9kWh, net cost 104.66p, import 104.66p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 14:55:01.679484: Today's energy total net 24.1kWh, import 24.1kWh, export 0.0kWh, cost 613.17p, import 563.18p, export 0.0p, carbon 0.0kg 2026-08-14 14:55:01.679715: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 14:55:01.769394: Using weighted-bucket historical load forecast over 14 days 2026-08-14 14:55:01.797827: Today's load divergence 128.55%, in-day adjustment 134.58%, damping 0.95x, yesterday 146.81% today 127.13% blend 37.85% 2026-08-14 14:55:01.797937: Today's predicted so far 8.75kWh with 0.0kWh car/iBoost excluded, 13.46kWh import ignored, and 8.75kWh forecast extra. 2026-08-14 14:55:01.797971: Today's actual load so far 14.49kWh with 0.0kWh car/iBoost excluded, and 13.46kWh import ignored. 2026-08-14 14:55:01.833314: Inverter 0: Type SK Sunsynk 2026-08-14 14:55:01.833410: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 14:55:01.833611: Reserve min: 7%, battery_min: 7% 2026-08-14 14:55:01.833693: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 14:55:01.833996: Inverter 0 SoC: 9.52kW 60%, current charge rate 5000W, current discharge rate 5250W, current battery power -4562W, current battery voltage 51.2V, grid power -6109W, load power 1111W, PV Power 0W 2026-08-14 14:55:01.834159: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:55:01.834247: Inverter 0 scheduled charge enable is True 2026-08-14 14:55:01.834294: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 14:55:01.834381: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 14:55:01.834506: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:55:01.834543: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:55:01.834580: Inverter 0 scheduled discharge enable is False 2026-08-14 14:55:01.834699: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:55:01.834735: Inverter 0 discharge windows currently [] 2026-08-14 14:55:01.834759: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:55:01.834777: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:55:01.834810: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:55:01.892842: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 14:55:01.892978: Plan was last updated on 2026-08-14 14:45:00+01:00 and is now 10.0 minutes old 2026-08-14 14:55:01.893270: Best charge window [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 15:00:00 - 16-08 15:00:00 @ 15.21p 100% ] 2026-08-14 14:55:01.893324: Best export window [ ] 2026-08-14 14:55:01.894085: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 14:55:01.897269: Load divergence over 8.0 hours mean 375.59W, min 247.2W, max 1000.8W, std dev 126.63W, divergence 16.86% 2026-08-14 14:55:01.916377: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 14:55:01.916481: LoadML is_calculating False 2026-08-14 14:55:01.916545: Creating pool of 12 processes to match your CPU count 2026-08-14 14:55:02.041024: predict base end_record 08-15 15:10:00, final soc 15.84kWh, metric 1105.83p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:10:00, load 31.51kWh, PV 0.0kWh 2026-08-14 14:55:02.192262: Battery has 19.25 hours left - now at 9.52kWh 2026-08-14 14:55:02.239901: predict base10 end_record 08-15 15:10:00, final soc 13.41kWh, metric 1079.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 07:15:00, load 32.31kWh, PV 0.0kWh 2026-08-14 14:55:02.321328: predict best10 end_record 08-15 15:10:00, final soc 1.77kWh, metric 884.98p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:05:00, load 32.31kWh, PV 0.0kWh 2026-08-14 14:55:02.427503: predict best end_record 08-15 15:10:00, final soc 1.9kWh, metric 868.34p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:35:00, load 31.51kWh, PV 0.0kWh 2026-08-14 14:55:02.427624: Saving plan best values to HA entities 2026-08-14 14:55:02.624727: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 14:55:02.630192: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 14:55:02.635555: Best charging limit SoC's [16.0, 10.0, 16.0, 16.0]kWh, export []kWh gives import battery 4.77kWh, house 5.55kWh, export 0.0kWh, metric 868.34p, metric10 884.98p 2026-08-14 14:55:02.710450: Marginal costs baseline metric (no standing charge): 818.3519 2026-08-14 14:55:02.997743: Marginal energy costs matrix computed: min=22.13 max=35.17 2026-08-14 14:55:03.077321: Rate array import [{'start': 895, 'end': 960, 'rate': 'cheap', 'range': '(22.0p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2350, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 895, 'end': 2350, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 14:55:03.078355: - Your estimated bill for today is £6.98 and tomorrow is £8.16 2026-08-14 14:55:03.078411: - Import rates are cheap (22.0p - 22.2p) for the next 1 hour and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 14:55:03.078434: - The battery is currently at 60% and is charging to 62% for the next 5 minutes. 2026-08-14 14:55:03.078453: - For the next 48 hours there will be no solar generation. 2026-08-14 14:55:03.078470: - You will run out of battery in 14 hours. 2026-08-14 14:55:03.078492: 2026-08-14 14:55:03.128397: Plan calculation took 1.24 seconds 2026-08-14 14:55:03.131471: No high rate period found 2026-08-14 14:55:03.178964: Import threshold used for optimisation was 22.25p 2026-08-14 14:55:03.226570: Low import rate windows [0: 08-14 14:30:00 - 08-14 15:00:00 @ 22.01, 1: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 2: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 3: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 4: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 5: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 6: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 7: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 8: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 9: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 10: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 11: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 12: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 13: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 14: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 15: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 16: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 17: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 18: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 19: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 20: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 21: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 22: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 23: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 24: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 25: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 26: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 27: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 28: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 29: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 30: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 31: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 32: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 33: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 34: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 35: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 36: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 37: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 38: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 39: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 40: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 41: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 42: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 43: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 44: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 45: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 46: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 47: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 48: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 49: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 50: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 51: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 52: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 53: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 54: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 55: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 56: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 57: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 58: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 59: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 60: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 61: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 62: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 63: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 64: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 65: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 66: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 67: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 68: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 69: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 70: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 71: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 72: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 73: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 74: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 75: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 76: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 77: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 78: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 79: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 80: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 81: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 82: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 83: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 84: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 85: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 86: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 87: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 88: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 89: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 90: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 91: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 92: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 93: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 94: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19, 95: 08-16 14:30:00 - 08-16 15:00:00 @ 14.97] 2026-08-14 14:55:03.234095: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 14:30:00 2026-08-14 14:55:03.234194: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 60%, target 100% 2026-08-14 14:55:03.234338: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 14:55:03.234509: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:55:03.234714: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:55:03.234812: No export window planned 2026-08-14 14:55:03.234911: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 14:55:03.234942: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:55:03.235053: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:55:03.235159: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 14:55:03.235189: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 14:55:03.235239: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 14:55:03.235334: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235368: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235391: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235435: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235458: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235481: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235502: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235537: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235561: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235586: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235611: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235631: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235653: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235678: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235728: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235751: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235772: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235804: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235830: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235851: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235870: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:03.235887: Inverter 0 count register writes 0 2026-08-14 14:55:03.249911: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 14:55:03.250057: Recompute is saving previous plan... 2026-08-14 14:55:03.253086: Best charge window [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 100%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 100%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 100%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 100%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 100%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 100%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 100%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 100%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 100%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 100%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 100%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 100%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 100%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 100%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 100%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 100%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 100%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 100%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 100%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 100%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 100%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 100%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 100%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 100%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 100%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 100%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 100%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 100%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 100%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 100%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 100%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 100%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 100%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 100%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 100%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 100%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 100%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 100%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 100% ] 2026-08-14 14:55:03.253163: Best export window [ ] 2026-08-14 14:55:03.253810: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 14:55:03.256219: Load divergence over 8.0 hours mean 375.59W, min 247.2W, max 1000.8W, std dev 126.63W, divergence 16.86% 2026-08-14 14:55:03.270934: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 14:55:03.271055: LoadML is_calculating False 2026-08-14 14:55:03.271115: Creating pool of 12 processes to match your CPU count 2026-08-14 14:55:03.348558: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 14:55:03.350430: Optimise levels pass started at 2026-08-14 14:55:03 2026-08-14 14:55:03.350488: Optimise all windows, total charge 95 export 1 2026-08-14 14:55:04.359200: >> Region optimisation pass width 960 gives best_metric 1055.14p, best_cost 1062.76p, best_cycle 36.87kWh, best_import 25.78kWh 2026-08-14 14:55:04.831685: >> Region optimisation pass width 480 gives best_metric 1055.14p, best_cost 1062.76p, best_cycle 36.87kWh, best_import 25.78kWh 2026-08-14 14:55:05.379146: >> Region optimisation pass width 240 gives best_metric 1055.14p, best_cost 1062.76p, best_cycle 36.87kWh, best_import 25.78kWh 2026-08-14 14:55:06.479277: >> Region optimisation pass width 120 gives best_metric 1055.14p, best_cost 1062.76p, best_cycle 36.87kWh, best_import 25.78kWh 2026-08-14 14:55:06.479605: Calculated end_record as 08-15 15:00:00 based on best_price 22.02p, next_charge_start 08-14 15:00:00, max_windows 48 2026-08-14 14:55:06.479668: Optimise levels pass ended at 2026-08-14 14:55:06, duration 3.1 seconds tried 313 combinations 2026-08-14 14:55:06.479721: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1055.14p, best_keep 0kWh, best_cycle 36.87kWh, best_carbon 0kg, best_import 25.78kWh 2026-08-14 14:55:06.498009: Starting detailed optimisation end_record 08-15 15:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 14.97p with charge limits [16.0, 0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 14:55:09.861282: Tweak plan optimisation started metric 792.04p, cost 803.63p 2026-08-14 14:55:10.127172: Tweak optimisation finished metric 792.04p, cost 803.63p, metric_keep 0kWh, cycle 13.77kWh, carbon 0kg, import 9.38kWh, changed 8 window(s) 2026-08-14 14:55:10.147497: Swap charge optimisation started metric 792.04p, cost 803.63p, min_improvement_swap 0.1p 2026-08-14 14:55:11.024511: Swap charge optimisation finished metric 792.04p, cost 803.63p 2026-08-14 14:55:11.073750: Raw charge windows [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 100% ] reserve 1.12 2026-08-14 14:55:11.074374: Unclipped charge windows [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 15:00:00 - 16-08 15:00:00 @ 15.21p 100% ] reserve 1.12 2026-08-14 14:55:11.074587: Unfiltered charge windows [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 15:00:00 - 16-08 15:00:00 @ 15.21p 100% ] reserve 1.12 2026-08-14 14:55:11.074859: Filtered charge windows [ 14-08 14:30:00 - 14-08 15:00:00 @ 22.01p 100%, 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 15:00:00 - 16-08 15:00:00 @ 15.21p 100% ] reserve 1.12 2026-08-14 14:55:11.111445: Previous plan best metric is 792.04 (cost 803.63) and new plan best metric is 792.04 (cost 803.63) 2026-08-14 14:55:11.111664: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 14:55:11.111823: Plan valid is now true after recompute was False 2026-08-14 14:55:11.142935: predict base end_record 08-15 15:00:00, final soc 15.09kWh, metric 1091.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:10:00, load 31.4kWh, PV 0.0kWh 2026-08-14 14:55:11.250044: Battery has 19.25 hours left - now at 9.52kWh 2026-08-14 14:55:11.297479: predict base10 end_record 08-15 15:00:00, final soc 12.76kWh, metric 1066.89p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 07:15:00, load 32.2kWh, PV 0.0kWh 2026-08-14 14:55:11.374340: predict best10 end_record 08-15 15:00:00, final soc 1.12kWh, metric 872.36p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:05:00, load 32.2kWh, PV 0.0kWh 2026-08-14 14:55:11.461321: predict best end_record 08-15 15:00:00, final soc 1.12kWh, metric 853.61p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:35:00, load 31.4kWh, PV 0.0kWh 2026-08-14 14:55:11.461419: Saving plan best values to HA entities 2026-08-14 14:55:11.616002: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 14:55:11.621264: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 14:55:11.626729: Best charging limit SoC's [16.0, 10.0, 16.0, 16.0]kWh, export []kWh gives import battery 3.83kWh, house 5.55kWh, export 0.0kWh, metric 853.61p, metric10 872.36p 2026-08-14 14:55:11.708327: Marginal costs baseline metric (no standing charge): 803.6295 2026-08-14 14:55:11.986698: Marginal energy costs matrix computed: min=22.13 max=35.17 2026-08-14 14:55:12.056665: Rate array import [{'start': 895, 'end': 960, 'rate': 'cheap', 'range': '(22.0p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2340, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 895, 'end': 2340, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 14:55:12.057165: - Your estimated bill for today is £6.98 and tomorrow is £8.16 2026-08-14 14:55:12.057220: - Import rates are cheap (22.0p - 22.2p) for the next 1 hour and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 14:55:12.057244: - The battery is currently at 60% and is charging to 62% for the next 5 minutes. 2026-08-14 14:55:12.057263: - For the next 48 hours there will be no solar generation. 2026-08-14 14:55:12.057280: - You will run out of battery in 14 hours. 2026-08-14 14:55:12.057302: 2026-08-14 14:55:12.109500: Plan calculation took 8.86 seconds 2026-08-14 14:55:12.109879: Inverter 0: Type SK Sunsynk 2026-08-14 14:55:12.109924: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 14:55:12.110177: Reserve min: 7%, battery_min: 7% 2026-08-14 14:55:12.110257: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 14:55:12.110590: Inverter 0 SoC: 9.86kW 62%, current charge rate 5000W, current discharge rate 5250W, current battery power -4561W, current battery voltage 51.2V, grid power -6113W, load power 1117W, PV Power 0W 2026-08-14 14:55:12.110871: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:55:12.110979: Inverter 0 scheduled charge enable is True 2026-08-14 14:55:12.111033: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 14:55:12.111132: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 14:55:12.111254: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:55:12.111291: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:55:12.111396: Inverter 0 scheduled discharge enable is False 2026-08-14 14:55:12.111542: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:55:12.111580: Inverter 0 discharge windows currently [] 2026-08-14 14:55:12.111609: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:55:12.111628: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:55:12.111646: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:55:12.171910: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 14:30:00 2026-08-14 14:55:12.172123: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 62%, target 100% 2026-08-14 14:55:12.172282: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 14:55:12.172474: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:55:12.172701: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:55:12.172790: No export window planned 2026-08-14 14:55:12.172943: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 14:55:12.173106: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 14:55:12.173269: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 14:55:12.173393: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 14:55:12.173436: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 14:55:12.173485: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 14:55:12.173592: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.173637: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.173666: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.173697: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.173722: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.173752: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.173776: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.173843: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.173883: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.173915: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.173968: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.174001: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.174026: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.174053: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.174119: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.174150: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.174175: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.174199: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.174224: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.174248: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.174272: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 14:55:12.174293: Inverter 0 count register writes 0 2026-08-14 14:55:12.194354: Total inverter register writes now 810 2026-08-14 14:55:12.228067: Info: Completed run status Charging 2026-08-14 14:55:12.234674: Info: record_status Charging target 62%-100.0% 2026-08-14 14:55:12.242124: Saved current settings to /config/predbat_config.json 2026-08-14 14:55:12.242481: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 14:55:44.349726: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:55:44.350033: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:55:44.350078: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:55:44.350219: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:55:44.350258: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:55:44.350279: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:55:44.350298: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:57:58.596542: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:57:58.596809: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:57:58.596856: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:57:58.597061: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:57:58.597107: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:57:58.597129: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:57:58.597147: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 14:59:58.813999: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 14:59:58.814267: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 14:59:58.814302: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 14:59:58.814469: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 14:59:58.814508: Note: Inverter does not support discharge freeze - disabled 2026-08-14 14:59:58.814530: Note: Inverter does not support charge freeze - disabled 2026-08-14 14:59:58.814575: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:00:00.924070: --------------- PredBat - update at 2026-08-14 15:00:00+01:00 with clock skew 0 minutes, minutes now 900 2026-08-14 15:00:00.924846: Saved current settings to /config/predbat_config.json 2026-08-14 15:00:00.925073: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 75.0 minutes 2026-08-14 15:00:00.925210: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 15:00:00.925355: Autoupdate: Currently up to date 2026-08-14 15:00:00.950401: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 15:00:00.950590: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 15:00:00.950933: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 15:00:00.951815: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 15:00:00.951997: Predbat mode is set to Control charge & discharge 2026-08-14 15:00:01.186386: Found 21602 load_today datapoints going back 28 days 2026-08-14 15:00:01.186545: Using load_power data to fill gaps in load_today data 2026-08-14 15:00:02.051575: Processing 721 30-minute periods for power integration 2026-08-14 15:00:02.277043: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 15:00:02.277185: Car charging hold False, threshold 6.0kWh 2026-08-14 15:00:02.277233: Current data so far today: load 14.55kWh, import 25.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 15:00:02.297817: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 15:00:02.299337: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 15:00:02.299458: Standing charge is set to 49.98p 2026-08-14 15:00:02.357254: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 15:00:02.357404: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 15:00:02.357631: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 265.0 minutes 2026-08-14 15:00:02.358083: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 265.0 minutes 2026-08-14 15:00:02.366575: Loaded 95 datapoints of futurerate analysis 2026-08-14 15:00:02.482634: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09'] 2026-08-14 15:00:02.546742: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 15:00:02.552684: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 15:00:02.553219: Import rates: min 14.97p, max 53.39p, average 26.81p 2026-08-14 15:00:02.597549: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 15:00:02.597691: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 15:00:02.599018: High export rate found rates in range 99p to -99p 2026-08-14 15:00:02.693565: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 15:00:02.693745: Car 0 charging is not planned as it is not plugged in 2026-08-14 15:00:02.710636: Battery level now 9.52kWh, -1hr ago 6.02kWh, at midnight 2.43kWh, battery value change in the last hour 44.96p, change today 91.16p, rate_forward 12.86p 2026-08-14 15:00:02.711339: Last hour: net energy 5.35kWh, import 5.35kWh, export 0.0kWh, car 0kWh, load 0.8kWh, net cost 116.87p, import 116.87p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 15:00:02.784729: Today's energy total net 25.1kWh, import 25.1kWh, export 0.0kWh, cost 635.17p, import 585.19p, export 0.0p, carbon 0.0kg 2026-08-14 15:00:02.784982: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 15:00:02.881540: Using weighted-bucket historical load forecast over 14 days 2026-08-14 15:00:02.910311: Today's load divergence 128.52%, in-day adjustment 134.49%, damping 0.95x, yesterday 146.81% today 127.1% blend 37.5% 2026-08-14 15:00:02.910413: Today's predicted so far 8.86kWh with 0.0kWh car/iBoost excluded, 14.39kWh import ignored, and 8.86kWh forecast extra. 2026-08-14 15:00:02.910446: Today's actual load so far 14.58kWh with 0.0kWh car/iBoost excluded, and 14.39kWh import ignored. 2026-08-14 15:00:02.951975: Inverter 0: Type SK Sunsynk 2026-08-14 15:00:02.952097: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:00:02.952373: Reserve min: 7%, battery_min: 7% 2026-08-14 15:00:02.952481: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:00:02.952885: Inverter 0 SoC: 10.21kW 64%, current charge rate 5000W, current discharge rate 5250W, current battery power -4564W, current battery voltage 51.2V, grid power -6039W, load power 1042W, PV Power 0W 2026-08-14 15:00:02.953190: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:00:02.953337: Inverter 0 scheduled charge enable is True 2026-08-14 15:00:02.953423: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 15:00:02.953566: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 15:00:02.953763: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:00:02.953830: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:00:02.953916: Inverter 0 scheduled discharge enable is False 2026-08-14 15:00:02.954123: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:00:02.954180: Inverter 0 discharge windows currently [] 2026-08-14 15:00:02.954264: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:00:02.954301: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:00:02.954321: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:00:03.047965: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 15:00:03.048086: Plan was last updated on 2026-08-14 14:55:00+01:00 and is now 5.0 minutes old 2026-08-14 15:00:03.048133: Current charge window has expired, removing it 2026-08-14 15:00:03.048315: Best charge window [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 15:00:00 - 16-08 15:00:00 @ 15.21p 100% ] 2026-08-14 15:00:03.048357: Best export window [ ] 2026-08-14 15:00:03.049244: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:00:03.052563: Load divergence over 8.0 hours mean 377.59W, min 239.4W, max 1011.6W, std dev 127.12W, divergence 16.83% 2026-08-14 15:00:03.071808: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:00:03.071953: LoadML is_calculating False 2026-08-14 15:00:03.072025: Creating pool of 12 processes to match your CPU count 2026-08-14 15:00:03.213250: predict base end_record 08-15 15:05:00, final soc 15.48kWh, metric 1104.11p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 10:35:00, load 31.3kWh, PV 0.0kWh 2026-08-14 15:00:03.385940: Battery has 19.58 hours left - now at 10.21kWh 2026-08-14 15:00:03.438036: predict base10 end_record 08-15 15:05:00, final soc 13.08kWh, metric 1077.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 08:05:00, load 32.1kWh, PV 0.0kWh 2026-08-14 15:00:03.523806: predict best10 end_record 08-15 15:05:00, final soc 1.44kWh, metric 881.97p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:30:00, load 32.1kWh, PV 0.0kWh 2026-08-14 15:00:03.627403: predict best end_record 08-15 15:05:00, final soc 1.51kWh, metric 864.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:05:00, load 31.3kWh, PV 0.0kWh 2026-08-14 15:00:03.627518: Saving plan best values to HA entities 2026-08-14 15:00:03.862796: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:00:03.871192: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:00:03.879154: Best charging limit SoC's [10.0, 16.0, 16.0]kWh, export []kWh gives import battery 3.72kWh, house 5.32kWh, export 0.0kWh, metric 864.38p, metric10 881.97p 2026-08-14 15:00:03.975443: Marginal costs baseline metric (no standing charge): 814.401 2026-08-14 15:00:04.277242: Marginal energy costs matrix computed: min=22.13 max=35.42 2026-08-14 15:00:04.346002: Rate array import [{'start': 900, 'end': 960, 'rate': 'cheap', 'range': '(22.0p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2345, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 900, 'end': 2345, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:00:04.346492: - Your estimated bill for today is £7.07 and tomorrow is £8.09 2026-08-14 15:00:04.346542: - Import rates are cheap (22.0p - 22.2p) for the next 1 hour and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:00:04.346565: - The battery is currently at 64% and is charging to 63% for the next 30 minutes. 2026-08-14 15:00:04.346584: - For the next 48 hours there will be no solar generation. 2026-08-14 15:00:04.346602: - You will run out of battery in 15 hours. 2026-08-14 15:00:04.346645: 2026-08-14 15:00:04.408204: Plan calculation took 1.36 seconds 2026-08-14 15:00:04.412363: No high rate period found 2026-08-14 15:00:04.479823: Import threshold used for optimisation was 22.25p 2026-08-14 15:00:04.543813: Low import rate windows [0: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 1: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 2: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 3: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 4: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 5: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 6: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 7: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 8: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 9: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 10: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 11: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 12: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 13: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 14: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 15: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 16: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 17: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 18: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 19: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 20: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 21: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 22: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 23: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 24: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 25: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 26: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 27: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 28: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 29: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 30: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 31: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 32: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 33: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 34: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 35: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 36: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 37: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 38: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 39: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 40: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 41: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 42: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 43: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 44: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 45: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 46: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 47: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 48: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 49: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 50: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 51: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 52: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 53: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 54: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 55: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 56: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 57: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 58: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 59: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 60: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 61: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 62: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 63: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 64: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 65: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 66: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 67: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 68: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 69: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 70: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 71: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 72: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 73: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 74: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 75: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 76: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 77: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 78: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 79: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 80: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 81: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 82: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 83: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 84: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 85: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 86: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 87: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 88: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 89: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 90: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 91: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 92: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 93: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19, 94: 08-16 14:30:00 - 08-16 15:00:00 @ 14.97] 2026-08-14 15:00:04.552420: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 15:00:00 2026-08-14 15:00:04.552617: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 64%, target 63% 2026-08-14 15:00:04.552848: Inverter 0 Target SoC 63%, (this inverter 63%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 15:00:04.553049: Inverter 0 Hold charging as SoC 64% is above target SoC 63% (global soc target 63%) set_discharge_during_charge True 2026-08-14 15:00:04.553230: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:00:04.553481: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:00:04.553577: No export window planned 2026-08-14 15:00:04.553682: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 15:00:04.553718: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:00:04.553853: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:00:04.553995: Inverter 0 setting charging SoC to 63% as per target 2026-08-14 15:00:04.554068: Inverter 0 adjust target SoC for charge to 63% (10.08kWh/16.0kWh 16.0kWh) based on going from 64% -> 63% total add is -0.13kWh and this battery needs to add -0.13kWh to get to 10.08kWh 2026-08-14 15:00:04.554130: Inverter 0 Current charge limit is 100% and new target is 63% 2026-08-14 15:00:09.660776: Inverter 0 write_and_poll_value: Wrote 63 to charge_limit, successfully now 63.0 2026-08-14 15:00:09.661118: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:00:09.661180: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:00:09.661212: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:00:09.661238: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:00:09.661264: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:00:09.661296: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:00:09.661322: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:00:09.661389: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog1_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 15:00:09.735405: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog2_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 15:00:09.839527: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog3_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 15:00:09.943406: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog4_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 15:00:10.047013: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog5_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 15:00:10.151013: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog6_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 15:00:10.175709: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_load_limit', 'option': 'Zero Export'} 2026-08-14 15:00:10.279787: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:00:10.279886: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:00:10.279944: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:00:10.279974: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:00:10.280000: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:00:10.280024: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:00:10.280048: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:00:10.280075: Inverter 0 count register writes 1 2026-08-14 15:00:10.312349: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 15:00:10.329779: Total inverter register writes now 811 2026-08-14 15:00:10.391274: Info: Completed run status Hold charging 2026-08-14 15:00:10.729369: Info: record_status Hold charging target 64%-63% 2026-08-14 15:00:10.737586: Saved current settings to /config/predbat_config.json 2026-08-14 15:00:10.738066: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 15:00:43.853473: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:00:43.853799: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:00:43.853850: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:00:43.854057: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:00:43.854105: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:00:43.854130: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:00:43.854177: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:02:44.084859: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:02:44.085218: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:02:44.085268: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:02:44.085406: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:02:44.085450: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:02:44.085472: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:02:44.085490: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:04:44.302964: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:04:44.303277: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:04:44.303352: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:04:44.303493: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:04:44.303546: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:04:44.303814: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:04:44.303874: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:05:00.402378: --------------- PredBat - update at 2026-08-14 15:05:00+01:00 with clock skew 0 minutes, minutes now 905 2026-08-14 15:05:00.403194: Saved current settings to /config/predbat_config.json 2026-08-14 15:05:00.403341: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 80.0 minutes 2026-08-14 15:05:00.403434: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 15:05:00.403585: Autoupdate: Currently up to date 2026-08-14 15:05:00.425948: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 15:05:00.426097: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 15:05:00.426323: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 15:05:00.426882: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 15:05:00.427059: Predbat mode is set to Control charge & discharge 2026-08-14 15:05:00.632150: Found 21602 load_today datapoints going back 28 days 2026-08-14 15:05:00.632603: Using load_power data to fill gaps in load_today data 2026-08-14 15:05:01.525443: Processing 721 30-minute periods for power integration 2026-08-14 15:05:01.735935: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 15:05:01.736095: Car charging hold False, threshold 6.0kWh 2026-08-14 15:05:01.736152: Current data so far today: load 14.6kWh, import 25.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 15:05:01.752452: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 15:05:01.753408: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 15:05:01.753504: Standing charge is set to 49.98p 2026-08-14 15:05:01.810195: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 15:05:01.810312: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 15:05:01.810519: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 270.0 minutes 2026-08-14 15:05:01.811079: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 270.0 minutes 2026-08-14 15:05:01.817614: Loaded 95 datapoints of futurerate analysis 2026-08-14 15:05:01.912574: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09'] 2026-08-14 15:05:01.959680: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 15:05:01.964392: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 15:05:01.964733: Import rates: min 14.97p, max 53.39p, average 26.8p 2026-08-14 15:05:02.000053: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 15:05:02.000174: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 15:05:02.001375: High export rate found rates in range 99p to -99p 2026-08-14 15:05:02.079865: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 15:05:02.079978: Car 0 charging is not planned as it is not plugged in 2026-08-14 15:05:02.091602: Battery level now 10.21kWh, -1hr ago 6.02kWh, at midnight 2.43kWh, battery value change in the last hour 53.81p, change today 100.01p, rate_forward 12.86p 2026-08-14 15:05:02.091916: Last hour: net energy 4.9kWh, import 4.9kWh, export 0.0kWh, car 0kWh, load 0.8kWh, net cost 107.11p, import 107.11p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 15:05:02.160149: Today's energy total net 25.1kWh, import 25.1kWh, export 0.0kWh, cost 635.17p, import 585.19p, export 0.0p, carbon 0.0kg 2026-08-14 15:05:02.160292: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 15:05:02.242011: Using weighted-bucket historical load forecast over 14 days 2026-08-14 15:05:02.265000: Today's load divergence 128.7%, in-day adjustment 134.52%, damping 0.95x, yesterday 146.81% today 127.26% blend 37.15% 2026-08-14 15:05:02.265079: Today's predicted so far 8.94kWh with 0.0kWh car/iBoost excluded, 14.36kWh import ignored, and 8.94kWh forecast extra. 2026-08-14 15:05:02.265105: Today's actual load so far 14.71kWh with 0.0kWh car/iBoost excluded, and 14.36kWh import ignored. 2026-08-14 15:05:02.297006: Inverter 0: Type SK Sunsynk 2026-08-14 15:05:02.297092: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:05:02.297270: Reserve min: 7%, battery_min: 7% 2026-08-14 15:05:02.297337: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:05:02.297568: Inverter 0 SoC: 10.21kW 64%, current charge rate 5000W, current discharge rate 5250W, current battery power 1180W, current battery voltage 51.2V, grid power -53W, load power 1225W, PV Power 0W 2026-08-14 15:05:02.297703: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:05:02.297780: Inverter 0 scheduled charge enable is True 2026-08-14 15:05:02.297818: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 15:05:02.297895: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 63.0%, power 5.0kW 2026-08-14 15:05:02.298005: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:05:02.298037: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:05:02.298069: Inverter 0 scheduled discharge enable is False 2026-08-14 15:05:02.298171: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:05:02.298201: Inverter 0 discharge windows currently [] 2026-08-14 15:05:02.298239: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:05:02.298255: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:05:02.298269: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:05:02.353354: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 15:05:02.353452: Plan was last updated on 2026-08-14 14:55:00+01:00 and is now 10.0 minutes old 2026-08-14 15:05:02.353670: Best charge window [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 15:00:00 - 16-08 15:00:00 @ 15.21p 100% ] 2026-08-14 15:05:02.353714: Best export window [ ] 2026-08-14 15:05:02.354447: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:05:02.357048: Load divergence over 8.0 hours mean 379.73W, min 239.4W, max 1094.4W, std dev 136.41W, divergence 17.96% 2026-08-14 15:05:02.372768: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:05:02.372880: LoadML is_calculating False 2026-08-14 15:05:02.372940: Creating pool of 12 processes to match your CPU count 2026-08-14 15:05:02.483600: predict base end_record 08-15 15:10:00, final soc 10.08kWh, metric 1009.23p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:15:00, load 31.33kWh, PV 0.0kWh 2026-08-14 15:05:02.619287: Battery has 11.17 hours left - now at 10.21kWh 2026-08-14 15:05:02.661416: predict base10 end_record 08-15 15:10:00, final soc 10.08kWh, metric 1027.2p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 32.12kWh, PV 0.0kWh 2026-08-14 15:05:02.731983: predict best10 end_record 08-15 15:10:00, final soc 1.77kWh, metric 886.44p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:30:00, load 32.12kWh, PV 0.0kWh 2026-08-14 15:05:02.812930: predict best end_record 08-15 15:10:00, final soc 1.9kWh, metric 870.02p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:05:00, load 31.33kWh, PV 0.0kWh 2026-08-14 15:05:02.813045: Saving plan best values to HA entities 2026-08-14 15:05:02.982075: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:05:02.988152: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:05:02.993605: Best charging limit SoC's [10.0, 16.0, 16.0]kWh, export []kWh gives import battery 4.12kWh, house 5.31kWh, export 0.0kWh, metric 870.02p, metric10 886.44p 2026-08-14 15:05:03.067555: Marginal costs baseline metric (no standing charge): 820.0337 2026-08-14 15:05:03.286023: Marginal energy costs matrix computed: min=22.4 max=35.71 2026-08-14 15:05:03.357590: Rate array import [{'start': 905, 'end': 960, 'rate': 'cheap', 'range': '(22.0p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2350, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 905, 'end': 2350, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:05:03.357985: - Your estimated bill for today is £7.05 and tomorrow is £8.07 2026-08-14 15:05:03.358041: - Import rates are cheap (22.0p - 22.2p) for the next 55 minutes and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:05:03.358061: - The battery is currently at 64% and is charging to 63% for the next 25 minutes. 2026-08-14 15:05:03.358076: - For the next 48 hours there will be no solar generation. 2026-08-14 15:05:03.358091: - You will run out of battery in 15 hours. 2026-08-14 15:05:03.358105: 2026-08-14 15:05:03.406557: Plan calculation took 1.05 seconds 2026-08-14 15:05:03.409529: No high rate period found 2026-08-14 15:05:03.455888: Import threshold used for optimisation was 22.25p 2026-08-14 15:05:03.508260: Low import rate windows [0: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 1: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 2: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 3: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 4: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 5: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 6: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 7: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 8: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 9: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 10: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 11: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 12: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 13: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 14: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 15: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 16: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 17: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 18: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 19: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 20: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 21: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 22: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 23: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 24: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 25: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 26: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 27: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 28: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 29: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 30: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 31: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 32: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 33: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 34: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 35: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 36: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 37: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 38: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 39: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 40: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 41: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 42: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 43: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 44: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 45: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 46: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 47: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 48: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 49: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 50: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 51: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 52: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 53: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 54: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 55: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 56: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 57: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 58: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 59: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 60: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 61: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 62: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 63: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 64: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 65: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 66: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 67: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 68: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 69: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 70: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 71: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 72: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 73: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 74: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 75: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 76: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 77: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 78: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 79: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 80: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 81: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 82: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 83: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 84: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 85: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 86: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 87: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 88: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 89: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 90: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 91: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 92: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 93: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19, 94: 08-16 14:30:00 - 08-16 15:00:00 @ 14.97, 95: 08-16 15:00:00 - 08-16 15:30:00 @ 15.69] 2026-08-14 15:05:03.516645: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 15:00:00 2026-08-14 15:05:03.516792: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 64%, target 63% 2026-08-14 15:05:03.517068: Inverter 0 Target SoC 63%, (this inverter 63%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 15:05:03.517169: Inverter 0 Hold charging as SoC 64% is above target SoC 63% (global soc target 63%) set_discharge_during_charge True 2026-08-14 15:05:03.517317: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:05:03.517532: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:05:03.517616: No export window planned 2026-08-14 15:05:03.517713: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 15:05:03.517737: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:05:03.517842: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:05:03.517946: Inverter 0 setting charging SoC to 63% as per target 2026-08-14 15:05:03.518010: Inverter 0 adjust target SoC for charge to 63% (10.08kWh/16.0kWh 16.0kWh) based on going from 64% -> 63% total add is -0.13kWh and this battery needs to add -0.13kWh to get to 10.08kWh 2026-08-14 15:05:03.518057: Inverter 0 Current Target SoC is 63%, already at target 2026-08-14 15:05:03.518152: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518188: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518212: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518233: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518253: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518285: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518313: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518351: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518382: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518407: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518430: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518456: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518476: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518497: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518573: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518604: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518626: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518646: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518670: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518689: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518709: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:03.518735: Inverter 0 count register writes 0 2026-08-14 15:05:03.536625: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 15:05:03.536790: Recompute is saving previous plan... 2026-08-14 15:05:03.539573: Best charge window [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 63%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 63%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 63%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 63%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 63%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 63%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 63%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 63%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 63%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 63%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 63%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 63%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 63%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 63%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 63%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 63%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 63%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 63%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 63%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 63%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 63%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 63%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 63%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 63%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 63%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 63%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 63%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 63%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 63%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 63%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 63%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 63%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 63%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 63%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 63%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 63%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 63%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 63%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 63%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 63%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 63%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 63%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 63%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 63%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 63%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 63%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 63%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 63%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 63%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 63%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 63%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 63%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 63%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 63%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 63%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 63%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 63%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 63%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 63%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 63%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 63%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 63%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 63%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 63%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 63%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 63%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 63%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 63%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 63%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 63%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 63%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 63%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 63%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 63%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 63%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 63%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 63%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 63%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 63%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 63%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 63%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 63%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 63%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 63%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 63%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 63%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 63%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 63%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 63%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 63%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 63%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 63%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 63%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 63%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.69p 63% ] 2026-08-14 15:05:03.539660: Best export window [ ] 2026-08-14 15:05:03.540412: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:05:03.542903: Load divergence over 8.0 hours mean 379.73W, min 239.4W, max 1094.4W, std dev 136.41W, divergence 17.96% 2026-08-14 15:05:03.558078: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:05:03.558212: LoadML is_calculating False 2026-08-14 15:05:03.558273: Creating pool of 12 processes to match your CPU count 2026-08-14 15:05:03.641381: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 15:05:03.643419: Optimise levels pass started at 2026-08-14 15:05:03 2026-08-14 15:05:03.643484: Optimise all windows, total charge 95 export 1 2026-08-14 15:05:04.915104: >> Region optimisation pass width 960 gives best_metric 1055.47p, best_cost 1064.66p, best_cycle 38.75kWh, best_import 25.14kWh 2026-08-14 15:05:05.443975: >> Region optimisation pass width 480 gives best_metric 1055.47p, best_cost 1064.66p, best_cycle 38.75kWh, best_import 25.14kWh 2026-08-14 15:05:06.013575: >> Region optimisation pass width 240 gives best_metric 1055.47p, best_cost 1064.66p, best_cycle 38.75kWh, best_import 25.14kWh 2026-08-14 15:05:07.250619: >> Region optimisation pass width 120 gives best_metric 1055.47p, best_cost 1064.66p, best_cycle 38.75kWh, best_import 25.14kWh 2026-08-14 15:05:07.251179: Calculated end_record as 08-15 15:30:00 based on best_price 22.02p, next_charge_start 08-14 15:30:00, max_windows 48 2026-08-14 15:05:07.251283: Optimise levels pass ended at 2026-08-14 15:05:07, duration 3.6 seconds tried 330 combinations 2026-08-14 15:05:07.251427: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1055.47p, best_keep 0kWh, best_cycle 38.75kWh, best_carbon 0kg, best_import 25.14kWh 2026-08-14 15:05:07.275268: Starting detailed optimisation end_record 08-15 15:30:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 14.97p with charge limits [0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.75, 13.75, 13.75, 13.75, 13.75, 13.75, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 15:05:10.661535: Tweak plan optimisation started metric 798.36p, cost 809.95p 2026-08-14 15:05:10.998480: Tweak optimisation finished metric 798.35p, cost 809.94p, metric_keep 0kWh, cycle 13.38kWh, carbon 0kg, import 8.78kWh, changed 8 window(s) 2026-08-14 15:05:11.021357: Swap charge optimisation started metric 798.35p, cost 809.94p, min_improvement_swap 0.1p 2026-08-14 15:05:11.496776: Swap charge optimisation finished metric 798.35p, cost 809.94p 2026-08-14 15:05:11.536989: Raw charge windows [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.69p 100% ] reserve 1.12 2026-08-14 15:05:11.537515: Unclipped charge windows [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 15:30:00 - 16-08 15:30:00 @ 15.45p 100% ] reserve 1.12 2026-08-14 15:05:11.537667: Unfiltered charge windows [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 15:30:00 - 16-08 15:30:00 @ 15.45p 100% ] reserve 1.12 2026-08-14 15:05:11.537786: Filtered charge windows [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 15:30:00 - 16-08 15:30:00 @ 15.45p 100% ] reserve 1.12 2026-08-14 15:05:11.568736: Previous plan best metric is 807.41 (cost 849.17) and new plan best metric is 798.35 (cost 809.94) 2026-08-14 15:05:11.569020: New plan metric is significantly better from previous plan, using new plan 2026-08-14 15:05:11.569067: Plan valid is now true after recompute was False 2026-08-14 15:05:11.594062: predict base end_record 08-15 15:30:00, final soc 10.08kWh, metric 1012.22p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:15:00, load 31.52kWh, PV 0.0kWh 2026-08-14 15:05:11.741555: Battery has 11.17 hours left - now at 10.21kWh 2026-08-14 15:05:11.786094: predict base10 end_record 08-15 15:30:00, final soc 10.08kWh, metric 1030.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 32.32kWh, PV 0.0kWh 2026-08-14 15:05:11.859363: predict best10 end_record 08-15 15:30:00, final soc 1.12kWh, metric 878.68p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:30:00, load 32.32kWh, PV 0.0kWh 2026-08-14 15:05:11.944839: predict best end_record 08-15 15:30:00, final soc 1.12kWh, metric 859.93p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:00:00, load 31.52kWh, PV 0.0kWh 2026-08-14 15:05:11.944919: Saving plan best values to HA entities 2026-08-14 15:05:12.095178: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:05:12.100359: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:05:12.105960: Best charging limit SoC's [10.0, 12.5, 16.0]kWh, export []kWh gives import battery 3.14kWh, house 5.64kWh, export 0.0kWh, metric 859.93p, metric10 878.68p 2026-08-14 15:05:12.189772: Marginal costs baseline metric (no standing charge): 809.944 2026-08-14 15:05:12.458137: Marginal energy costs matrix computed: min=22.42 max=35.73 2026-08-14 15:05:12.526717: Rate array import [{'start': 905, 'end': 960, 'rate': 'cheap', 'range': '(22.0p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2370, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 905, 'end': 2370, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:05:12.527255: - Your estimated bill for today is £7.04 and tomorrow is £8.76 2026-08-14 15:05:12.527304: - Import rates are cheap (22.0p - 22.2p) for the next 55 minutes and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:05:12.527328: - The battery is currently at 64% and is charging to 63% for the next 25 minutes. 2026-08-14 15:05:12.527347: - For the next 48 hours there will be no solar generation. 2026-08-14 15:05:12.527365: - You will run out of battery in 14 hours. 2026-08-14 15:05:12.527382: 2026-08-14 15:05:12.574246: Plan calculation took 9.04 seconds 2026-08-14 15:05:12.574681: Inverter 0: Type SK Sunsynk 2026-08-14 15:05:12.574719: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:05:12.574925: Reserve min: 7%, battery_min: 7% 2026-08-14 15:05:12.575006: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:05:12.575284: Inverter 0 SoC: 10.4kW 65%, current charge rate 5000W, current discharge rate 5250W, current battery power 1165W, current battery voltage 51.2V, grid power -54W, load power 1213W, PV Power 0W 2026-08-14 15:05:12.575486: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:05:12.575577: Inverter 0 scheduled charge enable is True 2026-08-14 15:05:12.575615: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 15:05:12.575696: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 63.0%, power 5.0kW 2026-08-14 15:05:12.575788: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:05:12.575818: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:05:12.575852: Inverter 0 scheduled discharge enable is False 2026-08-14 15:05:12.575956: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:05:12.575985: Inverter 0 discharge windows currently [] 2026-08-14 15:05:12.576025: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:05:12.576042: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:05:12.576061: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:05:12.630850: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 15:00:00 2026-08-14 15:05:12.630960: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 65%, target 63% 2026-08-14 15:05:12.631128: Inverter 0 Target SoC 63%, (this inverter 63%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 15:05:12.631226: Inverter 0 Hold charging as SoC 65% is above target SoC 63% (global soc target 63%) set_discharge_during_charge True 2026-08-14 15:05:12.631373: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:05:12.631562: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:05:12.631655: No export window planned 2026-08-14 15:05:12.631820: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 15:05:12.631857: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:05:12.632020: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:05:12.632133: Inverter 0 setting charging SoC to 63% as per target 2026-08-14 15:05:12.632214: Inverter 0 adjust target SoC for charge to 63% (10.08kWh/16.0kWh 16.0kWh) based on going from 65% -> 63% total add is -0.32kWh and this battery needs to add -0.32kWh to get to 10.08kWh 2026-08-14 15:05:12.632283: Inverter 0 Current Target SoC is 63%, already at target 2026-08-14 15:05:12.632410: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.632456: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.632494: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.632539: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.632582: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.632625: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.632669: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.632729: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.632775: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.632826: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.632880: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.632931: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.633010: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.633045: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.633128: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.633165: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.633196: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.633236: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.633269: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.633308: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.633346: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:05:12.633377: Inverter 0 count register writes 0 2026-08-14 15:05:12.655231: Total inverter register writes now 811 2026-08-14 15:05:12.686615: Info: Completed run status Hold charging 2026-08-14 15:05:12.692803: Info: record_status Hold charging target 65%-63% 2026-08-14 15:05:12.699456: Saved current settings to /config/predbat_config.json 2026-08-14 15:05:12.699740: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 15:05:43.799382: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:05:43.799753: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:05:43.799816: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:05:43.800034: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:05:43.800090: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:05:43.800132: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:05:43.800168: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:07:44.018949: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:07:44.019267: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:07:44.019311: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:07:44.019445: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:07:44.019484: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:07:44.019506: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:07:44.019524: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:09:44.243555: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:09:44.243823: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:09:44.243862: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:09:44.243993: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:09:44.244032: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:09:44.244071: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:09:44.244093: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:10:00.348188: --------------- PredBat - update at 2026-08-14 15:10:00+01:00 with clock skew 0 minutes, minutes now 910 2026-08-14 15:10:00.349113: Saved current settings to /config/predbat_config.json 2026-08-14 15:10:00.349289: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 85.0 minutes 2026-08-14 15:10:00.349377: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 15:10:00.349505: Autoupdate: Currently up to date 2026-08-14 15:10:00.370153: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 15:10:00.370298: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 15:10:00.370521: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 15:10:00.371124: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 15:10:00.371291: Predbat mode is set to Control charge & discharge 2026-08-14 15:10:00.563203: Found 21602 load_today datapoints going back 28 days 2026-08-14 15:10:00.563362: Using load_power data to fill gaps in load_today data 2026-08-14 15:10:01.402852: Processing 721 30-minute periods for power integration 2026-08-14 15:10:01.616051: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 15:10:01.616229: Car charging hold False, threshold 6.0kWh 2026-08-14 15:10:01.616279: Current data so far today: load 14.8kWh, import 25.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 15:10:01.632382: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 15:10:01.633348: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 15:10:01.633437: Standing charge is set to 49.98p 2026-08-14 15:10:01.684303: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 15:10:01.684412: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 15:10:01.684624: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 275.0 minutes 2026-08-14 15:10:01.685045: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 275.0 minutes 2026-08-14 15:10:01.691586: Loaded 95 datapoints of futurerate analysis 2026-08-14 15:10:01.792508: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09'] 2026-08-14 15:10:01.851825: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 15:10:01.857462: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 15:10:01.857978: Import rates: min 14.97p, max 53.39p, average 26.79p 2026-08-14 15:10:01.901695: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 15:10:01.901873: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 15:10:01.903199: High export rate found rates in range 99p to -99p 2026-08-14 15:10:02.000067: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 15:10:02.000225: Car 0 charging is not planned as it is not plugged in 2026-08-14 15:10:02.013621: Battery level now 10.21kWh, -1hr ago 6.38kWh, at midnight 2.43kWh, battery value change in the last hour 49.28p, change today 100.01p, rate_forward 12.86p 2026-08-14 15:10:02.014043: Last hour: net energy 5.1kWh, import 5.1kWh, export 0.0kWh, car 0kWh, load 0.95kWh, net cost 111.76p, import 111.76p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 15:10:02.083783: Today's energy total net 25.8kWh, import 25.8kWh, export 0.0kWh, cost 650.66p, import 600.68p, export 0.0p, carbon 0.0kg 2026-08-14 15:10:02.083947: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 15:10:02.179150: Using weighted-bucket historical load forecast over 14 days 2026-08-14 15:10:02.207666: Today's load divergence 129.08%, in-day adjustment 134.69%, damping 0.95x, yesterday 146.81% today 127.63% blend 36.81% 2026-08-14 15:10:02.207761: Today's predicted so far 8.96kWh with 0.0kWh car/iBoost excluded, 14.8kWh import ignored, and 8.96kWh forecast extra. 2026-08-14 15:10:02.207793: Today's actual load so far 14.84kWh with 0.0kWh car/iBoost excluded, and 14.8kWh import ignored. 2026-08-14 15:10:02.255704: Inverter 0: Type SK Sunsynk 2026-08-14 15:10:02.255817: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:10:02.256115: Reserve min: 7%, battery_min: 7% 2026-08-14 15:10:02.256238: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:10:02.256644: Inverter 0 SoC: 10.4kW 65%, current charge rate 5000W, current discharge rate 5250W, current battery power 1297W, current battery voltage 51.2V, grid power -55W, load power 1339W, PV Power 0W 2026-08-14 15:10:02.256836: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:10:02.257028: Inverter 0 scheduled charge enable is True 2026-08-14 15:10:02.257144: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 15:10:02.257320: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 63.0%, power 5.0kW 2026-08-14 15:10:02.257525: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:10:02.257588: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:10:02.257655: Inverter 0 scheduled discharge enable is False 2026-08-14 15:10:02.257853: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:10:02.257905: Inverter 0 discharge windows currently [] 2026-08-14 15:10:02.257947: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:10:02.257994: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:10:02.258040: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:10:02.324314: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 15:10:02.324465: Plan was last updated on 2026-08-14 15:05:00+01:00 and is now 5.0 minutes old 2026-08-14 15:10:02.324766: Best charge window [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 15:30:00 - 16-08 15:30:00 @ 15.45p 100% ] 2026-08-14 15:10:02.324836: Best export window [ ] 2026-08-14 15:10:02.325826: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:10:02.328980: Load divergence over 8.0 hours mean 384.87W, min 244.8W, max 984.0W, std dev 137.84W, divergence 17.91% 2026-08-14 15:10:02.347748: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:10:02.347871: LoadML is_calculating False 2026-08-14 15:10:02.347938: Creating pool of 12 processes to match your CPU count 2026-08-14 15:10:02.472818: predict base end_record 08-15 15:35:00, final soc 10.08kWh, metric 1022.89p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:15:00, load 31.7kWh, PV 0.0kWh 2026-08-14 15:10:02.610104: Battery has 11.08 hours left - now at 10.4kWh 2026-08-14 15:10:02.649591: predict base10 end_record 08-15 15:35:00, final soc 10.08kWh, metric 1041.03p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 32.51kWh, PV 0.0kWh 2026-08-14 15:10:02.734201: predict best10 end_record 08-15 15:35:00, final soc 1.44kWh, metric 895.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:35:00, load 32.51kWh, PV 0.0kWh 2026-08-14 15:10:02.821679: predict best end_record 08-15 15:35:00, final soc 1.51kWh, metric 877.46p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 31.7kWh, PV 0.0kWh 2026-08-14 15:10:02.821771: Saving plan best values to HA entities 2026-08-14 15:10:02.998243: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:10:03.006749: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:10:03.012430: Best charging limit SoC's [10.0, 12.5, 16.0]kWh, export []kWh gives import battery 3.33kWh, house 5.66kWh, export 0.0kWh, metric 877.46p, metric10 895.1p 2026-08-14 15:10:03.079330: Marginal costs baseline metric (no standing charge): 827.481 2026-08-14 15:10:03.295570: Marginal energy costs matrix computed: min=22.76 max=36.09 2026-08-14 15:10:03.376300: Rate array import [{'start': 910, 'end': 960, 'rate': 'cheap', 'range': '(22.0p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2375, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 910, 'end': 2375, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:10:03.376790: - Your estimated bill for today is £7.14 and tomorrow is £8.78 2026-08-14 15:10:03.376834: - Import rates are cheap (22.0p - 22.2p) for the next 50 minutes and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:10:03.376857: - The battery is currently at 65% and is charging to 63% for the next 20 minutes. 2026-08-14 15:10:03.376876: - For the next 48 hours there will be no solar generation. 2026-08-14 15:10:03.376894: - You will run out of battery in 14 hours. 2026-08-14 15:10:03.376911: 2026-08-14 15:10:03.421001: Plan calculation took 1.10 seconds 2026-08-14 15:10:03.423964: No high rate period found 2026-08-14 15:10:03.470386: Import threshold used for optimisation was 22.25p 2026-08-14 15:10:03.518653: Low import rate windows [0: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 1: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 2: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 3: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 4: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 5: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 6: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 7: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 8: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 9: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 10: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 11: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 12: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 13: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 14: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 15: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 16: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 17: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 18: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 19: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 20: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 21: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 22: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 23: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 24: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 25: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 26: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 27: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 28: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 29: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 30: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 31: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 32: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 33: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 34: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 35: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 36: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 37: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 38: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 39: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 40: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 41: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 42: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 43: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 44: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 45: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 46: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 47: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 48: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 49: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 50: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 51: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 52: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 53: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 54: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 55: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 56: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 57: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 58: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 59: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 60: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 61: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 62: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 63: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 64: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 65: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 66: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 67: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 68: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 69: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 70: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 71: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 72: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 73: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 74: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 75: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 76: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 77: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 78: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 79: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 80: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 81: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 82: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 83: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 84: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 85: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 86: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 87: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 88: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 89: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 90: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 91: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 92: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 93: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19, 94: 08-16 14:30:00 - 08-16 15:00:00 @ 14.97, 95: 08-16 15:00:00 - 08-16 15:30:00 @ 15.69] 2026-08-14 15:10:03.526878: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 15:00:00 2026-08-14 15:10:03.527003: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 65%, target 63% 2026-08-14 15:10:03.527202: Inverter 0 Target SoC 63%, (this inverter 63%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 15:10:03.527295: Inverter 0 Hold charging as SoC 65% is above target SoC 63% (global soc target 63%) set_discharge_during_charge True 2026-08-14 15:10:03.527442: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:10:03.527727: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:10:03.527833: No export window planned 2026-08-14 15:10:03.527948: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 15:10:03.527985: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:10:03.528139: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:10:03.528263: Inverter 0 setting charging SoC to 63% as per target 2026-08-14 15:10:03.528332: Inverter 0 adjust target SoC for charge to 63% (10.08kWh/16.0kWh 16.0kWh) based on going from 65% -> 63% total add is -0.32kWh and this battery needs to add -0.32kWh to get to 10.08kWh 2026-08-14 15:10:03.528409: Inverter 0 Current Target SoC is 63%, already at target 2026-08-14 15:10:03.528519: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.528562: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.528590: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.528616: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.528641: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.528693: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.528738: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.528790: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.528826: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.528855: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.528884: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.528914: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.528943: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.529018: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.529110: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.529145: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.529171: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.529196: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.529227: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.529252: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.529276: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:10:03.529299: Inverter 0 count register writes 0 2026-08-14 15:10:03.547098: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 15:10:03.552745: Total inverter register writes now 811 2026-08-14 15:10:03.587853: Info: Completed run status Hold charging 2026-08-14 15:10:03.594695: Info: record_status Hold charging target 65%-63% 2026-08-14 15:10:03.602171: Saved current settings to /config/predbat_config.json 2026-08-14 15:10:03.602476: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 15:10:43.714280: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:10:43.714569: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:10:43.714636: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:10:43.714786: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:10:43.714826: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:10:43.714847: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:10:43.714865: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:11:03.455009: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 15:11:04.304768: Processing 1345 30-minute periods for power integration 2026-08-14 15:11:04.395500: ML Component: Car charging hold False, car energy reported load False 2026-08-14 15:11:04.479180: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 15:11:04.568331: ML Temperature data points: 49491 2026-08-14 15:11:04.806713: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 15:11:04.840431: ML Component: Data fetch completed, load data age 56.0 days, 16159 data points 2026-08-14 15:11:04.840605: ML Component: No training needed, model age is 0.45 hours 2026-08-14 15:11:04.840675: ML Component: Generating predictions load data age 56.0 days, 16159 data points 2026-08-14 15:11:04.956113: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.1098 max_dow {0: 0.10014999996256083, 1: 0.10541562554407864, 2: 0.11911562483031304, 3: 0.12494687463529408, 4: 0.17094062535744162, 5: 0.1007093750283122, 6: 0.10970937514957041} 2026-08-14 15:11:05.462289: ML Component: Generated 576 predictions (total 37.11 kWh over 48h) 2026-08-14 15:11:05.502390: ML Component: Prediction cycle completed 2026-08-14 15:11:05.618763: ML Component: Saved 16159 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 15:12:44.078832: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:12:44.079147: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:12:44.079207: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:12:44.079457: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:12:44.079497: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:12:44.079515: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:12:44.079530: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:14:44.301747: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:14:44.302037: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:14:44.302130: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:14:44.302333: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:14:44.302374: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:14:44.302397: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:14:44.302415: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:15:00.399281: --------------- PredBat - update at 2026-08-14 15:15:00+01:00 with clock skew 0 minutes, minutes now 915 2026-08-14 15:15:00.400194: Saved current settings to /config/predbat_config.json 2026-08-14 15:15:00.400382: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 90.0 minutes 2026-08-14 15:15:00.400493: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 15:15:00.400595: Autoupdate: Currently up to date 2026-08-14 15:15:00.419357: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 15:15:00.419482: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 15:15:00.419677: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 15:15:00.420201: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 15:15:00.420332: Predbat mode is set to Control charge & discharge 2026-08-14 15:15:00.626428: Found 21602 load_today datapoints going back 28 days 2026-08-14 15:15:00.626888: Using load_power data to fill gaps in load_today data 2026-08-14 15:15:01.476087: Processing 721 30-minute periods for power integration 2026-08-14 15:15:01.678525: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 15:15:01.678659: Car charging hold False, threshold 6.0kWh 2026-08-14 15:15:01.678706: Current data so far today: load 14.9kWh, import 25.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 15:15:01.695105: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 15:15:01.695925: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 15:15:01.695999: Standing charge is set to 49.98p 2026-08-14 15:15:01.748521: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 15:15:01.748648: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 15:15:01.748898: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 280.0 minutes 2026-08-14 15:15:01.749403: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 280.0 minutes 2026-08-14 15:15:01.755046: Loaded 95 datapoints of futurerate analysis 2026-08-14 15:15:01.839902: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09'] 2026-08-14 15:15:01.891425: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 15:15:01.896380: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 15:15:01.896735: Import rates: min 14.97p, max 53.39p, average 26.78p 2026-08-14 15:15:01.937979: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 15:15:01.938536: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 15:15:01.939848: High export rate found rates in range 99p to -99p 2026-08-14 15:15:02.041107: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 15:15:02.041496: Car 0 charging is not planned as it is not plugged in 2026-08-14 15:15:02.053209: Battery level now 10.4kWh, -1hr ago 6.73kWh, at midnight 2.43kWh, battery value change in the last hour 47.22p, change today 102.48p, rate_forward 12.86p 2026-08-14 15:15:02.053517: Last hour: net energy 4.6kWh, import 4.6kWh, export 0.0kWh, car 0kWh, load 1.0kWh, net cost 100.91p, import 100.91p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 15:15:02.107136: Today's energy total net 25.8kWh, import 25.8kWh, export 0.0kWh, cost 650.66p, import 600.68p, export 0.0p, carbon 0.0kg 2026-08-14 15:15:02.107270: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 15:15:02.194765: Using weighted-bucket historical load forecast over 14 days 2026-08-14 15:15:02.224232: Today's load divergence 129.3%, in-day adjustment 134.76%, damping 0.95x, yesterday 146.81% today 127.84% blend 36.46% 2026-08-14 15:15:02.224323: Today's predicted so far 8.98kWh with 0.0kWh car/iBoost excluded, 14.8kWh import ignored, and 8.98kWh forecast extra. 2026-08-14 15:15:02.224356: Today's actual load so far 14.92kWh with 0.0kWh car/iBoost excluded, and 14.8kWh import ignored. 2026-08-14 15:15:02.259534: Inverter 0: Type SK Sunsynk 2026-08-14 15:15:02.259629: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:15:02.259870: Reserve min: 7%, battery_min: 7% 2026-08-14 15:15:02.259976: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:15:02.260308: Inverter 0 SoC: 10.19kW 64%, current charge rate 5000W, current discharge rate 5250W, current battery power -10W, current battery voltage 51.2V, grid power -941W, load power 940W, PV Power 0W 2026-08-14 15:15:02.260528: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:15:02.260642: Inverter 0 scheduled charge enable is True 2026-08-14 15:15:02.260709: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 15:15:02.260843: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 63.0%, power 5.0kW 2026-08-14 15:15:02.261045: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:15:02.261240: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:15:02.261320: Inverter 0 scheduled discharge enable is False 2026-08-14 15:15:02.262134: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:15:02.262187: Inverter 0 discharge windows currently [] 2026-08-14 15:15:02.262224: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:15:02.262254: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:15:02.262284: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:15:02.325574: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 15:15:02.325673: Plan was last updated on 2026-08-14 15:05:00+01:00 and is now 10.0 minutes old 2026-08-14 15:15:02.325844: Best charge window [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 15:30:00 - 16-08 15:30:00 @ 15.45p 100% ] 2026-08-14 15:15:02.325879: Best export window [ ] 2026-08-14 15:15:02.326544: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:15:02.329057: Load divergence over 8.0 hours mean 389.86W, min 251.4W, max 1090.2W, std dev 141.23W, divergence 18.11% 2026-08-14 15:15:02.347131: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:15:02.347243: LoadML is_calculating False 2026-08-14 15:15:02.347302: Creating pool of 12 processes to match your CPU count 2026-08-14 15:15:02.482706: predict base end_record 08-15 15:40:00, final soc 10.08kWh, metric 1027.18p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:10:00, load 31.8kWh, PV 0.0kWh 2026-08-14 15:15:02.625293: Battery has 10.92 hours left - now at 10.19kWh 2026-08-14 15:15:02.669403: predict base10 end_record 08-15 15:40:00, final soc 10.08kWh, metric 1045.34p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:40:00, load 32.6kWh, PV 0.0kWh 2026-08-14 15:15:02.744155: predict best10 end_record 08-15 15:40:00, final soc 1.77kWh, metric 905.03p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:25:00, load 32.6kWh, PV 0.0kWh 2026-08-14 15:15:02.826196: predict best end_record 08-15 15:40:00, final soc 1.9kWh, metric 888.53p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 31.8kWh, PV 0.0kWh 2026-08-14 15:15:02.826285: Saving plan best values to HA entities 2026-08-14 15:15:03.001043: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:15:03.008408: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:15:03.013503: Best charging limit SoC's [10.0, 12.5, 16.0]kWh, export []kWh gives import battery 3.92kWh, house 5.69kWh, export 0.0kWh, metric 888.53p, metric10 905.03p 2026-08-14 15:15:03.083527: Marginal costs baseline metric (no standing charge): 838.5445 2026-08-14 15:15:03.300834: Marginal energy costs matrix computed: min=22.98 max=36.46 2026-08-14 15:15:03.366420: Rate array import [{'start': 915, 'end': 960, 'rate': 'cheap', 'range': '(22.0p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2380, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 915, 'end': 2380, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:15:03.366794: - Your estimated bill for today is £7.17 and tomorrow is £8.79 2026-08-14 15:15:03.366830: - Import rates are cheap (22.0p - 22.2p) for the next 45 minutes and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:15:03.366849: - The battery is currently at 64% and is charging to 63% for the next 15 minutes. 2026-08-14 15:15:03.366864: - For the next 48 hours there will be no solar generation. 2026-08-14 15:15:03.366878: - You will run out of battery in 14 hours. 2026-08-14 15:15:03.366892: 2026-08-14 15:15:03.411414: Plan calculation took 1.09 seconds 2026-08-14 15:15:03.414358: No high rate period found 2026-08-14 15:15:03.458986: Import threshold used for optimisation was 22.25p 2026-08-14 15:15:03.509241: Low import rate windows [0: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 1: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 2: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 3: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 4: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 5: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 6: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 7: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 8: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 9: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 10: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 11: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 12: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 13: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 14: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 15: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 16: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 17: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 18: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 19: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 20: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 21: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 22: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 23: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 24: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 25: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 26: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 27: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 28: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 29: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 30: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 31: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 32: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 33: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 34: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 35: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 36: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 37: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 38: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 39: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 40: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 41: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 42: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 43: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 44: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 45: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 46: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 47: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 48: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 49: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 50: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 51: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 52: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 53: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 54: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 55: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 56: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 57: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 58: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 59: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 60: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 61: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 62: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 63: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 64: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 65: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 66: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 67: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 68: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 69: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 70: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 71: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 72: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 73: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 74: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 75: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 76: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 77: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 78: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 79: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 80: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 81: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 82: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 83: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 84: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 85: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 86: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 87: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 88: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 89: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 90: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 91: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 92: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 93: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19, 94: 08-16 14:30:00 - 08-16 15:00:00 @ 14.97, 95: 08-16 15:00:00 - 08-16 15:30:00 @ 15.69] 2026-08-14 15:15:03.516553: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 15:00:00 2026-08-14 15:15:03.516658: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 64%, target 63% 2026-08-14 15:15:03.516819: Inverter 0 Target SoC 63%, (this inverter 63%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 15:15:03.516894: Inverter 0 Hold charging as SoC 64% is above target SoC 63% (global soc target 63%) set_discharge_during_charge True 2026-08-14 15:15:03.517070: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:15:03.517294: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:15:03.517376: No export window planned 2026-08-14 15:15:03.517475: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 15:15:03.517504: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:15:03.517611: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:15:03.517710: Inverter 0 setting charging SoC to 63% as per target 2026-08-14 15:15:03.517765: Inverter 0 adjust target SoC for charge to 63% (10.08kWh/16.0kWh 16.0kWh) based on going from 64% -> 63% total add is -0.11kWh and this battery needs to add -0.11kWh to get to 10.08kWh 2026-08-14 15:15:03.517816: Inverter 0 Current Target SoC is 63%, already at target 2026-08-14 15:15:03.517918: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.517952: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.517975: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.517999: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.518019: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.518043: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.518063: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.518098: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.518143: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.518193: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.518216: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.518240: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.518260: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.518283: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.518335: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.518364: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.518386: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.518409: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.518429: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.518452: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.518490: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:03.518509: Inverter 0 count register writes 0 2026-08-14 15:15:03.532699: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 15:15:03.532840: Recompute is saving previous plan... 2026-08-14 15:15:03.535489: Best charge window [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 63%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 63%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 63%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 63%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 63%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 63%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 63%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 63%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 63%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 63%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 63%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 63%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 63%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 63%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 63%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 63%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 63%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 63%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 63%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 63%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 63%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 63%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 63%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 63%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 63%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 63%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 63%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 63%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 63%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 63%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 63%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 63%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 63%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 63%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 63%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 63%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 63%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 63%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 63%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 63%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 63%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 63%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 63%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 63%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 63%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 63%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 63%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 63%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 63%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 63%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 63%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 63%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 63%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 63%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 63%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 63%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 63%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 63%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 63%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 63%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 63%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 63%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 63%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 63%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 63%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 63%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 63%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 63%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 63%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 63%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 63%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 63%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 63%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 63%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 63%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 63%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 63%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 63%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 63%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 63%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 63%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 63%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 63%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 63%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 63%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 63%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 63%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 63%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 63%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 63%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 63%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 63%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 63%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 63%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.69p 63% ] 2026-08-14 15:15:03.535559: Best export window [ ] 2026-08-14 15:15:03.536252: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:15:03.538812: Load divergence over 8.0 hours mean 389.86W, min 251.4W, max 1090.2W, std dev 141.23W, divergence 18.11% 2026-08-14 15:15:03.553295: Calculating data from yesterday for savings calculation 2026-08-14 15:15:03.563398: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 15:15:03.600346: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 15:15:03.611777: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 869.96p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 15:15:03.627487: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 15:15:03.652657: Yesterday: Predbat disabled was £8.56 (adjusted £8.42) vs £6.21 (adjusted £5.88), saving £2.35 (adjusted £2.53) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 14.4kWh 2026-08-14 15:15:03.726619: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 901.25p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 15:15:03.726747: Yesterday: No Battery/PV system cost predicted was £9.01 (adjusted £9.01) vs £6.21 (adjusted £5.88), saving £2.8 (adjusted £3.13) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 15:15:03.735960: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:15:03.736094: LoadML is_calculating False 2026-08-14 15:15:03.736177: Creating pool of 12 processes to match your CPU count 2026-08-14 15:15:03.817733: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 15:15:03.819605: Optimise levels pass started at 2026-08-14 15:15:03 2026-08-14 15:15:03.819664: Optimise all windows, total charge 95 export 1 2026-08-14 15:15:04.754296: >> Region optimisation pass width 960 gives best_metric 1072.62p, best_cost 1080.27p, best_cycle 36.75kWh, best_import 25.01kWh 2026-08-14 15:15:05.244621: >> Region optimisation pass width 480 gives best_metric 1072.62p, best_cost 1080.27p, best_cycle 36.75kWh, best_import 25.01kWh 2026-08-14 15:15:05.775934: >> Region optimisation pass width 240 gives best_metric 1072.62p, best_cost 1080.27p, best_cycle 36.75kWh, best_import 25.01kWh 2026-08-14 15:15:06.779059: >> Region optimisation pass width 120 gives best_metric 1072.62p, best_cost 1080.27p, best_cycle 36.75kWh, best_import 25.01kWh 2026-08-14 15:15:06.779403: Calculated end_record as 08-15 15:30:00 based on best_price 22.02p, next_charge_start 08-14 15:30:00, max_windows 48 2026-08-14 15:15:06.779480: Optimise levels pass ended at 2026-08-14 15:15:06, duration 3.0 seconds tried 316 combinations 2026-08-14 15:15:06.779548: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1072.62p, best_keep 0kWh, best_cycle 36.75kWh, best_carbon 0kg, best_import 25.01kWh 2026-08-14 15:15:06.800204: Starting detailed optimisation end_record 08-15 15:30:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 14.97p with charge limits [0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 15:15:09.966758: Tweak plan optimisation started metric 811.89p, cost 823.48p 2026-08-14 15:15:10.277429: Tweak optimisation finished metric 811.89p, cost 823.48p, metric_keep 0kWh, cycle 13.46kWh, carbon 0kg, import 8.7kWh, changed 8 window(s) 2026-08-14 15:15:10.296710: Swap charge optimisation started metric 811.89p, cost 823.48p, min_improvement_swap 0.1p 2026-08-14 15:15:10.852103: Swap charge optimisation finished metric 811.89p, cost 823.48p 2026-08-14 15:15:10.883827: Raw charge windows [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.69p 100% ] reserve 1.12 2026-08-14 15:15:10.884344: Unclipped charge windows [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 15:30:00 - 16-08 15:30:00 @ 15.45p 100% ] reserve 1.12 2026-08-14 15:15:10.884491: Unfiltered charge windows [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 15:30:00 - 16-08 15:30:00 @ 15.45p 100% ] reserve 1.12 2026-08-14 15:15:10.884616: Filtered charge windows [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 15:30:00 - 16-08 15:30:00 @ 15.45p 100% ] reserve 1.12 2026-08-14 15:15:10.922104: Previous plan best metric is 811.89 (cost 823.49) and new plan best metric is 811.89 (cost 823.48) 2026-08-14 15:15:10.922389: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 15:15:10.922552: Plan valid is now true after recompute was False 2026-08-14 15:15:10.958323: predict base end_record 08-15 15:30:00, final soc 10.08kWh, metric 1025.81p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:10:00, load 31.71kWh, PV 0.0kWh 2026-08-14 15:15:11.078263: Battery has 10.92 hours left - now at 10.19kWh 2026-08-14 15:15:11.123536: predict base10 end_record 08-15 15:30:00, final soc 10.08kWh, metric 1043.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:40:00, load 32.51kWh, PV 0.0kWh 2026-08-14 15:15:11.195482: predict best10 end_record 08-15 15:30:00, final soc 1.12kWh, metric 892.19p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:25:00, load 32.51kWh, PV 0.0kWh 2026-08-14 15:15:11.273646: predict best end_record 08-15 15:30:00, final soc 1.12kWh, metric 873.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:55:00, load 31.71kWh, PV 0.0kWh 2026-08-14 15:15:11.273761: Saving plan best values to HA entities 2026-08-14 15:15:11.450714: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:15:11.456471: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:15:11.462321: Best charging limit SoC's [10.0, 12.5, 16.0]kWh, export []kWh gives import battery 3.0kWh, house 5.69kWh, export 0.0kWh, metric 873.47p, metric10 892.19p 2026-08-14 15:15:11.548326: Marginal costs baseline metric (no standing charge): 823.4901 2026-08-14 15:15:11.832198: Marginal energy costs matrix computed: min=22.98 max=36.46 2026-08-14 15:15:11.905476: Rate array import [{'start': 915, 'end': 960, 'rate': 'cheap', 'range': '(22.0p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2370, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 915, 'end': 2370, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:15:11.906035: - Your estimated bill for today is £7.17 and tomorrow is £8.79 2026-08-14 15:15:11.906097: - Import rates are cheap (22.0p - 22.2p) for the next 45 minutes and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:15:11.906153: - The battery is currently at 64% and is charging to 63% for the next 15 minutes. 2026-08-14 15:15:11.906190: - For the next 48 hours there will be no solar generation. 2026-08-14 15:15:11.906231: - You will run out of battery in 14 hours. 2026-08-14 15:15:11.906276: 2026-08-14 15:15:11.957631: Plan calculation took 8.42 seconds 2026-08-14 15:15:11.957987: Inverter 0: Type SK Sunsynk 2026-08-14 15:15:11.958030: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:15:11.958296: Reserve min: 7%, battery_min: 7% 2026-08-14 15:15:11.958379: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:15:11.958714: Inverter 0 SoC: 10.19kW 64%, current charge rate 5000W, current discharge rate 5250W, current battery power -10W, current battery voltage 51.2V, grid power -941W, load power 940W, PV Power 0W 2026-08-14 15:15:11.958951: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:15:11.959056: Inverter 0 scheduled charge enable is True 2026-08-14 15:15:11.959109: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 15:15:11.959219: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 63.0%, power 5.0kW 2026-08-14 15:15:11.959342: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:15:11.959378: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:15:11.959419: Inverter 0 scheduled discharge enable is False 2026-08-14 15:15:11.959546: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:15:11.959583: Inverter 0 discharge windows currently [] 2026-08-14 15:15:11.959612: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:15:11.959631: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:15:11.959649: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:15:12.014792: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 15:00:00 2026-08-14 15:15:12.014925: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 64%, target 63% 2026-08-14 15:15:12.015155: Inverter 0 Target SoC 63%, (this inverter 63%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 15:15:12.015273: Inverter 0 Hold charging as SoC 64% is above target SoC 63% (global soc target 63%) set_discharge_during_charge True 2026-08-14 15:15:12.015457: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:15:12.015716: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:15:12.015842: No export window planned 2026-08-14 15:15:12.016005: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 15:15:12.016050: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:15:12.016274: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:15:12.016423: Inverter 0 setting charging SoC to 63% as per target 2026-08-14 15:15:12.016529: Inverter 0 adjust target SoC for charge to 63% (10.08kWh/16.0kWh 16.0kWh) based on going from 64% -> 63% total add is -0.11kWh and this battery needs to add -0.11kWh to get to 10.08kWh 2026-08-14 15:15:12.016613: Inverter 0 Current Target SoC is 63%, already at target 2026-08-14 15:15:12.016768: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.016822: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.016885: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.016922: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.017006: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.017069: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.017146: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.017224: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.017289: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.017353: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.017386: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.017439: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.017484: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.017517: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.017626: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.017683: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.017735: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.017764: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.017822: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.017889: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.017933: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:15:12.017975: Inverter 0 count register writes 0 2026-08-14 15:15:12.047442: Total inverter register writes now 811 2026-08-14 15:15:12.090966: Info: Completed run status Hold charging 2026-08-14 15:15:12.101390: Info: record_status Hold charging target 64%-63% 2026-08-14 15:15:12.109712: Saved current settings to /config/predbat_config.json 2026-08-14 15:15:12.110049: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 15:15:44.224420: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:15:44.225040: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:15:44.225106: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:15:44.225348: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:15:44.225417: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:15:44.225457: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:15:44.225493: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:17:44.442646: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:17:44.442914: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:17:44.442957: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:17:44.443094: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:17:44.443134: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:17:44.443170: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:17:44.443190: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:18:11.497090: TemperatureAPI: Using coordinates latitude 53.4, longitude -2.2 2026-08-14 15:18:11.654755: TemperatureAPI: Successfully fetched temperature data from Open-Meteo API 2026-08-14 15:18:53.432287: Info: HAHistory: Pruning history data started. 2026-08-14 15:18:53.435607: Info: HAHistory: Pruning history data completed. 2026-08-14 15:19:58.687512: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:19:58.687809: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:19:58.687881: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:19:58.688015: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:19:58.688046: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:19:58.688067: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:19:58.688086: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:20:00.769176: --------------- PredBat - update at 2026-08-14 15:20:00+01:00 with clock skew 0 minutes, minutes now 920 2026-08-14 15:20:00.769848: Saved current settings to /config/predbat_config.json 2026-08-14 15:20:00.769952: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 95.0 minutes 2026-08-14 15:20:00.770023: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 15:20:00.770097: Autoupdate: Currently up to date 2026-08-14 15:20:00.785792: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 15:20:00.785899: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 15:20:00.786061: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 15:20:00.786500: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 15:20:00.786606: Predbat mode is set to Control charge & discharge 2026-08-14 15:20:00.950151: Found 21602 load_today datapoints going back 27 days 2026-08-14 15:20:00.950307: Using load_power data to fill gaps in load_today data 2026-08-14 15:20:01.856353: Processing 721 30-minute periods for power integration 2026-08-14 15:20:02.046857: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 15:20:02.046995: Car charging hold False, threshold 6.0kWh 2026-08-14 15:20:02.047041: Current data so far today: load 15.0kWh, import 25.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 15:20:02.062607: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 15:20:02.063412: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 15:20:02.063489: Standing charge is set to 49.98p 2026-08-14 15:20:02.103516: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 15:20:02.103618: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 15:20:02.103818: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 285.0 minutes 2026-08-14 15:20:02.104296: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 285.0 minutes 2026-08-14 15:20:02.111199: Loaded 95 datapoints of futurerate analysis 2026-08-14 15:20:02.204451: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09'] 2026-08-14 15:20:02.252491: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 15:20:02.257265: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 15:20:02.257742: Import rates: min 14.97p, max 53.39p, average 26.77p 2026-08-14 15:20:02.293870: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 15:20:02.294013: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 15:20:02.295375: High export rate found rates in range 99p to -99p 2026-08-14 15:20:02.390449: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 15:20:02.390609: Car 0 charging is not planned as it is not plugged in 2026-08-14 15:20:02.402035: Battery level now 10.19kWh, -1hr ago 7.42kWh, at midnight 2.43kWh, battery value change in the last hour 35.7p, change today 99.8p, rate_forward 12.86p 2026-08-14 15:20:02.402423: Last hour: net energy 4.1kWh, import 4.1kWh, export 0.0kWh, car 0kWh, load 1.0kWh, net cost 90.06p, import 90.06p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 15:20:02.457741: Today's energy total net 25.8kWh, import 25.8kWh, export 0.0kWh, cost 650.66p, import 600.68p, export 0.0p, carbon 0.0kg 2026-08-14 15:20:02.457901: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 15:20:02.573299: Using weighted-bucket historical load forecast over 14 days 2026-08-14 15:20:02.600498: Today's load divergence 129.44%, in-day adjustment 134.77%, damping 0.95x, yesterday 146.81% today 127.97% blend 36.11% 2026-08-14 15:20:02.600606: Today's predicted so far 9.01kWh with 0.0kWh car/iBoost excluded, 14.75kWh import ignored, and 9.01kWh forecast extra. 2026-08-14 15:20:02.600650: Today's actual load so far 14.99kWh with 0.0kWh car/iBoost excluded, and 14.75kWh import ignored. 2026-08-14 15:20:02.641728: Inverter 0: Type SK Sunsynk 2026-08-14 15:20:02.641821: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:20:02.642005: Reserve min: 7%, battery_min: 7% 2026-08-14 15:20:02.642075: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:20:02.642354: Inverter 0 SoC: 10.08kW 63%, current charge rate 5000W, current discharge rate 5250W, current battery power -3W, current battery voltage 51.2V, grid power -474W, load power 487W, PV Power 0W 2026-08-14 15:20:02.642519: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:20:02.642605: Inverter 0 scheduled charge enable is True 2026-08-14 15:20:02.642648: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 15:20:02.642732: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 63.0%, power 5.0kW 2026-08-14 15:20:02.642852: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:20:02.642887: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:20:02.642923: Inverter 0 scheduled discharge enable is False 2026-08-14 15:20:02.643036: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:20:02.643072: Inverter 0 discharge windows currently [] 2026-08-14 15:20:02.643095: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:20:02.643114: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:20:02.643158: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:20:02.719288: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 15:20:02.719388: Plan was last updated on 2026-08-14 15:15:00+01:00 and is now 5.0 minutes old 2026-08-14 15:20:02.719546: Best charge window [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 15:30:00 - 16-08 15:30:00 @ 15.45p 100% ] 2026-08-14 15:20:02.719580: Best export window [ ] 2026-08-14 15:20:02.720190: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:20:02.722781: Load divergence over 8.0 hours mean 391.19W, min 249.0W, max 1001.4W, std dev 136.0W, divergence 17.38% 2026-08-14 15:20:02.738930: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:20:02.739043: LoadML is_calculating False 2026-08-14 15:20:02.739103: Creating pool of 12 processes to match your CPU count 2026-08-14 15:20:02.852007: predict base end_record 08-15 15:35:00, final soc 10.08kWh, metric 1028.18p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:05:00, load 31.8kWh, PV 0.0kWh 2026-08-14 15:20:02.973991: Battery has 10.75 hours left - now at 10.08kWh 2026-08-14 15:20:03.014009: predict base10 end_record 08-15 15:35:00, final soc 10.08kWh, metric 1046.23p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:30:00, load 32.6kWh, PV 0.0kWh 2026-08-14 15:20:03.085200: predict best10 end_record 08-15 15:35:00, final soc 1.44kWh, metric 900.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:15:00, load 32.6kWh, PV 0.0kWh 2026-08-14 15:20:03.157780: predict best end_record 08-15 15:35:00, final soc 1.51kWh, metric 882.61p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:45:00, load 31.8kWh, PV 0.0kWh 2026-08-14 15:20:03.157859: Saving plan best values to HA entities 2026-08-14 15:20:03.313403: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:20:03.319457: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:20:03.326114: Best charging limit SoC's [10.0, 12.5, 16.0]kWh, export []kWh gives import battery 3.44kWh, house 5.77kWh, export 0.0kWh, metric 882.61p, metric10 900.12p 2026-08-14 15:20:03.400884: Marginal costs baseline metric (no standing charge): 832.6283 2026-08-14 15:20:03.636236: Marginal energy costs matrix computed: min=23.25 max=36.82 2026-08-14 15:20:03.699814: Rate array import [{'start': 920, 'end': 960, 'rate': 'cheap', 'range': '(22.0p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2375, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 920, 'end': 2375, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:20:03.700204: - Your estimated bill for today is £7.16 and tomorrow is £8.82 2026-08-14 15:20:03.700242: - Import rates are cheap (22.0p - 22.2p) for the next 40 minutes and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:20:03.700261: - The battery is currently at 63% and is charging to 63% for the next 10 minutes. 2026-08-14 15:20:03.700275: - For the next 48 hours there will be no solar generation. 2026-08-14 15:20:03.700289: - You will run out of battery in 14 hours. 2026-08-14 15:20:03.700303: 2026-08-14 15:20:03.745589: Plan calculation took 1.03 seconds 2026-08-14 15:20:03.749379: No high rate period found 2026-08-14 15:20:03.799630: Import threshold used for optimisation was 22.25p 2026-08-14 15:20:03.851588: Low import rate windows [0: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 1: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 2: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 3: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 4: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 5: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 6: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 7: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 8: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 9: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 10: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 11: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 12: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 13: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 14: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 15: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 16: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 17: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 18: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 19: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 20: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 21: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 22: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 23: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 24: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 25: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 26: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 27: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 28: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 29: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 30: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 31: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 32: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 33: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 34: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 35: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 36: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 37: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 38: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 39: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 40: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 41: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 42: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 43: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 44: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 45: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 46: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 47: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 48: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 49: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 50: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 51: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 52: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 53: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 54: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 55: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 56: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 57: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 58: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 59: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 60: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 61: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 62: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 63: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 64: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 65: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 66: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 67: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 68: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 69: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 70: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 71: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 72: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 73: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 74: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 75: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 76: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 77: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 78: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 79: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 80: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 81: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 82: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 83: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 84: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 85: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 86: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 87: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 88: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 89: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 90: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 91: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 92: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 93: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19, 94: 08-16 14:30:00 - 08-16 15:00:00 @ 14.97, 95: 08-16 15:00:00 - 08-16 15:30:00 @ 15.69] 2026-08-14 15:20:03.858653: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 15:00:00 2026-08-14 15:20:03.858771: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 63%, target 63% 2026-08-14 15:20:03.858955: Inverter 0 Target SoC 63%, (this inverter 63%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 15:20:03.859041: Inverter 0 Hold charging as SoC 63% is above target SoC 63% (global soc target 63%) set_discharge_during_charge True 2026-08-14 15:20:03.859233: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:20:03.859482: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:20:03.859609: Inverter 0 current discharge rate is 5000W and new target is 0W 2026-08-14 15:20:08.873180: Inverter 0 write_and_poll_value: Wrote 0 to discharge_rate, successfully now 0.0 2026-08-14 15:20:13.932567: Inverter 0 write_and_poll_value: Wrote 0.0 to timed_discharge_current, successfully now 0.0 2026-08-14 15:20:13.932727: No export window planned 2026-08-14 15:20:13.933004: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 15:20:13.933066: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:20:13.933365: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:20:13.933517: Inverter 0 setting charging SoC to 63% as per target 2026-08-14 15:20:13.933640: Inverter 0 adjust target SoC for charge to 63% (10.08kWh/16.0kWh 16.0kWh) based on going from 63% -> 63% total add is 0.0kWh and this battery needs to add 0.0kWh to get to 10.08kWh 2026-08-14 15:20:13.933751: Inverter 0 Current Target SoC is 63%, already at target 2026-08-14 15:20:13.933939: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.934006: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.934064: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.934116: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.934189: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.934280: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.934335: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.934422: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.934484: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.934569: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.934628: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.934688: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.934736: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.934786: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.934879: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.934925: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.934958: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.935016: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.935097: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.935164: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.935213: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:20:13.935254: Inverter 0 count register writes 1 2026-08-14 15:20:13.955035: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 15:20:13.961738: Total inverter register writes now 812 2026-08-14 15:20:13.996919: Info: Completed run status Hold charging 2026-08-14 15:20:14.004019: Info: record_status Hold charging target 63%-63% 2026-08-14 15:20:14.010979: Saved current settings to /config/predbat_config.json 2026-08-14 15:20:14.011278: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 15:20:44.114306: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:20:44.114585: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:20:44.114630: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:20:44.114767: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:20:44.114806: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:20:44.114828: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:20:44.114846: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:22:44.336037: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:22:44.336380: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:22:44.336452: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:22:44.336692: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:22:44.336750: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:22:44.336776: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:22:44.336795: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:24:58.583298: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:24:58.583601: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:24:58.583652: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:24:58.583824: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:24:58.583870: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:24:58.583897: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:24:58.583940: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:25:00.676475: --------------- PredBat - update at 2026-08-14 15:25:00+01:00 with clock skew 0 minutes, minutes now 925 2026-08-14 15:25:00.677380: Saved current settings to /config/predbat_config.json 2026-08-14 15:25:00.677529: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 100.0 minutes 2026-08-14 15:25:00.677639: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 15:25:00.677715: Autoupdate: Currently up to date 2026-08-14 15:25:00.698124: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 15:25:00.698261: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 15:25:00.698433: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 15:25:00.699155: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 15:25:00.699300: Predbat mode is set to Control charge & discharge 2026-08-14 15:25:00.877380: Found 21602 load_today datapoints going back 27 days 2026-08-14 15:25:00.877519: Using load_power data to fill gaps in load_today data 2026-08-14 15:25:01.559277: Processing 721 30-minute periods for power integration 2026-08-14 15:25:01.748706: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 15:25:01.748846: Car charging hold False, threshold 6.0kWh 2026-08-14 15:25:01.748893: Current data so far today: load 15.1kWh, import 25.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 15:25:01.765036: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 15:25:01.765967: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 15:25:01.766052: Standing charge is set to 49.98p 2026-08-14 15:25:01.817816: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 15:25:01.817965: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 15:25:01.818178: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 290.0 minutes 2026-08-14 15:25:01.818580: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 290.0 minutes 2026-08-14 15:25:01.824618: Loaded 95 datapoints of futurerate analysis 2026-08-14 15:25:01.934982: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09'] 2026-08-14 15:25:01.996063: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 15:25:02.001162: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 15:25:02.001520: Import rates: min 14.97p, max 53.39p, average 26.75p 2026-08-14 15:25:02.038172: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 15:25:02.038298: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 15:25:02.039471: High export rate found rates in range 99p to -99p 2026-08-14 15:25:02.132784: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 15:25:02.132998: Car 0 charging is not planned as it is not plugged in 2026-08-14 15:25:02.145291: Battery level now 10.08kWh, -1hr ago 7.42kWh, at midnight 2.43kWh, battery value change in the last hour 34.26p, change today 98.36p, rate_forward 12.86p 2026-08-14 15:25:02.145661: Last hour: net energy 3.6kWh, import 3.6kWh, export 0.0kWh, car 0kWh, load 1.0kWh, net cost 79.21p, import 79.21p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 15:25:02.206597: Today's energy total net 25.8kWh, import 25.8kWh, export 0.0kWh, cost 650.66p, import 600.68p, export 0.0p, carbon 0.0kg 2026-08-14 15:25:02.206760: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 15:25:02.304545: Using weighted-bucket historical load forecast over 14 days 2026-08-14 15:25:02.333102: Today's load divergence 129.48%, in-day adjustment 134.73%, damping 0.95x, yesterday 146.81% today 128.01% blend 35.76% 2026-08-14 15:25:02.333203: Today's predicted so far 9.03kWh with 0.0kWh car/iBoost excluded, 14.91kWh import ignored, and 9.03kWh forecast extra. 2026-08-14 15:25:02.333237: Today's actual load so far 15.03kWh with 0.0kWh car/iBoost excluded, and 14.91kWh import ignored. 2026-08-14 15:25:02.370026: Inverter 0: Type SK Sunsynk 2026-08-14 15:25:02.370129: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:25:02.370338: Reserve min: 7%, battery_min: 7% 2026-08-14 15:25:02.370447: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:25:02.370721: Inverter 0 SoC: 10.08kW 63%, current charge rate 5000W, current discharge rate 0W, current battery power -20W, current battery voltage 51.2V, grid power -555W, load power 555W, PV Power 0W 2026-08-14 15:25:02.370887: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:25:02.370995: Inverter 0 scheduled charge enable is True 2026-08-14 15:25:02.371042: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 15:25:02.371127: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 63.0%, power 5.0kW 2026-08-14 15:25:02.371249: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:25:02.371285: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:25:02.371322: Inverter 0 scheduled discharge enable is False 2026-08-14 15:25:02.371440: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:25:02.371477: Inverter 0 discharge windows currently [] 2026-08-14 15:25:02.371500: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:25:02.371523: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:25:02.371541: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:25:02.437464: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 15:25:02.437562: Plan was last updated on 2026-08-14 15:15:00+01:00 and is now 10.0 minutes old 2026-08-14 15:25:02.437729: Best charge window [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 78%, 15-08 15:30:00 - 16-08 15:30:00 @ 15.45p 100% ] 2026-08-14 15:25:02.437756: Best export window [ ] 2026-08-14 15:25:02.438407: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:25:02.440885: Load divergence over 8.0 hours mean 399.49W, min 247.2W, max 1057.8W, std dev 149.95W, divergence 18.77% 2026-08-14 15:25:02.456596: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:25:02.456716: LoadML is_calculating False 2026-08-14 15:25:02.456795: Creating pool of 12 processes to match your CPU count 2026-08-14 15:25:02.577483: predict base end_record 08-15 15:40:00, final soc 10.08kWh, metric 1027.71p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:00:00, load 31.89kWh, PV 0.0kWh 2026-08-14 15:25:02.735535: Battery has 10.58 hours left - now at 10.08kWh 2026-08-14 15:25:02.790538: predict base10 end_record 08-15 15:40:00, final soc 10.08kWh, metric 1045.74p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:30:00, load 32.69kWh, PV 0.0kWh 2026-08-14 15:25:02.870748: predict best10 end_record 08-15 15:40:00, final soc 1.77kWh, metric 905.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:10:00, load 32.69kWh, PV 0.0kWh 2026-08-14 15:25:02.957773: predict best end_record 08-15 15:40:00, final soc 1.9kWh, metric 888.99p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:45:00, load 31.89kWh, PV 0.0kWh 2026-08-14 15:25:02.958126: Saving plan best values to HA entities 2026-08-14 15:25:03.129151: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:25:03.136571: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:25:03.143277: Best charging limit SoC's [10.0, 12.5, 16.0]kWh, export []kWh gives import battery 3.85kWh, house 5.77kWh, export 0.0kWh, metric 888.99p, metric10 905.33p 2026-08-14 15:25:03.221663: Marginal costs baseline metric (no standing charge): 839.0021 2026-08-14 15:25:03.493020: Marginal energy costs matrix computed: min=23.55 max=37.09 2026-08-14 15:25:03.583641: Rate array import [{'start': 925, 'end': 960, 'rate': 'cheap', 'range': '(22.0p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2380, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 925, 'end': 2380, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:25:03.584469: - Your estimated bill for today is £7.15 and tomorrow is £8.82 2026-08-14 15:25:03.584559: - Import rates are cheap (22.0p - 22.2p) for the next 35 minutes and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:25:03.584602: - The battery is currently at 63% and is charging to 63% for the next 5 minutes. 2026-08-14 15:25:03.584648: - For the next 48 hours there will be no solar generation. 2026-08-14 15:25:03.584686: - You will run out of battery in 14 hours. 2026-08-14 15:25:03.584723: 2026-08-14 15:25:03.641851: Plan calculation took 1.20 seconds 2026-08-14 15:25:03.645421: No high rate period found 2026-08-14 15:25:03.709485: Import threshold used for optimisation was 22.25p 2026-08-14 15:25:03.779329: Low import rate windows [0: 08-14 15:00:00 - 08-14 15:30:00 @ 22.25, 1: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 2: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 3: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 4: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 5: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 6: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 7: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 8: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 9: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 10: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 11: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 12: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 13: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 14: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 15: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 16: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 17: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 18: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 19: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 20: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 21: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 22: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 23: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 24: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 25: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 26: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 27: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 28: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 29: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 30: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 31: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 32: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 33: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 34: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 35: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 36: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 37: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 38: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 39: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 40: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 41: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 42: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 43: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 44: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 45: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 46: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 47: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 48: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 49: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 50: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 51: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 52: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 53: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 54: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 55: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 56: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 57: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 58: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 59: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 60: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 61: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 62: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 63: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 64: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 65: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 66: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 67: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 68: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 69: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 70: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 71: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 72: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 73: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 74: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 75: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 76: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 77: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 78: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 79: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 80: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 81: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 82: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 83: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 84: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 85: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 86: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 87: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 88: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 89: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 90: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 91: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 92: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 93: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19, 94: 08-16 14:30:00 - 08-16 15:00:00 @ 14.97, 95: 08-16 15:00:00 - 08-16 15:30:00 @ 15.69] 2026-08-14 15:25:03.792299: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 15:00:00 2026-08-14 15:25:03.792430: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 63%, target 63% 2026-08-14 15:25:03.792640: Inverter 0 Target SoC 63%, (this inverter 63%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 15:25:03.792742: Inverter 0 Hold charging as SoC 63% is above target SoC 63% (global soc target 63%) set_discharge_during_charge True 2026-08-14 15:25:03.793000: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:25:03.793341: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:25:03.793622: No export window planned 2026-08-14 15:25:03.793800: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 15:25:03.793842: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:25:03.794038: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:25:03.794141: Inverter 0 setting charging SoC to 63% as per target 2026-08-14 15:25:03.794208: Inverter 0 adjust target SoC for charge to 63% (10.08kWh/16.0kWh 16.0kWh) based on going from 63% -> 63% total add is 0.0kWh and this battery needs to add 0.0kWh to get to 10.08kWh 2026-08-14 15:25:03.794273: Inverter 0 Current Target SoC is 63%, already at target 2026-08-14 15:25:03.794408: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.794460: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.794490: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.794516: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.794541: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.794571: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.794598: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.794649: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.794780: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.794842: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.794873: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.794904: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.794938: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.794990: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.795089: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.795122: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.795158: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.795184: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.795208: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.795240: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.795264: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:03.795292: Inverter 0 count register writes 0 2026-08-14 15:25:03.815681: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 15:25:03.815911: Recompute is saving previous plan... 2026-08-14 15:25:03.819918: Best charge window [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 63%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 63%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 63%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 63%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 63%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 63%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 63%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 63%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 63%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 63%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 63%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 63%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 63%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 63%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 63%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 63%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 63%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 63%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 63%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 63%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 63%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 63%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 63%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 63%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 63%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 63%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 63%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 63%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 63%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 63%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 63%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 63%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 63%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 63%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 63%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 63%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 63%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 63%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 63%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 63%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 63%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 63%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 63%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 63%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 63%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 63%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 63%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 63%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 63%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 63%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 63%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 63%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 63%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 63%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 63%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 63%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 63%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 63%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 63%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 63%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 63%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 63%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 63%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 63%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 63%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 63%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 63%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 63%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 63%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 63%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 63%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 63%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 63%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 63%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 63%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 63%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 63%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 63%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 63%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 63%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 63%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 63%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 63%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 63%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 63%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 63%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 63%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 63%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 63%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 63%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 63%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 63%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 63%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 63%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.69p 63% ] 2026-08-14 15:25:03.820093: Best export window [ ] 2026-08-14 15:25:03.821085: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:25:03.824303: Load divergence over 8.0 hours mean 399.49W, min 247.2W, max 1057.8W, std dev 149.95W, divergence 18.77% 2026-08-14 15:25:03.844219: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:25:03.844359: LoadML is_calculating False 2026-08-14 15:25:03.844431: Creating pool of 12 processes to match your CPU count 2026-08-14 15:25:03.939769: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 15:25:03.943163: Optimise levels pass started at 2026-08-14 15:25:03 2026-08-14 15:25:03.943296: Optimise all windows, total charge 95 export 1 2026-08-14 15:25:04.766843: >> Region optimisation pass width 960 gives best_metric 1076.8p, best_cost 1084.35p, best_cycle 31.98kWh, best_import 24.78kWh 2026-08-14 15:25:05.187445: >> Region optimisation pass width 480 gives best_metric 1076.8p, best_cost 1084.35p, best_cycle 31.98kWh, best_import 24.78kWh 2026-08-14 15:25:05.714502: >> Region optimisation pass width 240 gives best_metric 1076.8p, best_cost 1084.35p, best_cycle 31.98kWh, best_import 24.78kWh 2026-08-14 15:25:06.747576: >> Region optimisation pass width 120 gives best_metric 1076.8p, best_cost 1084.35p, best_cycle 31.98kWh, best_import 24.78kWh 2026-08-14 15:25:06.747840: Calculated end_record as 08-16 13:00:00 based on best_price 15.69p, next_charge_start 08-15 13:00:00, max_windows 91 2026-08-14 15:25:06.747894: Optimise levels pass ended at 2026-08-14 15:25:06, duration 2.8 seconds tried 296 combinations 2026-08-14 15:25:06.747965: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.69p, best_cost_export 0p, best_metric 1076.8p, best_keep 0kWh, best_cycle 31.98kWh, best_carbon 0kg, best_import 24.78kWh 2026-08-14 15:25:06.763993: Starting detailed optimisation end_record 08-16 13:00:00, best_price_charge 15.69p, best_price_export 0p. lowest_price_charge 14.97p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 15:25:12.985180: Tweak plan optimisation started metric 1049.24p, cost 1058.96p 2026-08-14 15:25:13.351799: Tweak optimisation finished metric 1049.24p, cost 1058.96p, metric_keep 0kWh, cycle 39.12kWh, carbon 0kg, import 23.88kWh, changed 8 window(s) 2026-08-14 15:25:13.378358: Swap charge optimisation started metric 1049.24p, cost 1058.96p, min_improvement_swap 0.1p 2026-08-14 15:25:19.931014: Swap charge optimisation finished metric 1049.24p, cost 1058.96p 2026-08-14 15:25:20.043749: Raw charge windows [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 88%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 88%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.69p 100% ] reserve 1.12 2026-08-14 15:25:20.044413: Unclipped charge windows [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 19%, 15-08 13:00:00 - 15-08 15:00:00 @ 15.16p 100%, 15-08 15:00:00 - 15-08 16:00:00 @ 16.05p 88%, 16-08 13:00:00 - 16-08 15:30:00 @ 15.43p 100% ] reserve 1.12 2026-08-14 15:25:20.044694: Unfiltered charge windows [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 19%, 15-08 13:00:00 - 15-08 15:00:00 @ 15.16p 100%, 15-08 15:00:00 - 15-08 16:00:00 @ 16.05p 88%, 16-08 13:00:00 - 16-08 15:30:00 @ 15.43p 100% ] reserve 1.12 2026-08-14 15:25:20.044934: Filtered charge windows [ 14-08 15:00:00 - 14-08 15:30:00 @ 22.25p 63%, 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 19%, 15-08 13:00:00 - 15-08 15:00:00 @ 15.16p 100%, 15-08 15:00:00 - 15-08 16:00:00 @ 16.05p 88%, 16-08 13:00:00 - 16-08 15:30:00 @ 15.43p 100% ] reserve 1.12 2026-08-14 15:25:20.085705: Previous plan best metric is 1534.1 (cost 1733.62) and new plan best metric is 1049.24 (cost 1058.96) 2026-08-14 15:25:20.085984: New plan metric is significantly better from previous plan, using new plan 2026-08-14 15:25:20.086037: Plan valid is now true after recompute was False 2026-08-14 15:25:20.116737: predict base end_record 08-16 13:00:00, final soc 5.78kWh, metric 1257.64p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:00:00, load 45.15kWh, PV 0.0kWh 2026-08-14 15:25:20.239596: Battery has 10.58 hours left - now at 10.08kWh 2026-08-14 15:25:20.285899: predict base10 end_record 08-16 13:00:00, final soc 5.0kWh, metric 1277.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:30:00, load 46.59kWh, PV 0.0kWh 2026-08-14 15:25:20.368167: predict best10 end_record 08-16 13:00:00, final soc 1.12kWh, metric 1190.13p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:10:00, load 46.59kWh, PV 0.0kWh 2026-08-14 15:25:20.438772: predict best end_record 08-16 13:00:00, final soc 1.12kWh, metric 1158.93p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:45:00, load 45.15kWh, PV 0.0kWh 2026-08-14 15:25:20.438861: Saving plan best values to HA entities 2026-08-14 15:25:20.597324: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:25:20.603068: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:25:20.608573: Best charging limit SoC's [10.0, 16.0, 3.0, 16.0, 14.0, 16.0]kWh, export []kWh gives import battery 18.89kWh, house 4.99kWh, export 0.0kWh, metric 1158.93p, metric10 1190.13p 2026-08-14 15:25:20.677417: Marginal costs baseline metric (no standing charge): 1058.961 2026-08-14 15:25:20.964082: Marginal energy costs matrix computed: min=23.55 max=37.09 2026-08-14 15:25:21.056172: Rate array import [{'start': 925, 'end': 960, 'rate': 'cheap', 'range': '(22.0p - 22.2p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2400, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}, {'start': 2400, 'end': 2520, 'rate': 'expensive', 'range': '(32.7p - 40.2p)'}, {'start': 2520, 'end': 2580, 'rate': 'very expensive', 'range': '(42.0p - 43.9p)'}, {'start': 2580, 'end': 2940, 'rate': 'expensive', 'range': '(28.0p - 31.3p)'}, {'start': 2940, 'end': 3660, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 925, 'end': 3660, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:25:21.056710: - Your estimated bill for today is £7.15 and tomorrow is £3.76 2026-08-14 15:25:21.056780: - Import rates are cheap (22.0p - 22.2p) for the next 35 minutes and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:25:21.056809: - The battery is currently at 63% and is charging to 63% for the next 5 minutes. 2026-08-14 15:25:21.056828: - For the next 48 hours there will be no solar generation. 2026-08-14 15:25:21.056846: - You will run out of battery in 14 hours. 2026-08-14 15:25:21.056865: 2026-08-14 15:25:21.135222: Plan calculation took 17.32 seconds 2026-08-14 15:25:21.135855: Inverter 0: Type SK Sunsynk 2026-08-14 15:25:21.135918: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:25:21.136259: Reserve min: 7%, battery_min: 7% 2026-08-14 15:25:21.136409: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:25:21.136908: Inverter 0 SoC: 10.08kW 63%, current charge rate 5000W, current discharge rate 0W, current battery power -20W, current battery voltage 51.2V, grid power -522W, load power 523W, PV Power 0W 2026-08-14 15:25:21.137231: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:25:21.137347: Inverter 0 scheduled charge enable is True 2026-08-14 15:25:21.137403: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 15:25:21.137498: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 63.0%, power 5.0kW 2026-08-14 15:25:21.137625: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:25:21.137661: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:25:21.137719: Inverter 0 scheduled discharge enable is False 2026-08-14 15:25:21.137864: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:25:21.137903: Inverter 0 discharge windows currently [] 2026-08-14 15:25:21.137932: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:25:21.137972: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:25:21.137991: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:25:21.196645: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 15:00:00 2026-08-14 15:25:21.196772: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 63%, target 63% 2026-08-14 15:25:21.197025: Inverter 0 Target SoC 63%, (this inverter 63%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 15:25:21.197171: Inverter 0 Hold charging as SoC 63% is above target SoC 63% (global soc target 63%) set_discharge_during_charge True 2026-08-14 15:25:21.197331: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:25:21.197524: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:25:21.197635: No export window planned 2026-08-14 15:25:21.197744: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 15:25:21.197780: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:25:21.197915: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:25:21.198018: Inverter 0 setting charging SoC to 63% as per target 2026-08-14 15:25:21.198081: Inverter 0 adjust target SoC for charge to 63% (10.08kWh/16.0kWh 16.0kWh) based on going from 63% -> 63% total add is 0.0kWh and this battery needs to add 0.0kWh to get to 10.08kWh 2026-08-14 15:25:21.198158: Inverter 0 Current Target SoC is 63%, already at target 2026-08-14 15:25:21.198266: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198307: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198336: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198361: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198388: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198423: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198449: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198505: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198548: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198574: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198599: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198632: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198658: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198682: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198745: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198780: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198806: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198830: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198854: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198884: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198908: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:25:21.198930: Inverter 0 count register writes 0 2026-08-14 15:25:21.221112: Total inverter register writes now 812 2026-08-14 15:25:21.258526: Info: Completed run status Hold charging 2026-08-14 15:25:21.265824: Info: record_status Hold charging target 63%-63% 2026-08-14 15:25:21.273728: Saved current settings to /config/predbat_config.json 2026-08-14 15:25:21.274035: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 15:25:59.393151: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:25:59.393477: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:25:59.393528: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:25:59.393741: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:25:59.393789: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:25:59.393815: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:25:59.393857: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:28:13.634018: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:28:13.634312: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:28:13.634374: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:28:13.634681: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:28:13.634761: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:28:13.634790: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:28:13.634809: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:30:00.836870: --------------- PredBat - update at 2026-08-14 15:30:00+01:00 with clock skew 0 minutes, minutes now 930 2026-08-14 15:30:00.837702: Saved current settings to /config/predbat_config.json 2026-08-14 15:30:00.837861: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 105.0 minutes 2026-08-14 15:30:00.837989: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 15:30:00.838081: Autoupdate: Currently up to date 2026-08-14 15:30:00.858331: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 15:30:00.858495: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 15:30:00.858708: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 15:30:00.859510: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 15:30:00.859701: Predbat mode is set to Control charge & discharge 2026-08-14 15:30:01.098660: Found 21602 load_today datapoints going back 28 days 2026-08-14 15:30:01.098824: Using load_power data to fill gaps in load_today data 2026-08-14 15:30:02.006957: Processing 721 30-minute periods for power integration 2026-08-14 15:30:02.197896: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 15:30:02.198023: Car charging hold False, threshold 6.0kWh 2026-08-14 15:30:02.198073: Current data so far today: load 15.05kWh, import 25.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 15:30:02.211081: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 15:30:02.211925: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 15:30:02.212004: Standing charge is set to 49.98p 2026-08-14 15:30:02.257784: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 15:30:02.257902: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 15:30:02.258129: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 295.0 minutes 2026-08-14 15:30:02.258521: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 295.0 minutes 2026-08-14 15:30:02.263631: Loaded 95 datapoints of futurerate analysis 2026-08-14 15:30:02.373336: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09'] 2026-08-14 15:30:02.432247: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 15:30:02.438045: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 15:30:02.438536: Import rates: min 14.97p, max 53.39p, average 26.74p 2026-08-14 15:30:02.484273: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 15:30:02.484409: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 15:30:02.485897: High export rate found rates in range 99p to -99p 2026-08-14 15:30:02.586818: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 15:30:02.586998: Car 0 charging is not planned as it is not plugged in 2026-08-14 15:30:02.607632: Battery level now 10.08kWh, -1hr ago 7.77kWh, at midnight 2.43kWh, battery value change in the last hour 29.73p, change today 98.36p, rate_forward 12.86p 2026-08-14 15:30:02.608039: Last hour: net energy 3.2kWh, import 3.2kWh, export 0.0kWh, car 0kWh, load 0.9kWh, net cost 70.55p, import 70.55p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 15:30:02.685590: Today's energy total net 25.9kWh, import 25.9kWh, export 0.0kWh, cost 652.89p, import 602.91p, export 0.0p, carbon 0.0kg 2026-08-14 15:30:02.685831: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 15:30:02.789554: Using weighted-bucket historical load forecast over 14 days 2026-08-14 15:30:02.814647: Today's load divergence 129.43%, in-day adjustment 134.63%, damping 0.95x, yesterday 146.81% today 127.96% blend 35.42% 2026-08-14 15:30:02.814731: Today's predicted so far 9.13kWh with 0.0kWh car/iBoost excluded, 14.86kWh import ignored, and 9.13kWh forecast extra. 2026-08-14 15:30:02.814758: Today's actual load so far 15.11kWh with 0.0kWh car/iBoost excluded, and 14.86kWh import ignored. 2026-08-14 15:30:02.848371: Inverter 0: Type SK Sunsynk 2026-08-14 15:30:02.848462: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:30:02.848642: Reserve min: 7%, battery_min: 7% 2026-08-14 15:30:02.848713: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:30:02.849045: Inverter 0 SoC: 10.08kW 63%, current charge rate 5000W, current discharge rate 0W, current battery power -20W, current battery voltage 51.2V, grid power -538W, load power 538W, PV Power 0W 2026-08-14 15:30:02.849234: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:30:02.849323: Inverter 0 scheduled charge enable is True 2026-08-14 15:30:02.849369: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 15:30:02.849455: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 63.0%, power 5.0kW 2026-08-14 15:30:02.849581: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:30:02.849617: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:30:02.849656: Inverter 0 scheduled discharge enable is False 2026-08-14 15:30:02.849774: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:30:02.849810: Inverter 0 discharge windows currently [] 2026-08-14 15:30:02.849833: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:30:02.849874: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:30:02.849894: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:30:02.925710: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 15:30:02.925861: Plan was last updated on 2026-08-14 15:25:00+01:00 and is now 5.0 minutes old 2026-08-14 15:30:02.925912: Current charge window has expired, removing it 2026-08-14 15:30:02.926238: Best charge window [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 19%, 15-08 13:00:00 - 15-08 15:00:00 @ 15.16p 100%, 15-08 15:00:00 - 15-08 16:00:00 @ 16.05p 88%, 16-08 13:00:00 - 16-08 15:30:00 @ 15.43p 100% ] 2026-08-14 15:30:02.926295: Best export window [ ] 2026-08-14 15:30:02.927470: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:30:02.931022: Load divergence over 8.0 hours mean 404.09W, min 239.4W, max 1138.2W, std dev 157.3W, divergence 19.46% 2026-08-14 15:30:02.950753: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:30:02.950890: LoadML is_calculating False 2026-08-14 15:30:02.950952: Creating pool of 12 processes to match your CPU count 2026-08-14 15:30:03.097605: predict base end_record 08-16 13:05:00, final soc 6.16kWh, metric 1265.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:05:00, load 45.07kWh, PV 0.0kWh 2026-08-14 15:30:03.237552: Battery has 10.58 hours left - now at 10.08kWh 2026-08-14 15:30:03.308698: predict base10 end_record 08-16 13:05:00, final soc 5.32kWh, metric 1283.55p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:35:00, load 46.49kWh, PV 0.0kWh 2026-08-14 15:30:03.394325: predict best10 end_record 08-16 13:05:00, final soc 1.44kWh, metric 1196.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:15:00, load 46.49kWh, PV 0.0kWh 2026-08-14 15:30:03.483493: predict best end_record 08-16 13:05:00, final soc 1.51kWh, metric 1166.37p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:45:00, load 45.07kWh, PV 0.0kWh 2026-08-14 15:30:03.483594: Saving plan best values to HA entities 2026-08-14 15:30:03.674922: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:30:03.682874: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:30:03.691551: Best charging limit SoC's [16.0, 3.0, 16.0, 14.0, 16.0]kWh, export []kWh gives import battery 19.29kWh, house 4.97kWh, export 0.0kWh, metric 1166.37p, metric10 1196.38p 2026-08-14 15:30:03.781447: Marginal costs baseline metric (no standing charge): 1066.4079 2026-08-14 15:30:04.048219: Marginal energy costs matrix computed: min=23.82 max=37.4 2026-08-14 15:30:04.142680: Rate array import [{'start': 930, 'end': 960, 'rate': 'cheap', 'range': '(22.0p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2400, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}, {'start': 2400, 'end': 2520, 'rate': 'expensive', 'range': '(32.7p - 40.2p)'}, {'start': 2520, 'end': 2580, 'rate': 'very expensive', 'range': '(42.0p - 43.9p)'}, {'start': 2580, 'end': 2940, 'rate': 'expensive', 'range': '(28.0p - 31.3p)'}, {'start': 2940, 'end': 3665, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 930, 'end': 3665, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:30:04.143226: - Your estimated bill for today is £7.16 and tomorrow is £3.76 2026-08-14 15:30:04.143284: - Import rates are cheap (22.0p) for the next 30 minutes and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:30:04.143307: - The battery is currently at 63% and is charging to 78% for the next 30 minutes. 2026-08-14 15:30:04.143326: - For the next 48 hours there will be no solar generation. 2026-08-14 15:30:04.143344: - You will run out of battery in 14 hours. 2026-08-14 15:30:04.143361: 2026-08-14 15:30:04.221763: Plan calculation took 1.30 seconds 2026-08-14 15:30:04.225586: No high rate period found 2026-08-14 15:30:04.276185: Import threshold used for optimisation was 22.25p 2026-08-14 15:30:04.333593: Low import rate windows [0: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 1: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 2: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 3: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 4: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 5: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 6: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 7: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 8: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 9: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 10: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 11: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 12: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 13: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 14: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 15: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 16: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 17: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 18: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 19: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 20: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 21: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 22: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 23: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 24: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 25: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 26: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 27: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 28: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 29: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 30: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 31: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 32: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 33: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 34: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 35: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 36: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 37: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 38: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 39: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 40: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 41: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 42: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 43: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 44: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 45: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 46: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 47: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 48: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 49: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 50: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 51: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 52: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 53: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 54: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 55: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 56: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 57: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 58: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 59: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 60: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 61: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 62: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 63: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 64: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 65: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 66: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 67: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 68: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 69: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 70: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 71: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 72: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 73: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 74: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 75: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 76: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 77: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 78: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 79: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 80: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 81: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 82: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 83: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 84: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 85: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 86: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 87: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 88: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 89: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 90: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 91: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 92: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19, 93: 08-16 14:30:00 - 08-16 15:00:00 @ 14.97, 94: 08-16 15:00:00 - 08-16 15:30:00 @ 15.69] 2026-08-14 15:30:04.341500: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 15:30:00 2026-08-14 15:30:04.341610: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 63%, target 100% 2026-08-14 15:30:04.341765: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 15:30:04.341968: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:30:04.342177: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:30:04.342263: No export window planned 2026-08-14 15:30:04.342364: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 15:30:04.342395: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:30:04.342504: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:30:04.342597: Inverter 0 current discharge rate is 0W and new target is 5000W 2026-08-14 15:30:09.351966: Inverter 0 write_and_poll_value: Wrote 5000 to discharge_rate, successfully now 5000.0 2026-08-14 15:30:14.402684: Inverter 0 write_and_poll_value: Wrote 98.0 to timed_discharge_current, successfully now 98.0 2026-08-14 15:30:14.402932: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 15:30:14.402979: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 15:30:14.403054: Inverter 0 Current charge limit is 63% and new target is 100% 2026-08-14 15:30:19.409341: Inverter 0 write_and_poll_value: Wrote 100 to charge_limit, successfully now 100.0 2026-08-14 15:30:19.409582: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:30:19.409616: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:30:19.409640: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:30:19.409663: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:30:19.409703: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:30:19.409730: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:30:19.409750: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:30:19.409801: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog1_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 15:30:19.417218: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog2_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 15:30:19.520885: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog3_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 15:30:19.576235: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog4_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 15:30:19.618002: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog5_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 15:30:19.721863: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog6_charge', 'option': 'Allow Grid & Gen'} 2026-08-14 15:30:19.825354: Inverter 0 Calling service charge_start_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_load_limit', 'option': 'Zero Export'} 2026-08-14 15:30:19.929078: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:30:19.929180: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:30:19.929215: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:30:19.929242: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:30:19.929267: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:30:19.929292: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:30:19.929317: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:30:19.929340: Inverter 0 count register writes 2 2026-08-14 15:30:19.945369: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 15:30:19.952191: Total inverter register writes now 814 2026-08-14 15:30:19.985523: Info: Completed run status Charging 2026-08-14 15:30:20.299894: Info: record_status Charging target 63%-100.0% 2026-08-14 15:30:20.307043: Saved current settings to /config/predbat_config.json 2026-08-14 15:30:20.307334: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 15:30:59.423965: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:30:59.424273: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:30:59.424313: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:30:59.424462: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:30:59.424496: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:30:59.424532: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:30:59.424575: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:33:13.660587: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:33:13.660897: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:33:13.660941: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:33:13.661222: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:33:13.661263: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:33:13.661285: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:33:13.661303: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:35:00.866798: --------------- PredBat - update at 2026-08-14 15:35:00+01:00 with clock skew 0 minutes, minutes now 935 2026-08-14 15:35:00.867761: Saved current settings to /config/predbat_config.json 2026-08-14 15:35:00.867976: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 110.0 minutes 2026-08-14 15:35:00.868100: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 15:35:00.868207: Autoupdate: Currently up to date 2026-08-14 15:35:00.888095: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 15:35:00.888229: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 15:35:00.888460: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 15:35:00.889163: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 15:35:00.889353: Predbat mode is set to Control charge & discharge 2026-08-14 15:35:01.091093: Found 21602 load_today datapoints going back 28 days 2026-08-14 15:35:01.091233: Using load_power data to fill gaps in load_today data 2026-08-14 15:35:01.896378: Processing 721 30-minute periods for power integration 2026-08-14 15:35:02.097769: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 15:35:02.097919: Car charging hold False, threshold 6.0kWh 2026-08-14 15:35:02.097966: Current data so far today: load 15.1kWh, import 25.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 15:35:02.115694: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 15:35:02.116706: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 15:35:02.116819: Standing charge is set to 49.98p 2026-08-14 15:35:02.164916: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 15:35:02.165081: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 15:35:02.165305: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 300.0 minutes 2026-08-14 15:35:02.165859: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 300.0 minutes 2026-08-14 15:35:02.171642: Loaded 95 datapoints of futurerate analysis 2026-08-14 15:35:02.269129: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09'] 2026-08-14 15:35:02.325094: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 15:35:02.330919: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 15:35:02.331321: Import rates: min 14.97p, max 53.39p, average 26.73p 2026-08-14 15:35:02.377914: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 15:35:02.378044: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 15:35:02.379368: High export rate found rates in range 99p to -99p 2026-08-14 15:35:02.483846: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 15:35:02.483995: Car 0 charging is not planned as it is not plugged in 2026-08-14 15:35:02.496664: Battery level now 10.08kWh, -1hr ago 8.12kWh, at midnight 2.43kWh, battery value change in the last hour 25.21p, change today 98.36p, rate_forward 12.86p 2026-08-14 15:35:02.497098: Last hour: net energy 2.7kWh, import 2.7kWh, export 0.0kWh, car 0kWh, load 0.9kWh, net cost 59.55p, import 59.55p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 15:35:02.552061: Today's energy total net 25.9kWh, import 25.9kWh, export 0.0kWh, cost 652.89p, import 602.91p, export 0.0p, carbon 0.0kg 2026-08-14 15:35:02.552225: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 15:35:02.642132: Using weighted-bucket historical load forecast over 14 days 2026-08-14 15:35:02.672427: Today's load divergence 129.65%, in-day adjustment 134.7%, damping 0.95x, yesterday 146.81% today 128.16% blend 35.07% 2026-08-14 15:35:02.672531: Today's predicted so far 9.21kWh with 0.0kWh car/iBoost excluded, 14.82kWh import ignored, and 9.21kWh forecast extra. 2026-08-14 15:35:02.672563: Today's actual load so far 15.25kWh with 0.0kWh car/iBoost excluded, and 14.82kWh import ignored. 2026-08-14 15:35:02.707906: Inverter 0: Type SK Sunsynk 2026-08-14 15:35:02.707998: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:35:02.708206: Reserve min: 7%, battery_min: 7% 2026-08-14 15:35:02.708288: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:35:02.708586: Inverter 0 SoC: 10.08kW 63%, current charge rate 5000W, current discharge rate 5250W, current battery power -4541W, current battery voltage 51.2V, grid power -5846W, load power 849W, PV Power 0W 2026-08-14 15:35:02.708761: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:35:02.708882: Inverter 0 scheduled charge enable is True 2026-08-14 15:35:02.708988: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 15:35:02.709097: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 15:35:02.709225: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:35:02.709262: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:35:02.709299: Inverter 0 scheduled discharge enable is False 2026-08-14 15:35:02.709459: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:35:02.709503: Inverter 0 discharge windows currently [] 2026-08-14 15:35:02.709526: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:35:02.709550: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:35:02.709568: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:35:02.773343: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 15:35:02.773453: Plan was last updated on 2026-08-14 15:25:00+01:00 and is now 10.0 minutes old 2026-08-14 15:35:02.773812: Best charge window [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 19%, 15-08 13:00:00 - 15-08 15:00:00 @ 15.16p 100%, 15-08 15:00:00 - 15-08 16:00:00 @ 16.05p 88%, 16-08 13:00:00 - 16-08 15:30:00 @ 15.43p 100% ] 2026-08-14 15:35:02.773867: Best export window [ ] 2026-08-14 15:35:02.774715: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:35:02.777977: Load divergence over 8.0 hours mean 408.68W, min 267.0W, max 1243.8W, std dev 173.49W, divergence 21.23% 2026-08-14 15:35:02.797430: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:35:02.797564: LoadML is_calculating False 2026-08-14 15:35:02.797678: Creating pool of 12 processes to match your CPU count 2026-08-14 15:35:02.926991: predict base end_record 08-16 13:10:00, final soc 8.24kWh, metric 1282.57p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:05:00, load 45.12kWh, PV 0.0kWh 2026-08-14 15:35:03.062045: Battery has 13.5 hours left - now at 10.08kWh 2026-08-14 15:35:03.107821: predict base10 end_record 08-16 13:10:00, final soc 6.7kWh, metric 1287.74p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:45:00, load 46.55kWh, PV 0.0kWh 2026-08-14 15:35:03.196396: predict best10 end_record 08-16 13:10:00, final soc 1.77kWh, metric 1201.37p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:45:00, load 46.55kWh, PV 0.0kWh 2026-08-14 15:35:03.275672: predict best end_record 08-16 13:10:00, final soc 1.9kWh, metric 1172.5p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:05:00, load 45.12kWh, PV 0.0kWh 2026-08-14 15:35:03.275773: Saving plan best values to HA entities 2026-08-14 15:35:03.448038: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:35:03.452843: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:35:03.457535: Best charging limit SoC's [16.0, 3.0, 16.0, 14.0, 16.0]kWh, export []kWh gives import battery 19.31kWh, house 5.31kWh, export 0.0kWh, metric 1172.5p, metric10 1201.37p 2026-08-14 15:35:03.527046: Marginal costs baseline metric (no standing charge): 1072.5348 2026-08-14 15:35:03.758020: Marginal energy costs matrix computed: min=24.1 max=38.04 2026-08-14 15:35:03.837763: Rate array import [{'start': 935, 'end': 960, 'rate': 'cheap', 'range': '(22.0p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2400, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}, {'start': 2400, 'end': 2520, 'rate': 'expensive', 'range': '(32.7p - 40.2p)'}, {'start': 2520, 'end': 2580, 'rate': 'very expensive', 'range': '(42.0p - 43.9p)'}, {'start': 2580, 'end': 2940, 'rate': 'expensive', 'range': '(28.0p - 31.3p)'}, {'start': 2940, 'end': 3670, 'rate': 'cheap', 'range': '(15.6p - 27.2p)'}] export [{'start': 935, 'end': 3670, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:35:03.838172: - Your estimated bill for today is £7.06 and tomorrow is £3.85 2026-08-14 15:35:03.838214: - Import rates are cheap (22.0p) for the next 25 minutes and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:35:03.838232: - The battery is currently at 63% and is charging to 78% for the next 25 minutes. 2026-08-14 15:35:03.838247: - For the next 48 hours there will be no solar generation. 2026-08-14 15:35:03.838260: - You will run out of battery in 13 hours. 2026-08-14 15:35:03.838274: 2026-08-14 15:35:03.901589: Plan calculation took 1.13 seconds 2026-08-14 15:35:03.904450: No high rate period found 2026-08-14 15:35:03.952363: Import threshold used for optimisation was 22.25p 2026-08-14 15:35:04.003851: Low import rate windows [0: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 1: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 2: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 3: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 4: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 5: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 6: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 7: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 8: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 9: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 10: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 11: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 12: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 13: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 14: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 15: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 16: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 17: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 18: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 19: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 20: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 21: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 22: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 23: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 24: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 25: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 26: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 27: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 28: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 29: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 30: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 31: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 32: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 33: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 34: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 35: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 36: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 37: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 38: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 39: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 40: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 41: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 42: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 43: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 44: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 45: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 46: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 47: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 48: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 49: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 50: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 51: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 52: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 53: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 54: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 55: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 56: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 57: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 58: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 59: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 60: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 61: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 62: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 63: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 64: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 65: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 66: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 67: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 68: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 69: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 70: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 71: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 72: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 73: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 74: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 75: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 76: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 77: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 78: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 79: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 80: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 81: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 82: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 83: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 84: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 85: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 86: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 87: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 88: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 89: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 90: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 91: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 92: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19, 93: 08-16 14:30:00 - 08-16 15:00:00 @ 14.97, 94: 08-16 15:00:00 - 08-16 15:30:00 @ 15.69, 95: 08-16 15:30:00 - 08-16 16:00:00 @ 16.42] 2026-08-14 15:35:04.012370: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 15:30:00 2026-08-14 15:35:04.012482: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 63%, target 100% 2026-08-14 15:35:04.012643: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 15:35:04.012841: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:35:04.013119: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:35:04.013214: No export window planned 2026-08-14 15:35:04.013322: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 15:35:04.013407: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:35:04.013524: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:35:04.013625: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 15:35:04.013660: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 15:35:04.013709: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 15:35:04.013828: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.013864: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.013886: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.013906: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.013931: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.013951: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.013972: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.014009: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.014058: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.014083: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.014105: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.014137: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.014159: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.014178: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.014232: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.014260: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.014281: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.014307: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.014327: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.014346: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.014367: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:04.014388: Inverter 0 count register writes 0 2026-08-14 15:35:04.032216: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 15:35:04.032433: Recompute is saving previous plan... 2026-08-14 15:35:04.035646: Best charge window [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 100%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 100%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 100%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 100%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 100%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 100%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 100%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 100%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 100%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 100%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 100%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 100%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 100%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 100%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 100%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 100%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 100%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 100%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 100%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 100%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 100%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 100%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 100%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 100%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 100%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 100%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 100%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 100%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 100%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 100%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 100%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 100%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 100%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 100%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 100%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 100%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 100%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.69p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 16.42p 100% ] 2026-08-14 15:35:04.035732: Best export window [ ] 2026-08-14 15:35:04.036339: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:35:04.038861: Load divergence over 8.0 hours mean 408.68W, min 267.0W, max 1243.8W, std dev 173.49W, divergence 21.23% 2026-08-14 15:35:04.055221: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:35:04.055312: LoadML is_calculating False 2026-08-14 15:35:04.055370: Creating pool of 12 processes to match your CPU count 2026-08-14 15:35:04.136289: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 15:35:04.138210: Optimise levels pass started at 2026-08-14 15:35:04 2026-08-14 15:35:04.138275: Optimise all windows, total charge 95 export 1 2026-08-14 15:35:05.312842: >> Region optimisation pass width 960 gives best_metric 1071.41p, best_cost 1080.63p, best_cycle 37.84kWh, best_import 25.11kWh 2026-08-14 15:35:05.781242: >> Region optimisation pass width 480 gives best_metric 1071.41p, best_cost 1080.63p, best_cycle 37.84kWh, best_import 25.11kWh 2026-08-14 15:35:06.315298: >> Region optimisation pass width 240 gives best_metric 1071.41p, best_cost 1080.63p, best_cycle 37.84kWh, best_import 25.11kWh 2026-08-14 15:35:07.471251: >> Region optimisation pass width 120 gives best_metric 1071.41p, best_cost 1080.63p, best_cycle 37.84kWh, best_import 25.11kWh 2026-08-14 15:35:07.471609: Calculated end_record as 08-15 16:00:00 based on best_price 22.02p, next_charge_start 08-14 16:00:00, max_windows 48 2026-08-14 15:35:07.471685: Optimise levels pass ended at 2026-08-14 15:35:07, duration 3.3 seconds tried 316 combinations 2026-08-14 15:35:07.471755: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1071.41p, best_keep 0kWh, best_cycle 37.84kWh, best_carbon 0kg, best_import 25.11kWh 2026-08-14 15:35:07.491514: Starting detailed optimisation end_record 08-15 16:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 14.97p with charge limits [16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.75, 13.75, 13.75, 13.75, 13.75, 13.75, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 15:35:10.743654: Tweak plan optimisation started metric 815.38p, cost 827.0p 2026-08-14 15:35:11.080782: Tweak optimisation finished metric 815.38p, cost 827.0p, metric_keep 0kWh, cycle 12.57kWh, carbon 0kg, import 8.75kWh, changed 8 window(s) 2026-08-14 15:35:11.100180: Swap charge optimisation started metric 815.38p, cost 827.0p, min_improvement_swap 0.1p 2026-08-14 15:35:11.377812: Swap charge optimisation finished metric 815.38p, cost 827.0p 2026-08-14 15:35:11.403530: Raw charge windows [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.69p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 16.42p 100% ] reserve 1.12 2026-08-14 15:35:11.403991: Unclipped charge windows [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 16-08 16:00:00 @ 15.94p 100% ] reserve 1.12 2026-08-14 15:35:11.404096: Unfiltered charge windows [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 16-08 16:00:00 @ 15.94p 100% ] reserve 1.12 2026-08-14 15:35:11.404182: Filtered charge windows [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 16-08 16:00:00 @ 15.94p 100% ] reserve 1.12 2026-08-14 15:35:11.437409: Previous plan best metric is 863.16 (cost 1040.18) and new plan best metric is 815.38 (cost 827.0) 2026-08-14 15:35:11.437724: New plan metric is significantly better from previous plan, using new plan 2026-08-14 15:35:11.437810: Plan valid is now true after recompute was False 2026-08-14 15:35:11.464363: predict base end_record 08-15 16:00:00, final soc 16.0kWh, metric 1125.15p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:05:00, load 31.92kWh, PV 0.0kWh 2026-08-14 15:35:11.605047: Battery has 13.5 hours left - now at 10.08kWh 2026-08-14 15:35:11.659193: predict base10 end_record 08-15 16:00:00, final soc 16.0kWh, metric 1145.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:45:00, load 32.72kWh, PV 0.0kWh 2026-08-14 15:35:11.743440: predict best10 end_record 08-15 16:00:00, final soc 1.12kWh, metric 895.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:45:00, load 32.72kWh, PV 0.0kWh 2026-08-14 15:35:11.845397: predict best end_record 08-15 16:00:00, final soc 1.12kWh, metric 876.99p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:05:00, load 31.92kWh, PV 0.0kWh 2026-08-14 15:35:11.845507: Saving plan best values to HA entities 2026-08-14 15:35:11.992326: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:35:11.997567: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:35:12.002876: Best charging limit SoC's [16.0, 16.0]kWh, export []kWh gives import battery 2.39kWh, house 6.36kWh, export 0.0kWh, metric 876.99p, metric10 895.51p 2026-08-14 15:35:12.079555: Marginal costs baseline metric (no standing charge): 827.0033 2026-08-14 15:35:12.312317: Marginal energy costs matrix computed: min=24.1 max=38.04 2026-08-14 15:35:12.370345: Rate array import [{'start': 935, 'end': 960, 'rate': 'cheap', 'range': '(22.0p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2400, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 935, 'end': 2400, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:35:12.370806: - Your estimated bill for today is £7.06 and tomorrow is £9.43 2026-08-14 15:35:12.370865: - Import rates are cheap (22.0p) for the next 25 minutes and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:35:12.370900: - The battery is currently at 63% and is charging to 75% for the next 25 minutes. 2026-08-14 15:35:12.370928: - For the next 48 hours there will be no solar generation. 2026-08-14 15:35:12.370961: - You will run out of battery in 13 hours. 2026-08-14 15:35:12.370990: 2026-08-14 15:35:12.419278: Plan calculation took 8.39 seconds 2026-08-14 15:35:12.419665: Inverter 0: Type SK Sunsynk 2026-08-14 15:35:12.419707: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:35:12.419940: Reserve min: 7%, battery_min: 7% 2026-08-14 15:35:12.420010: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:35:12.420319: Inverter 0 SoC: 10.26kW 64%, current charge rate 5000W, current discharge rate 5250W, current battery power -4540W, current battery voltage 51.2V, grid power -5517W, load power 520W, PV Power 0W 2026-08-14 15:35:12.420599: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:35:12.420724: Inverter 0 scheduled charge enable is True 2026-08-14 15:35:12.420779: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 15:35:12.420906: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 15:35:12.421119: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:35:12.421171: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:35:12.421224: Inverter 0 scheduled discharge enable is False 2026-08-14 15:35:12.421381: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:35:12.421420: Inverter 0 discharge windows currently [] 2026-08-14 15:35:12.421449: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:35:12.421481: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:35:12.421502: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:35:12.478564: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 15:30:00 2026-08-14 15:35:12.478707: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 64%, target 100% 2026-08-14 15:35:12.478858: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 15:35:12.479037: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:35:12.479227: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:35:12.479319: No export window planned 2026-08-14 15:35:12.479474: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 15:35:12.479538: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:35:12.479847: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:35:12.480018: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 15:35:12.480066: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 15:35:12.480114: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 15:35:12.480229: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480271: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480300: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480327: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480351: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480382: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480406: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480456: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480490: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480517: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480542: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480579: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480605: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480630: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480690: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480726: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480752: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480776: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480842: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480869: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480894: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:35:12.480914: Inverter 0 count register writes 0 2026-08-14 15:35:12.503244: Total inverter register writes now 814 2026-08-14 15:35:12.543379: Info: Completed run status Charging 2026-08-14 15:35:12.550006: Info: record_status Charging target 64%-100.0% 2026-08-14 15:35:12.556204: Saved current settings to /config/predbat_config.json 2026-08-14 15:35:12.556510: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 15:35:43.655407: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:35:43.655797: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:35:43.655874: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:35:43.656110: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:35:43.656177: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:35:43.656211: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:35:43.656231: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:37:43.894722: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:37:43.895026: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:37:43.895092: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:37:43.895250: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:37:43.895289: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:37:43.895310: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:37:43.895333: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:39:44.126228: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:39:44.126516: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:39:44.126553: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:39:44.126704: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:39:44.126761: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:39:44.126791: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:39:44.126810: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:40:00.225440: --------------- PredBat - update at 2026-08-14 15:40:00+01:00 with clock skew 0 minutes, minutes now 940 2026-08-14 15:40:00.226374: Saved current settings to /config/predbat_config.json 2026-08-14 15:40:00.226554: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 115.0 minutes 2026-08-14 15:40:00.226700: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 15:40:00.226834: Autoupdate: Currently up to date 2026-08-14 15:40:00.257157: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 15:40:00.257291: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 15:40:00.257523: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 15:40:00.258233: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 15:40:00.258420: Predbat mode is set to Control charge & discharge 2026-08-14 15:40:00.427453: Found 21602 load_today datapoints going back 28 days 2026-08-14 15:40:00.427588: Using load_power data to fill gaps in load_today data 2026-08-14 15:40:01.105913: Processing 721 30-minute periods for power integration 2026-08-14 15:40:01.268205: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 15:40:01.268337: Car charging hold False, threshold 6.0kWh 2026-08-14 15:40:01.268379: Current data so far today: load 15.15kWh, import 26.2kWh, export 0.0kWh, PV 0kWh 2026-08-14 15:40:01.281442: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 15:40:01.282197: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 15:40:01.282265: Standing charge is set to 49.98p 2026-08-14 15:40:01.329879: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 15:40:01.329986: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 15:40:01.330224: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 305.0 minutes 2026-08-14 15:40:01.330611: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 305.0 minutes 2026-08-14 15:40:01.336498: Loaded 95 datapoints of futurerate analysis 2026-08-14 15:40:01.446998: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09'] 2026-08-14 15:40:01.520338: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 15:40:01.527817: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 15:40:01.528390: Import rates: min 14.97p, max 53.39p, average 26.72p 2026-08-14 15:40:01.574479: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 15:40:01.574635: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 15:40:01.576072: High export rate found rates in range 99p to -99p 2026-08-14 15:40:01.674070: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 15:40:01.674234: Car 0 charging is not planned as it is not plugged in 2026-08-14 15:40:01.688299: Battery level now 10.08kWh, -1hr ago 8.47kWh, at midnight 2.43kWh, battery value change in the last hour 20.68p, change today 98.36p, rate_forward 12.86p 2026-08-14 15:40:01.688803: Last hour: net energy 2.55kWh, import 2.55kWh, export 0.0kWh, car 0kWh, load 0.85kWh, net cost 56.28p, import 56.28p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 15:40:01.752683: Today's energy total net 26.2kWh, import 26.2kWh, export 0.0kWh, cost 659.53p, import 609.55p, export 0.0p, carbon 0.0kg 2026-08-14 15:40:01.752839: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 15:40:01.827613: Using weighted-bucket historical load forecast over 14 days 2026-08-14 15:40:01.851429: Today's load divergence 129.61%, in-day adjustment 134.62%, damping 0.95x, yesterday 146.81% today 128.13% blend 34.72% 2026-08-14 15:40:01.851561: Today's predicted so far 9.22kWh with 0.0kWh car/iBoost excluded, 15.0kWh import ignored, and 9.22kWh forecast extra. 2026-08-14 15:40:01.851592: Today's actual load so far 15.25kWh with 0.0kWh car/iBoost excluded, and 15.0kWh import ignored. 2026-08-14 15:40:01.883013: Inverter 0: Type SK Sunsynk 2026-08-14 15:40:01.883092: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:40:01.883243: Reserve min: 7%, battery_min: 7% 2026-08-14 15:40:01.883294: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:40:01.883549: Inverter 0 SoC: 10.26kW 64%, current charge rate 5000W, current discharge rate 5250W, current battery power -4539W, current battery voltage 51.2V, grid power -5834W, load power 838W, PV Power 0W 2026-08-14 15:40:01.883718: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:40:01.883809: Inverter 0 scheduled charge enable is True 2026-08-14 15:40:01.883850: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 15:40:01.883923: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 15:40:01.884026: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:40:01.884051: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:40:01.884080: Inverter 0 scheduled discharge enable is False 2026-08-14 15:40:01.884174: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:40:01.884201: Inverter 0 discharge windows currently [] 2026-08-14 15:40:01.884219: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:40:01.884234: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:40:01.884250: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:40:01.941704: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 15:40:01.941818: Plan was last updated on 2026-08-14 15:35:00+01:00 and is now 5.0 minutes old 2026-08-14 15:40:01.941954: Best charge window [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 16-08 16:00:00 @ 15.94p 100% ] 2026-08-14 15:40:01.941987: Best export window [ ] 2026-08-14 15:40:01.942609: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:40:01.945143: Load divergence over 8.0 hours mean 412.19W, min 274.2W, max 1206.0W, std dev 171.04W, divergence 20.75% 2026-08-14 15:40:01.961360: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:40:01.961491: LoadML is_calculating False 2026-08-14 15:40:01.961551: Creating pool of 12 processes to match your CPU count 2026-08-14 15:40:02.069064: predict base end_record 08-15 16:05:00, final soc 15.95kWh, metric 1126.18p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:45:00, load 31.95kWh, PV 0.0kWh 2026-08-14 15:40:02.203958: Battery has 13.08 hours left - now at 10.26kWh 2026-08-14 15:40:02.243233: predict base10 end_record 08-15 16:05:00, final soc 15.95kWh, metric 1146.04p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:25:00, load 32.75kWh, PV 0.0kWh 2026-08-14 15:40:02.318818: predict best10 end_record 08-15 16:05:00, final soc 1.44kWh, metric 909.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:25:00, load 32.75kWh, PV 0.0kWh 2026-08-14 15:40:02.397649: predict best end_record 08-15 16:05:00, final soc 1.51kWh, metric 893.04p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:45:00, load 31.95kWh, PV 0.0kWh 2026-08-14 15:40:02.397759: Saving plan best values to HA entities 2026-08-14 15:40:02.583163: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:40:02.589300: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:40:02.594452: Best charging limit SoC's [16.0, 16.0]kWh, export []kWh gives import battery 2.37kWh, house 6.55kWh, export 0.0kWh, metric 893.04p, metric10 909.25p 2026-08-14 15:40:02.666534: Marginal costs baseline metric (no standing charge): 843.0594 2026-08-14 15:40:02.935454: Marginal energy costs matrix computed: min=24.35 max=38.47 2026-08-14 15:40:03.046866: Rate array import [{'start': 940, 'end': 960, 'rate': 'cheap', 'range': '(22.0p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2400, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}, {'start': 2400, 'end': 2405, 'rate': 'expensive', 'range': '(32.7p)'}] export [{'start': 940, 'end': 2405, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:40:03.047312: - Your estimated bill for today is £7.02 and tomorrow is £9.50 2026-08-14 15:40:03.047364: - Import rates are cheap (22.0p) for the next 20 minutes and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:40:03.047401: - The battery is currently at 64% and is charging to 75% for the next 20 minutes. 2026-08-14 15:40:03.047429: - For the next 48 hours there will be no solar generation. 2026-08-14 15:40:03.047474: - You will run out of battery in 13 hours. 2026-08-14 15:40:03.047509: 2026-08-14 15:40:03.090335: Plan calculation took 1.15 seconds 2026-08-14 15:40:03.094984: No high rate period found 2026-08-14 15:40:03.143619: Import threshold used for optimisation was 22.02p 2026-08-14 15:40:03.192118: Low import rate windows [0: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 1: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 2: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 3: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 4: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 5: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 6: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 7: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 8: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 9: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 10: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 11: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 12: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 13: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 14: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 15: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 16: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 17: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 18: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 19: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 20: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 21: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 22: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 23: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 24: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 25: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 26: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 27: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 28: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 29: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 30: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 31: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 32: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 33: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 34: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 35: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 36: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 37: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 38: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 39: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 40: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 41: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 42: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 43: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 44: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 45: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 46: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 47: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 48: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 49: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 50: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 51: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 52: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 53: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 54: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 55: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 56: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 57: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 58: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 59: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 60: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 61: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 62: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 63: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 64: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 65: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 66: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 67: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 68: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 69: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 70: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 71: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 72: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 73: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 74: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 75: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 76: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 77: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 78: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 79: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 80: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 81: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 82: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 83: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 84: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 85: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 86: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 87: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 88: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 89: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 90: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 91: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 92: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19, 93: 08-16 14:30:00 - 08-16 15:00:00 @ 14.97, 94: 08-16 15:00:00 - 08-16 15:30:00 @ 15.69, 95: 08-16 15:30:00 - 08-16 16:00:00 @ 16.42] 2026-08-14 15:40:03.200892: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 15:30:00 2026-08-14 15:40:03.201069: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 64%, target 100% 2026-08-14 15:40:03.201304: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 15:40:03.201512: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:40:03.201776: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:40:03.201882: No export window planned 2026-08-14 15:40:03.202010: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 15:40:03.202066: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:40:03.202206: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:40:03.202332: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 15:40:03.202374: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 15:40:03.202437: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 15:40:03.202543: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.202584: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.202616: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.202642: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.202672: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.202705: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.202751: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.202802: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.202839: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.202867: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.202892: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.202926: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.202952: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.202977: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.203039: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.203068: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.203097: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.203122: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.203146: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.203175: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.203200: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:40:03.203225: Inverter 0 count register writes 0 2026-08-14 15:40:03.218946: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 15:40:03.223964: Total inverter register writes now 814 2026-08-14 15:40:03.255977: Info: Completed run status Charging 2026-08-14 15:40:03.261982: Info: record_status Charging target 64%-100.0% 2026-08-14 15:40:03.267882: Saved current settings to /config/predbat_config.json 2026-08-14 15:40:03.268139: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 15:40:44.387658: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:40:44.388011: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:40:44.388081: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:40:44.388227: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:40:44.388266: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:40:44.388288: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:40:44.388306: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:41:07.316595: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 15:41:08.414236: Processing 1345 30-minute periods for power integration 2026-08-14 15:41:08.530302: ML Component: Car charging hold False, car energy reported load False 2026-08-14 15:41:08.634946: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 15:41:08.730997: ML Temperature data points: 49461 2026-08-14 15:41:08.976792: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 15:41:09.011000: ML Component: Data fetch completed, load data age 56.0 days, 16165 data points 2026-08-14 15:41:09.011451: ML Component: No training needed, model age is 0.95 hours 2026-08-14 15:41:09.011545: ML Component: Generating predictions load data age 56.0 days, 16165 data points 2026-08-14 15:41:09.144449: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0603 max_dow {0: 0.10014999996256083, 1: 0.10541562554407864, 2: 0.11911562483031304, 3: 0.12494687463529408, 4: 0.17094062535744162, 5: 0.1007093750283122, 6: 0.10970937514957041} 2026-08-14 15:41:09.584290: ML Component: Generated 576 predictions (total 37.32 kWh over 48h) 2026-08-14 15:41:09.623626: ML Component: Prediction cycle completed 2026-08-14 15:41:09.750513: ML Component: Saved 16165 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 15:42:59.278305: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:42:59.278570: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:42:59.278609: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:42:59.278873: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:42:59.278936: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:42:59.278962: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:42:59.278982: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:44:59.524602: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:44:59.525051: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:44:59.525116: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:44:59.525334: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:44:59.525405: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:44:59.525458: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:44:59.525502: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:45:00.608541: --------------- PredBat - update at 2026-08-14 15:45:00+01:00 with clock skew 0 minutes, minutes now 945 2026-08-14 15:45:00.609333: Saved current settings to /config/predbat_config.json 2026-08-14 15:45:00.858594: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 15:45:00.858976: Autoupdate: Currently up to date 2026-08-14 15:45:00.877983: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 15:45:00.878103: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 15:45:00.878277: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 15:45:00.878802: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 15:45:00.878932: Predbat mode is set to Control charge & discharge 2026-08-14 15:45:01.064787: Found 21602 load_today datapoints going back 28 days 2026-08-14 15:45:01.064938: Using load_power data to fill gaps in load_today data 2026-08-14 15:45:01.954520: Processing 721 30-minute periods for power integration 2026-08-14 15:45:02.144988: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 15:45:02.145130: Car charging hold False, threshold 6.0kWh 2026-08-14 15:45:02.145176: Current data so far today: load 15.2kWh, import 26.2kWh, export 0.0kWh, PV 0kWh 2026-08-14 15:45:02.160452: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 15:45:02.161295: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 15:45:02.161374: Standing charge is set to 49.98p 2026-08-14 15:45:02.219815: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 15:45:02.219933: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 15:45:02.220165: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 310.0 minutes 2026-08-14 15:45:02.220571: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 310.0 minutes 2026-08-14 15:45:02.227142: Loaded 95 datapoints of futurerate analysis 2026-08-14 15:45:02.333202: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09'] 2026-08-14 15:45:02.395492: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 15:45:02.401311: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 15:45:02.401718: Import rates: min 14.97p, max 53.39p, average 26.71p 2026-08-14 15:45:02.445492: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 15:45:02.445625: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 15:45:02.446940: High export rate found rates in range 99p to -99p 2026-08-14 15:45:02.545739: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 15:45:02.545888: Car 0 charging is not planned as it is not plugged in 2026-08-14 15:45:02.560611: Battery level now 10.26kWh, -1hr ago 8.82kWh, at midnight 2.43kWh, battery value change in the last hour 18.62p, change today 100.73p, rate_forward 12.86p 2026-08-14 15:45:02.561053: Last hour: net energy 2.1kWh, import 2.1kWh, export 0.0kWh, car 0kWh, load 0.8kWh, net cost 46.37p, import 46.37p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 15:45:02.623964: Today's energy total net 26.2kWh, import 26.2kWh, export 0.0kWh, cost 659.53p, import 609.55p, export 0.0p, carbon 0.0kg 2026-08-14 15:45:02.624118: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 15:45:02.718190: Using weighted-bucket historical load forecast over 14 days 2026-08-14 15:45:02.750064: Today's load divergence 129.52%, in-day adjustment 134.49%, damping 0.95x, yesterday 146.81% today 128.04% blend 34.38% 2026-08-14 15:45:02.750202: Today's predicted so far 9.23kWh with 0.0kWh car/iBoost excluded, 15.01kWh import ignored, and 9.23kWh forecast extra. 2026-08-14 15:45:02.750267: Today's actual load so far 15.23kWh with 0.0kWh car/iBoost excluded, and 15.01kWh import ignored. 2026-08-14 15:45:02.790147: Inverter 0: Type SK Sunsynk 2026-08-14 15:45:02.790241: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:45:02.790442: Reserve min: 7%, battery_min: 7% 2026-08-14 15:45:02.790536: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:45:02.790850: Inverter 0 SoC: 10.97kW 69%, current charge rate 5000W, current discharge rate 5250W, current battery power -4546W, current battery voltage 51.2V, grid power -5937W, load power 940W, PV Power 0W 2026-08-14 15:45:02.791030: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:45:02.791120: Inverter 0 scheduled charge enable is True 2026-08-14 15:45:02.791176: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 15:45:02.791269: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 15:45:02.791394: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:45:02.791430: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:45:02.791467: Inverter 0 scheduled discharge enable is False 2026-08-14 15:45:02.791654: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:45:02.791741: Inverter 0 discharge windows currently [] 2026-08-14 15:45:02.791783: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:45:02.791805: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:45:02.791823: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:45:02.856886: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 15:45:02.857027: Plan was last updated on 2026-08-14 15:35:00+01:00 and is now 10.0 minutes old 2026-08-14 15:45:02.857198: Best charge window [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 16-08 16:00:00 @ 15.94p 100% ] 2026-08-14 15:45:02.857261: Best export window [ ] 2026-08-14 15:45:02.858169: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:45:02.861429: Load divergence over 8.0 hours mean 414.98W, min 269.4W, max 1164.0W, std dev 169.87W, divergence 20.47% 2026-08-14 15:45:02.881031: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:45:02.881148: LoadML is_calculating False 2026-08-14 15:45:02.881212: Creating pool of 12 processes to match your CPU count 2026-08-14 15:45:03.013669: predict base end_record 08-15 16:10:00, final soc 15.92kWh, metric 1108.41p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:15:00, load 31.99kWh, PV 0.0kWh 2026-08-14 15:45:03.156291: Battery has 13.5 hours left - now at 10.97kWh 2026-08-14 15:45:03.208230: predict base10 end_record 08-15 16:10:00, final soc 15.91kWh, metric 1128.31p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:10:00, load 32.79kWh, PV 0.0kWh 2026-08-14 15:45:03.302979: predict best10 end_record 08-15 16:10:00, final soc 1.77kWh, metric 904.07p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:10:00, load 32.79kWh, PV 0.0kWh 2026-08-14 15:45:03.390528: predict best end_record 08-15 16:10:00, final soc 1.9kWh, metric 890.03p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:15:00, load 31.99kWh, PV 0.0kWh 2026-08-14 15:45:03.390646: Saving plan best values to HA entities 2026-08-14 15:45:03.603991: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:45:03.609606: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:45:03.615501: Best charging limit SoC's [16.0, 16.0]kWh, export []kWh gives import battery 2.34kWh, house 6.27kWh, export 0.0kWh, metric 890.03p, metric10 904.07p 2026-08-14 15:45:03.693042: Marginal costs baseline metric (no standing charge): 840.0487 2026-08-14 15:45:03.965669: Marginal energy costs matrix computed: min=24.7 max=38.64 2026-08-14 15:45:04.046155: Rate array import [{'start': 945, 'end': 960, 'rate': 'cheap', 'range': '(22.0p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2400, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}, {'start': 2400, 'end': 2410, 'rate': 'expensive', 'range': '(32.7p)'}] export [{'start': 945, 'end': 2410, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:45:04.046624: - Your estimated bill for today is £6.91 and tomorrow is £9.43 2026-08-14 15:45:04.046669: - Import rates are cheap (22.0p) for the next 15 minutes and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:45:04.046707: - The battery is currently at 69% and is charging to 75% for the next 15 minutes. 2026-08-14 15:45:04.046727: - For the next 48 hours there will be no solar generation. 2026-08-14 15:45:04.046744: - You will run out of battery in 13 hours. 2026-08-14 15:45:04.046764: 2026-08-14 15:45:04.097989: Plan calculation took 1.24 seconds 2026-08-14 15:45:04.101759: No high rate period found 2026-08-14 15:45:04.153986: Import threshold used for optimisation was 22.02p 2026-08-14 15:45:04.203997: Low import rate windows [0: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 1: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 2: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 3: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 4: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 5: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 6: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 7: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 8: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 9: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 10: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 11: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 12: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 13: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 14: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 15: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 16: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 17: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 18: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 19: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 20: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 21: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 22: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 23: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 24: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 25: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 26: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 27: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 28: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 29: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 30: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 31: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 32: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 33: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 34: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 35: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 36: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 37: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 38: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 39: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 40: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 41: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 42: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 43: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 44: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 45: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 46: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 47: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 48: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 49: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 50: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 51: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 52: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 53: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 54: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 55: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 56: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 57: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 58: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 59: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 60: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 61: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 62: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 63: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 64: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 65: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 66: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 67: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 68: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 69: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 70: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 71: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 72: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 73: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 74: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 75: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 76: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 77: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 78: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 79: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 80: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 81: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 82: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 83: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 84: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 85: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 86: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 87: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 88: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 89: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 90: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 91: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 92: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19, 93: 08-16 14:30:00 - 08-16 15:00:00 @ 14.97, 94: 08-16 15:00:00 - 08-16 15:30:00 @ 15.69, 95: 08-16 15:30:00 - 08-16 16:00:00 @ 16.42] 2026-08-14 15:45:04.211840: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 15:30:00 2026-08-14 15:45:04.211947: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 69%, target 100% 2026-08-14 15:45:04.212126: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 15:45:04.212296: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:45:04.212503: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:45:04.212589: No export window planned 2026-08-14 15:45:04.212703: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 15:45:04.212736: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:45:04.212847: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:45:04.212978: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 15:45:04.213022: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 15:45:04.213069: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 15:45:04.213159: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213192: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213215: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213235: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213255: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213275: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213294: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213330: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213363: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213389: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213410: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213435: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213460: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213480: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213529: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213563: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213584: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213603: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213622: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213647: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213708: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:04.213730: Inverter 0 count register writes 0 2026-08-14 15:45:04.229645: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 15:45:04.229823: Recompute is saving previous plan... 2026-08-14 15:45:04.233207: Best charge window [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 100%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 100%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 100%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 100%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 100%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 100%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 100%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 100%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 100%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 100%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 100%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 100%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 100%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 100%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 100%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 100%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 100%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 100%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 100%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 100%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 100%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 100%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 100%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 100%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 100%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 100%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 100%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 100%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 100%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 100%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 100%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 100%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 100%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 100%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 100%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 100%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 100%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.69p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 16.42p 100% ] 2026-08-14 15:45:04.233296: Best export window [ ] 2026-08-14 15:45:04.234200: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:45:04.237414: Load divergence over 8.0 hours mean 414.98W, min 269.4W, max 1164.0W, std dev 169.87W, divergence 20.47% 2026-08-14 15:45:04.255924: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:45:04.256052: LoadML is_calculating False 2026-08-14 15:45:04.256126: Creating pool of 12 processes to match your CPU count 2026-08-14 15:45:04.348416: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 15:45:04.350772: Optimise levels pass started at 2026-08-14 15:45:04 2026-08-14 15:45:04.350835: Optimise all windows, total charge 95 export 1 2026-08-14 15:45:05.404745: >> Region optimisation pass width 960 gives best_metric 1057.06p, best_cost 1066.27p, best_cycle 34.82kWh, best_import 23.99kWh 2026-08-14 15:45:05.865928: >> Region optimisation pass width 480 gives best_metric 1057.06p, best_cost 1066.27p, best_cycle 34.82kWh, best_import 23.99kWh 2026-08-14 15:45:06.446269: >> Region optimisation pass width 240 gives best_metric 1057.06p, best_cost 1066.27p, best_cycle 34.82kWh, best_import 23.99kWh 2026-08-14 15:45:07.644587: >> Region optimisation pass width 120 gives best_metric 1057.06p, best_cost 1066.27p, best_cycle 34.82kWh, best_import 23.99kWh 2026-08-14 15:45:07.645415: Calculated end_record as 08-16 12:30:00 based on best_price 15.78p, next_charge_start 08-15 12:30:00, max_windows 89 2026-08-14 15:45:07.645564: Optimise levels pass ended at 2026-08-14 15:45:07, duration 3.3 seconds tried 325 combinations 2026-08-14 15:45:07.645693: Set best_price_charge_level 17.0p, best_price_export_level 0p, best_price_charge 15.78p, best_cost_export 0p, best_metric 1057.06p, best_keep 0kWh, best_cycle 34.82kWh, best_carbon 0kg, best_import 23.99kWh 2026-08-14 15:45:07.668643: Starting detailed optimisation end_record 08-16 12:30:00, best_price_charge 15.78p, best_price_export 0p. lowest_price_charge 14.97p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.75, 13.75, 13.75, 13.75, 13.75, 13.75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 15:45:14.000155: Tweak plan optimisation started metric 1024.32p, cost 1034.1p 2026-08-14 15:45:14.354124: Tweak optimisation finished metric 1024.32p, cost 1034.1p, metric_keep 0kWh, cycle 36.65kWh, carbon 0kg, import 22.14kWh, changed 8 window(s) 2026-08-14 15:45:14.373913: Swap charge optimisation started metric 1024.32p, cost 1034.1p, min_improvement_swap 0.1p 2026-08-14 15:45:19.535182: Swap charge optimisation finished metric 1024.32p, cost 1034.1p 2026-08-14 15:45:19.614298: Raw charge windows [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 86%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 86%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 86%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.69p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 16.42p 100% ] reserve 1.12 2026-08-14 15:45:19.614864: Unclipped charge windows [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 15:00:00 @ 15.13p 86%, 15-08 15:00:00 - 15-08 16:00:00 @ 16.05p 84%, 16-08 12:30:00 - 16-08 16:00:00 @ 15.93p 100% ] reserve 1.12 2026-08-14 15:45:19.615109: Unfiltered charge windows [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 15:00:00 @ 15.13p 100%, 15-08 15:00:00 - 15-08 16:00:00 @ 16.05p 84%, 16-08 12:30:00 - 16-08 16:00:00 @ 15.93p 100% ] reserve 1.12 2026-08-14 15:45:19.615324: Filtered charge windows [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 19%, 15-08 13:00:00 - 15-08 15:00:00 @ 15.36p 100%, 15-08 15:00:00 - 15-08 16:00:00 @ 16.05p 84%, 16-08 12:30:00 - 16-08 16:00:00 @ 15.93p 100% ] reserve 1.12 2026-08-14 15:45:19.646250: Previous plan best metric is 1561.54 (cost 1764.92) and new plan best metric is 1024.32 (cost 1034.1) 2026-08-14 15:45:19.646430: New plan metric is significantly better from previous plan, using new plan 2026-08-14 15:45:19.646465: Plan valid is now true after recompute was False 2026-08-14 15:45:19.672021: predict base end_record 08-16 12:30:00, final soc 5.13kWh, metric 1205.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:15:00, load 44.58kWh, PV 0.0kWh 2026-08-14 15:45:19.816293: Battery has 13.5 hours left - now at 10.97kWh 2026-08-14 15:45:19.871431: predict base10 end_record 08-16 12:30:00, final soc 4.11kWh, metric 1218.44p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:10:00, load 45.98kWh, PV 0.0kWh 2026-08-14 15:45:19.949298: predict best10 end_record 08-16 12:30:00, final soc 1.12kWh, metric 1164.92p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:10:00, load 45.98kWh, PV 0.0kWh 2026-08-14 15:45:20.028316: predict best end_record 08-16 12:30:00, final soc 1.12kWh, metric 1134.07p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:15:00, load 44.58kWh, PV 0.0kWh 2026-08-14 15:45:20.028411: Saving plan best values to HA entities 2026-08-14 15:45:20.193625: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:45:20.199530: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:45:20.223843: Best charging limit SoC's [16.0, 3.0, 16.0, 13.5, 16.0]kWh, export []kWh gives import battery 16.85kWh, house 5.29kWh, export 0.0kWh, metric 1134.07p, metric10 1164.92p 2026-08-14 15:45:20.300068: Marginal costs baseline metric (no standing charge): 1034.0998 2026-08-14 15:45:20.578398: Marginal energy costs matrix computed: min=24.7 max=38.64 2026-08-14 15:45:20.651453: Rate array import [{'start': 945, 'end': 960, 'rate': 'cheap', 'range': '(22.0p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2400, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}, {'start': 2400, 'end': 2520, 'rate': 'expensive', 'range': '(32.7p - 40.2p)'}, {'start': 2520, 'end': 2580, 'rate': 'very expensive', 'range': '(42.0p - 43.9p)'}, {'start': 2580, 'end': 2940, 'rate': 'expensive', 'range': '(28.0p - 31.3p)'}, {'start': 2940, 'end': 3630, 'rate': 'cheap', 'range': '(16.2p - 27.2p)'}] export [{'start': 945, 'end': 3630, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:45:20.651873: - Your estimated bill for today is £6.91 and tomorrow is £3.74 2026-08-14 15:45:20.651916: - Import rates are cheap (22.0p) for the next 15 minutes and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:45:20.651935: - The battery is currently at 69% and is charging to 76% for the next 15 minutes. 2026-08-14 15:45:20.651950: - For the next 48 hours there will be no solar generation. 2026-08-14 15:45:20.651964: - You will run out of battery in 13 hours. 2026-08-14 15:45:20.651978: 2026-08-14 15:45:20.714344: Plan calculation took 16.48 seconds 2026-08-14 15:45:20.714768: Inverter 0: Type SK Sunsynk 2026-08-14 15:45:20.714831: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:45:20.715086: Reserve min: 7%, battery_min: 7% 2026-08-14 15:45:20.715168: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:45:20.715545: Inverter 0 SoC: 10.97kW 69%, current charge rate 5000W, current discharge rate 5250W, current battery power -4546W, current battery voltage 51.2V, grid power -5937W, load power 940W, PV Power 0W 2026-08-14 15:45:20.715864: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:45:20.715981: Inverter 0 scheduled charge enable is True 2026-08-14 15:45:20.716037: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 15:45:20.716133: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 15:45:20.716259: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:45:20.716294: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:45:20.716337: Inverter 0 scheduled discharge enable is False 2026-08-14 15:45:20.716478: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:45:20.716524: Inverter 0 discharge windows currently [] 2026-08-14 15:45:20.716554: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:45:20.716579: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:45:20.716598: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:45:20.777529: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 15:30:00 2026-08-14 15:45:20.777656: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 69%, target 100% 2026-08-14 15:45:20.777810: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 15:45:20.777981: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:45:20.778189: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:45:20.778326: No export window planned 2026-08-14 15:45:20.778546: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 15:45:20.778605: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:45:20.778778: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:45:20.778894: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 15:45:20.778931: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 15:45:20.778999: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 15:45:20.779109: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779152: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779180: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779206: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779230: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779263: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779288: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779333: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779361: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779394: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779427: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779459: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779491: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779516: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779580: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779618: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779645: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779669: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779711: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779735: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779759: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:45:20.779783: Inverter 0 count register writes 0 2026-08-14 15:45:20.801745: Total inverter register writes now 814 2026-08-14 15:45:20.840744: Info: Completed run status Charging 2026-08-14 15:45:20.846984: Info: record_status Charging target 69%-100.0% 2026-08-14 15:45:20.854413: Saved current settings to /config/predbat_config.json 2026-08-14 15:45:20.854799: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 15:45:58.969946: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:45:58.970214: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:45:58.970278: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:45:58.970422: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:45:58.970463: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:45:58.970486: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:45:58.970532: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:47:59.201022: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:47:59.201291: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:47:59.201350: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:47:59.201493: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:47:59.201532: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:47:59.201554: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:47:59.201572: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:49:59.448882: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:49:59.449193: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:49:59.449233: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:49:59.449367: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:49:59.449406: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:49:59.449429: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:49:59.449447: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:50:00.553397: --------------- PredBat - update at 2026-08-14 15:50:00+01:00 with clock skew 0 minutes, minutes now 950 2026-08-14 15:50:00.554162: Saved current settings to /config/predbat_config.json 2026-08-14 15:50:00.554289: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 5.0 minutes 2026-08-14 15:50:00.554361: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 15:50:00.554440: Autoupdate: Currently up to date 2026-08-14 15:50:00.572939: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 15:50:00.573183: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 15:50:00.573433: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 15:50:00.574123: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 15:50:00.574293: Predbat mode is set to Control charge & discharge 2026-08-14 15:50:00.792434: Found 21602 load_today datapoints going back 28 days 2026-08-14 15:50:00.792609: Using load_power data to fill gaps in load_today data 2026-08-14 15:50:01.607026: Processing 721 30-minute periods for power integration 2026-08-14 15:50:01.815401: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 15:50:01.815540: Car charging hold False, threshold 6.0kWh 2026-08-14 15:50:01.815589: Current data so far today: load 15.25kWh, import 27.2kWh, export 0.0kWh, PV 0kWh 2026-08-14 15:50:01.831734: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 15:50:01.832590: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 15:50:01.832691: Standing charge is set to 49.98p 2026-08-14 15:50:01.881434: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 15:50:01.881545: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 15:50:01.881786: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 315.0 minutes 2026-08-14 15:50:01.882269: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 315.0 minutes 2026-08-14 15:50:01.889355: Loaded 95 datapoints of futurerate analysis 2026-08-14 15:50:01.988801: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09'] 2026-08-14 15:50:02.046290: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 15:50:02.051885: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 15:50:02.052463: Import rates: min 14.97p, max 53.39p, average 26.7p 2026-08-14 15:50:02.095008: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 15:50:02.095133: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 15:50:02.096479: High export rate found rates in range 99p to -99p 2026-08-14 15:50:02.197250: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 15:50:02.197375: Car 0 charging is not planned as it is not plugged in 2026-08-14 15:50:02.209032: Battery level now 10.97kWh, -1hr ago 9.16kWh, at midnight 2.43kWh, battery value change in the last hour 23.25p, change today 109.78p, rate_forward 12.86p 2026-08-14 15:50:02.209423: Last hour: net energy 2.6kWh, import 2.6kWh, export 0.0kWh, car 0kWh, load 0.8kWh, net cost 57.39p, import 57.39p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 15:50:02.263050: Today's energy total net 27.2kWh, import 27.2kWh, export 0.0kWh, cost 681.55p, import 631.56p, export 0.0p, carbon 0.0kg 2026-08-14 15:50:02.263201: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 15:50:02.352255: Using weighted-bucket historical load forecast over 14 days 2026-08-14 15:50:02.380687: Today's load divergence 129.41%, in-day adjustment 134.36%, damping 0.95x, yesterday 146.81% today 127.94% blend 34.03% 2026-08-14 15:50:02.380770: Today's predicted so far 9.26kWh with 0.0kWh car/iBoost excluded, 15.9kWh import ignored, and 9.26kWh forecast extra. 2026-08-14 15:50:02.380802: Today's actual load so far 15.23kWh with 0.0kWh car/iBoost excluded, and 15.9kWh import ignored. 2026-08-14 15:50:02.412124: Inverter 0: Type SK Sunsynk 2026-08-14 15:50:02.412211: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:50:02.412394: Reserve min: 7%, battery_min: 7% 2026-08-14 15:50:02.412464: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:50:02.412742: Inverter 0 SoC: 10.97kW 69%, current charge rate 5000W, current discharge rate 5250W, current battery power -4547W, current battery voltage 51.2V, grid power -5855W, load power 859W, PV Power 0W 2026-08-14 15:50:02.412899: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:50:02.413016: Inverter 0 scheduled charge enable is True 2026-08-14 15:50:02.413073: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 15:50:02.413173: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 15:50:02.413306: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:50:02.413349: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:50:02.413385: Inverter 0 scheduled discharge enable is False 2026-08-14 15:50:02.413499: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:50:02.413565: Inverter 0 discharge windows currently [] 2026-08-14 15:50:02.413588: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:50:02.413607: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:50:02.413642: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:50:02.475050: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 15:50:02.475165: Plan was last updated on 2026-08-14 15:45:00+01:00 and is now 5.0 minutes old 2026-08-14 15:50:02.475425: Best charge window [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 19%, 15-08 13:00:00 - 15-08 15:00:00 @ 15.36p 100%, 15-08 15:00:00 - 15-08 16:00:00 @ 16.05p 84%, 16-08 12:30:00 - 16-08 16:00:00 @ 15.93p 100% ] 2026-08-14 15:50:02.475470: Best export window [ ] 2026-08-14 15:50:02.476298: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:50:02.479405: Load divergence over 8.0 hours mean 415.19W, min 264.6W, max 1182.6W, std dev 161.24W, divergence 19.42% 2026-08-14 15:50:02.498772: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:50:02.498896: LoadML is_calculating False 2026-08-14 15:50:02.498963: Creating pool of 12 processes to match your CPU count 2026-08-14 15:50:02.625763: predict base end_record 08-16 12:35:00, final soc 5.51kWh, metric 1233.46p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:35:00, load 44.64kWh, PV 0.0kWh 2026-08-14 15:50:02.739381: Battery has 12.75 hours left - now at 10.97kWh 2026-08-14 15:50:02.777216: predict base10 end_record 08-16 12:35:00, final soc 4.43kWh, metric 1245.68p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:30:00, load 46.04kWh, PV 0.0kWh 2026-08-14 15:50:02.843126: predict best10 end_record 08-16 12:35:00, final soc 1.44kWh, metric 1192.24p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:30:00, load 46.04kWh, PV 0.0kWh 2026-08-14 15:50:02.917208: predict best end_record 08-16 12:35:00, final soc 1.51kWh, metric 1162.59p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:35:00, load 44.64kWh, PV 0.0kWh 2026-08-14 15:50:02.917301: Saving plan best values to HA entities 2026-08-14 15:50:03.126747: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:50:03.133433: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:50:03.140430: Best charging limit SoC's [16.0, 3.0, 16.0, 13.5, 16.0]kWh, export []kWh gives import battery 16.85kWh, house 5.67kWh, export 0.0kWh, metric 1162.59p, metric10 1192.24p 2026-08-14 15:50:03.221853: Marginal costs baseline metric (no standing charge): 1062.6217 2026-08-14 15:50:03.503827: Marginal energy costs matrix computed: min=24.97 max=39.09 2026-08-14 15:50:03.588834: Rate array import [{'start': 950, 'end': 960, 'rate': 'cheap', 'range': '(22.0p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2400, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}, {'start': 2400, 'end': 2520, 'rate': 'expensive', 'range': '(32.7p - 40.2p)'}, {'start': 2520, 'end': 2580, 'rate': 'very expensive', 'range': '(42.0p - 43.9p)'}, {'start': 2580, 'end': 2940, 'rate': 'expensive', 'range': '(28.0p - 31.3p)'}, {'start': 2940, 'end': 3635, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 950, 'end': 3635, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:50:03.589254: - Your estimated bill for today is £7.03 and tomorrow is £3.83 2026-08-14 15:50:03.589297: - Import rates are cheap (22.0p) for the next 10 minutes and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:50:03.589315: - The battery is currently at 69% and is charging to 76% for the next 10 minutes. 2026-08-14 15:50:03.589330: - For the next 48 hours there will be no solar generation. 2026-08-14 15:50:03.589344: - You will run out of battery in 12 hours. 2026-08-14 15:50:03.589357: 2026-08-14 15:50:03.658850: Plan calculation took 1.18 seconds 2026-08-14 15:50:03.663279: No high rate period found 2026-08-14 15:50:03.731796: Import threshold used for optimisation was 22.02p 2026-08-14 15:50:03.789911: Low import rate windows [0: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 1: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 2: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 3: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 4: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 5: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 6: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 7: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 8: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 9: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 10: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 11: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 12: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 13: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 14: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 15: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 16: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 17: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 18: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 19: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 20: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 21: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 22: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 23: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 24: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 25: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 26: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 27: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 28: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 29: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 30: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 31: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 32: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 33: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 34: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 35: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 36: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 37: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 38: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 39: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 40: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 41: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 42: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 43: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 44: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 45: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 46: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 47: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 48: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 49: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 50: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 51: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 52: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 53: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 54: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 55: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 56: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 57: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 58: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 59: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 60: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 61: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 62: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 63: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 64: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 65: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 66: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 67: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 68: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 69: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 70: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 71: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 72: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 73: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 74: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 75: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 76: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 77: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 78: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 79: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 80: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 81: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 82: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 83: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 84: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 85: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 86: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 87: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 88: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 89: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 90: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 91: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 92: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19, 93: 08-16 14:30:00 - 08-16 15:00:00 @ 14.97, 94: 08-16 15:00:00 - 08-16 15:30:00 @ 15.69, 95: 08-16 15:30:00 - 08-16 16:00:00 @ 16.42] 2026-08-14 15:50:03.797147: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 15:30:00 2026-08-14 15:50:03.797264: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 69%, target 100% 2026-08-14 15:50:03.797441: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 15:50:03.797654: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:50:03.797905: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:50:03.798005: No export window planned 2026-08-14 15:50:03.798145: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 15:50:03.798180: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:50:03.798315: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:50:03.798435: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 15:50:03.798471: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 15:50:03.798521: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 15:50:03.798658: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.798703: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.798754: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.798782: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.798809: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.798839: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.798865: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.798912: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.798940: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.798970: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.798999: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.799028: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.799053: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.799078: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.799146: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.799175: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.799207: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.799233: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.799258: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.799283: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.799313: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:50:03.799335: Inverter 0 count register writes 0 2026-08-14 15:50:03.815287: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 15:50:03.820530: Total inverter register writes now 814 2026-08-14 15:50:03.853466: Info: Completed run status Charging 2026-08-14 15:50:03.859329: Info: record_status Charging target 69%-100.0% 2026-08-14 15:50:03.866081: Saved current settings to /config/predbat_config.json 2026-08-14 15:50:03.866406: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 15:50:43.982537: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:50:43.982955: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:50:43.983030: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:50:43.983301: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:50:43.983365: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:50:43.983410: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:50:43.983483: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:52:44.224143: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:52:44.224428: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:52:44.224478: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:52:44.224651: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:52:44.224693: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:52:44.224712: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:52:44.224727: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:54:44.449872: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:54:44.450208: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:54:44.450254: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:54:44.450391: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:54:44.450429: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:54:44.450450: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:54:44.450467: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:55:00.552342: --------------- PredBat - update at 2026-08-14 15:55:00+01:00 with clock skew 0 minutes, minutes now 955 2026-08-14 15:55:00.553161: Saved current settings to /config/predbat_config.json 2026-08-14 15:55:00.553317: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 10.0 minutes 2026-08-14 15:55:00.553398: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 15:55:00.553487: Autoupdate: Currently up to date 2026-08-14 15:55:00.575983: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 15:55:00.576141: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 15:55:00.576396: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 15:55:00.577229: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 15:55:00.577413: Predbat mode is set to Control charge & discharge 2026-08-14 15:55:00.838110: Found 21602 load_today datapoints going back 28 days 2026-08-14 15:55:00.838321: Using load_power data to fill gaps in load_today data 2026-08-14 15:55:01.724183: Processing 721 30-minute periods for power integration 2026-08-14 15:55:01.939167: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 15:55:01.939295: Car charging hold False, threshold 6.0kWh 2026-08-14 15:55:01.939338: Current data so far today: load 15.3kWh, import 27.2kWh, export 0.0kWh, PV 0kWh 2026-08-14 15:55:01.954122: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 15:55:01.954918: Octopus: Joined Octopus saving session: Wed 12/08 18:00-20:00 at rate 2.0 p/kWh state False 2026-08-14 15:55:01.955022: Standing charge is set to 49.98p 2026-08-14 15:55:02.005484: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 15:55:02.005584: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 15:55:02.005861: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 320.0 minutes 2026-08-14 15:55:02.006204: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 320.0 minutes 2026-08-14 15:55:02.012355: Loaded 95 datapoints of futurerate analysis 2026-08-14 15:55:02.110558: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09'] 2026-08-14 15:55:02.168471: Octopus: Setting Octopus saving session in range 08-12 18:00:00 - 08-12 20:00:00 export False rate 2.0 2026-08-14 15:55:02.174540: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 15:55:02.175004: Import rates: min 14.97p, max 53.39p, average 26.69p 2026-08-14 15:55:02.218399: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 15:55:02.218541: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 15:55:02.219979: High export rate found rates in range 99p to -99p 2026-08-14 15:55:02.321286: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 15:55:02.321458: Car 0 charging is not planned as it is not plugged in 2026-08-14 15:55:02.333667: Battery level now 10.97kWh, -1hr ago 9.52kWh, at midnight 2.43kWh, battery value change in the last hour 18.62p, change today 109.78p, rate_forward 12.86p 2026-08-14 15:55:02.334028: Last hour: net energy 2.1kWh, import 2.1kWh, export 0.0kWh, car 0kWh, load 0.8kWh, net cost 46.38p, import 46.38p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 15:55:02.391131: Today's energy total net 27.2kWh, import 27.2kWh, export 0.0kWh, cost 681.55p, import 631.56p, export 0.0p, carbon 0.0kg 2026-08-14 15:55:02.391322: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 15:55:02.465161: Using weighted-bucket historical load forecast over 14 days 2026-08-14 15:55:02.489191: Today's load divergence 129.3%, in-day adjustment 134.22%, damping 0.95x, yesterday 146.81% today 127.83% blend 33.68% 2026-08-14 15:55:02.489271: Today's predicted so far 9.29kWh with 0.0kWh car/iBoost excluded, 16.06kWh import ignored, and 9.29kWh forecast extra. 2026-08-14 15:55:02.489298: Today's actual load so far 15.23kWh with 0.0kWh car/iBoost excluded, and 16.06kWh import ignored. 2026-08-14 15:55:02.521855: Inverter 0: Type SK Sunsynk 2026-08-14 15:55:02.521959: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:55:02.522242: Reserve min: 7%, battery_min: 7% 2026-08-14 15:55:02.522369: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:55:02.522770: Inverter 0 SoC: 11.31kW 71%, current charge rate 5000W, current discharge rate 5250W, current battery power -4549W, current battery voltage 51.2V, grid power -5853W, load power 852W, PV Power 0W 2026-08-14 15:55:02.523019: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:55:02.523155: Inverter 0 scheduled charge enable is True 2026-08-14 15:55:02.523234: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 15:55:02.523396: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 15:55:02.523569: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:55:02.523622: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:55:02.523664: Inverter 0 scheduled discharge enable is False 2026-08-14 15:55:02.523796: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:55:02.523834: Inverter 0 discharge windows currently [] 2026-08-14 15:55:02.523857: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:55:02.523876: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:55:02.523893: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:55:02.580582: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 15:55:02.580707: Plan was last updated on 2026-08-14 15:45:00+01:00 and is now 10.0 minutes old 2026-08-14 15:55:02.581005: Best charge window [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 19%, 15-08 13:00:00 - 15-08 15:00:00 @ 15.36p 100%, 15-08 15:00:00 - 15-08 16:00:00 @ 16.05p 84%, 16-08 12:30:00 - 16-08 16:00:00 @ 15.93p 100% ] 2026-08-14 15:55:02.581054: Best export window [ ] 2026-08-14 15:55:02.581888: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:55:02.585120: Load divergence over 8.0 hours mean 415.29W, min 272.4W, max 1057.8W, std dev 152.65W, divergence 18.38% 2026-08-14 15:55:02.604225: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:55:02.604335: LoadML is_calculating False 2026-08-14 15:55:02.604401: Creating pool of 12 processes to match your CPU count 2026-08-14 15:55:02.735128: predict base end_record 08-16 12:40:00, final soc 5.92kWh, metric 1231.73p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:35:00, load 44.69kWh, PV 0.0kWh 2026-08-14 15:55:02.897998: Battery has 12.67 hours left - now at 11.31kWh 2026-08-14 15:55:02.967457: predict base10 end_record 08-16 12:40:00, final soc 4.77kWh, metric 1242.84p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:35:00, load 46.09kWh, PV 0.0kWh 2026-08-14 15:55:03.068459: predict best10 end_record 08-16 12:40:00, final soc 1.77kWh, metric 1189.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:35:00, load 46.09kWh, PV 0.0kWh 2026-08-14 15:55:03.153463: predict best end_record 08-16 12:40:00, final soc 1.9kWh, metric 1160.56p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:35:00, load 44.69kWh, PV 0.0kWh 2026-08-14 15:55:03.153556: Saving plan best values to HA entities 2026-08-14 15:55:03.341254: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:55:03.347916: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:55:03.354199: Best charging limit SoC's [16.0, 3.0, 16.0, 13.5, 16.0]kWh, export []kWh gives import battery 16.87kWh, house 5.69kWh, export 0.0kWh, metric 1160.56p, metric10 1189.1p 2026-08-14 15:55:03.433360: Marginal costs baseline metric (no standing charge): 1060.5929 2026-08-14 15:55:03.711067: Marginal energy costs matrix computed: min=25.3 max=39.38 2026-08-14 15:55:03.800065: Rate array import [{'start': 955, 'end': 960, 'rate': 'cheap', 'range': '(22.0p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2400, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}, {'start': 2400, 'end': 2520, 'rate': 'expensive', 'range': '(32.7p - 40.2p)'}, {'start': 2520, 'end': 2580, 'rate': 'very expensive', 'range': '(42.0p - 43.9p)'}, {'start': 2580, 'end': 2940, 'rate': 'expensive', 'range': '(28.0p - 31.3p)'}, {'start': 2940, 'end': 3640, 'rate': 'cheap', 'range': '(15.8p - 27.2p)'}] export [{'start': 955, 'end': 3640, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:55:03.800516: - Your estimated bill for today is £6.92 and tomorrow is £3.84 2026-08-14 15:55:03.800561: - Import rates are cheap (22.0p) for the next 5 minutes and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:55:03.800584: - The battery is currently at 71% and is charging to 76% for the next 5 minutes. 2026-08-14 15:55:03.800617: - For the next 48 hours there will be no solar generation. 2026-08-14 15:55:03.800641: - You will run out of battery in 12 hours. 2026-08-14 15:55:03.800659: 2026-08-14 15:55:03.875527: Plan calculation took 1.29 seconds 2026-08-14 15:55:03.879149: No high rate period found 2026-08-14 15:55:03.933061: Import threshold used for optimisation was 22.02p 2026-08-14 15:55:03.993841: Low import rate windows [0: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 1: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 2: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 3: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 4: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 5: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 6: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 7: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 8: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 9: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 10: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 11: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 12: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 13: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 14: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 15: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 16: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 17: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 18: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 19: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 20: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 21: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 22: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 23: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 24: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 25: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 26: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 27: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 28: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 29: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 30: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 31: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 32: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 33: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 34: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 35: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 36: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 37: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 38: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 39: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 40: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 41: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 42: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 43: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 44: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 45: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 46: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 47: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 48: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 49: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 50: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 51: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 52: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 53: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 54: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 55: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 56: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 57: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 58: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 59: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 60: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 61: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 62: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 63: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 64: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 65: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 66: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 67: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 68: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 69: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 70: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 71: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 72: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 73: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 74: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 75: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 76: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 77: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 78: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 79: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 80: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 81: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 82: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 83: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 84: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 85: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 86: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 87: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 88: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 89: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 90: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 91: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 92: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19, 93: 08-16 14:30:00 - 08-16 15:00:00 @ 14.97, 94: 08-16 15:00:00 - 08-16 15:30:00 @ 15.69, 95: 08-16 15:30:00 - 08-16 16:00:00 @ 16.42] 2026-08-14 15:55:04.003556: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 15:30:00 2026-08-14 15:55:04.003700: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 71%, target 100% 2026-08-14 15:55:04.003885: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 15:55:04.004087: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:55:04.004339: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:55:04.004449: No export window planned 2026-08-14 15:55:04.004681: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 15:55:04.004732: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:55:04.004881: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:55:04.005046: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 15:55:04.005098: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 15:55:04.005153: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 15:55:04.005273: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.005317: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.005345: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.005372: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.005418: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.005451: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.005483: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.005530: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.005587: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.005666: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.005703: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.005741: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.005768: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.005801: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.005879: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.005909: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.005949: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.005984: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.006039: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.006107: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.006156: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:04.006187: Inverter 0 count register writes 0 2026-08-14 15:55:04.029114: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 15:55:04.029335: Recompute is saving previous plan... 2026-08-14 15:55:04.033473: Best charge window [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 100%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 100%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 100%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 100%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 100%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 100%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 100%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 100%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 100%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 100%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 100%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 100%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 100%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 100%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 100%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 100%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 100%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 100%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 100%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 100%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 100%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 100%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 100%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 100%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 100%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 100%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 100%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 100%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 100%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 100%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 100%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 100%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 100%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 100%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 100%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 100%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 100%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 100%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 100%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.69p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 16.42p 100% ] 2026-08-14 15:55:04.033578: Best export window [ ] 2026-08-14 15:55:04.034475: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:55:04.038107: Load divergence over 8.0 hours mean 415.29W, min 272.4W, max 1057.8W, std dev 152.65W, divergence 18.38% 2026-08-14 15:55:04.059144: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:55:04.059312: LoadML is_calculating False 2026-08-14 15:55:04.059394: Creating pool of 12 processes to match your CPU count 2026-08-14 15:55:04.151239: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 15:55:04.153570: Optimise levels pass started at 2026-08-14 15:55:04 2026-08-14 15:55:04.154448: Optimise all windows, total charge 95 export 1 2026-08-14 15:55:04.917316: >> Region optimisation pass width 960 gives best_metric 1073.29p, best_cost 1081.24p, best_cycle 32.16kWh, best_import 23.44kWh 2026-08-14 15:55:05.329656: >> Region optimisation pass width 480 gives best_metric 1073.29p, best_cost 1081.24p, best_cycle 32.16kWh, best_import 23.44kWh 2026-08-14 15:55:05.875659: >> Region optimisation pass width 240 gives best_metric 1073.29p, best_cost 1081.24p, best_cycle 32.16kWh, best_import 23.44kWh 2026-08-14 15:55:07.669171: >> Region optimisation pass width 120 gives best_metric 1071.59p, best_cost 1079.29p, best_cycle 33.95kWh, best_import 23.57kWh 2026-08-14 15:55:07.669546: Calculated end_record as 08-15 16:00:00 based on best_price 22.02p, next_charge_start 08-14 16:00:00, max_windows 48 2026-08-14 15:55:07.669643: Optimise levels pass ended at 2026-08-14 15:55:07, duration 3.5 seconds tried 322 combinations 2026-08-14 15:55:07.669719: Set best_price_charge_level 23.6p, best_price_export_level 0p, best_price_charge 22.02p, best_cost_export 0p, best_metric 1071.59p, best_keep 0kWh, best_cycle 33.95kWh, best_carbon 0kg, best_import 23.57kWh 2026-08-14 15:55:07.690336: Starting detailed optimisation end_record 08-15 16:00:00, best_price_charge 22.02p, best_price_export 0p. lowest_price_charge 14.97p with charge limits [16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12.25, 16.0, 16.0, 16.0, 16.0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 15:55:10.699309: Tweak plan optimisation started metric 809.88p, cost 821.56p 2026-08-14 15:55:11.007443: Tweak optimisation finished metric 809.88p, cost 821.56p, metric_keep 0kWh, cycle 10.66kWh, carbon 0kg, import 7.15kWh, changed 8 window(s) 2026-08-14 15:55:11.030755: Swap charge optimisation started metric 809.88p, cost 821.56p, min_improvement_swap 0.1p 2026-08-14 15:55:11.315877: Swap charge optimisation finished metric 809.88p, cost 821.56p 2026-08-14 15:55:11.347055: Raw charge windows [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 100%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 100%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 100%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 100%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 100%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 100%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 100%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 100%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 100%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 100%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 100%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 100%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 100%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 100%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 100%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 100%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 100%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 100%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 100%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 100%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 100%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 100%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 100%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 100%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 100%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 100%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 100%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 100%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 100%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 100%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 100%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 100%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 100%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 100%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 100%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.69p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 16.42p 100% ] reserve 1.12 2026-08-14 15:55:11.347621: Unclipped charge windows [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 16-08 16:00:00 @ 15.94p 100% ] reserve 1.12 2026-08-14 15:55:11.347756: Unfiltered charge windows [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 16-08 16:00:00 @ 15.94p 100% ] reserve 1.12 2026-08-14 15:55:11.347871: Filtered charge windows [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 100%, 15-08 16:00:00 - 16-08 16:00:00 @ 15.94p 100% ] reserve 1.12 2026-08-14 15:55:11.382479: Previous plan best metric is 855.61 (cost 1026.31) and new plan best metric is 809.88 (cost 821.56) 2026-08-14 15:55:11.382745: New plan metric is significantly better from previous plan, using new plan 2026-08-14 15:55:11.382837: Plan valid is now true after recompute was False 2026-08-14 15:55:11.410301: predict base end_record 08-15 16:00:00, final soc 16.0kWh, metric 1119.71p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:35:00, load 31.89kWh, PV 0.0kWh 2026-08-14 15:55:11.529640: Battery has 12.67 hours left - now at 11.31kWh 2026-08-14 15:55:11.578276: predict base10 end_record 08-15 16:00:00, final soc 16.0kWh, metric 1139.36p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:35:00, load 32.68kWh, PV 0.0kWh 2026-08-14 15:55:11.661443: predict best10 end_record 08-15 16:00:00, final soc 1.12kWh, metric 889.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:35:00, load 32.68kWh, PV 0.0kWh 2026-08-14 15:55:11.749370: predict best end_record 08-15 16:00:00, final soc 1.12kWh, metric 871.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:35:00, load 31.89kWh, PV 0.0kWh 2026-08-14 15:55:11.749472: Saving plan best values to HA entities 2026-08-14 15:55:11.902511: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:55:11.908137: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:55:11.913942: Best charging limit SoC's [16.0, 16.0]kWh, export []kWh gives import battery 0.48kWh, house 6.68kWh, export 0.0kWh, metric 871.54p, metric10 889.75p 2026-08-14 15:55:11.994142: Marginal costs baseline metric (no standing charge): 821.5562 2026-08-14 15:55:12.283953: Marginal energy costs matrix computed: min=25.3 max=39.38 2026-08-14 15:55:12.357335: Rate array import [{'start': 955, 'end': 960, 'rate': 'cheap', 'range': '(22.0p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2400, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}] export [{'start': 955, 'end': 2400, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:55:12.357796: - Your estimated bill for today is £6.92 and tomorrow is £9.54 2026-08-14 15:55:12.357846: - Import rates are cheap (22.0p) for the next 5 minutes and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:55:12.357870: - The battery is currently at 71% and is charging to 73% for the next 5 minutes. 2026-08-14 15:55:12.357888: - For the next 48 hours there will be no solar generation. 2026-08-14 15:55:12.357905: - You will run out of battery in 12 hours. 2026-08-14 15:55:12.357922: 2026-08-14 15:55:12.406569: Plan calculation took 8.38 seconds 2026-08-14 15:55:12.407019: Inverter 0: Type SK Sunsynk 2026-08-14 15:55:12.407066: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:55:12.407319: Reserve min: 7%, battery_min: 7% 2026-08-14 15:55:12.407401: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:55:12.407760: Inverter 0 SoC: 11.66kW 73%, current charge rate 5000W, current discharge rate 5250W, current battery power -4553W, current battery voltage 51.2V, grid power -5919W, load power 923W, PV Power 0W 2026-08-14 15:55:12.408005: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as True == True 2026-08-14 15:55:12.408112: Inverter 0 scheduled charge enable is True 2026-08-14 15:55:12.408166: Inverter 0 charge windows currently [{'start': 720, 'end': 960, 'average': 0}, {'start': 2160, 'end': 2400, 'average': 0}, {'start': 3600, 'end': 3840, 'average': 0}] 2026-08-14 15:55:12.408260: Inverter 0 Charge settings: 08-14 12:00:00-08-14 16:00:00, limit 100.0%, power 5.0kW 2026-08-14 15:55:12.408385: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:55:12.408442: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:55:12.408486: Inverter 0 scheduled discharge enable is False 2026-08-14 15:55:12.408632: Inverter 0 idle time is 08-14 16:00:00-08-14 23:59:00 2026-08-14 15:55:12.408671: Inverter 0 discharge windows currently [] 2026-08-14 15:55:12.408700: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:55:12.408719: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:55:12.408740: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:55:12.474074: Include original charge start 08-14 12:00:00, keeping this instead of new start 08-14 15:30:00 2026-08-14 15:55:12.474203: Inverter 0 Charge window will be: 2026-08-14 12:00:00+01:00 - 2026-08-14 16:00:00+01:00 - current SoC 73%, target 100% 2026-08-14 15:55:12.474339: Inverter 0 Target SoC 100%, (this inverter 100%), battery temperature 20°C, select charge rate 5000W (real 5000W), current charge rate 5000W 2026-08-14 15:55:12.474508: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:55:12.474815: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:55:12.474932: No export window planned 2026-08-14 15:55:12.475055: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 15:55:12.475092: Adjust idle time, charge 12:00:00-16:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:55:12.475231: Adjust demand (idle) time computed is 16:00:00-23:59:00 2026-08-14 15:55:12.475345: Inverter 0 setting charging SoC to 100% as per target 2026-08-14 15:55:12.475388: Inverter 0 adjust target SoC for charge to 100% based on requested all inverter SoC 100% 2026-08-14 15:55:12.475439: Inverter 0 Current Target SoC is 100%, already at target 2026-08-14 15:55:12.475547: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.475587: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.475643: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.475680: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.475706: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.475738: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.475770: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.475826: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.475855: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.475893: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.475922: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.475952: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.475978: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.476007: Inverter 0 Skipped service charge_start_service domain charge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.476098: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.476128: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.476154: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.476178: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.476201: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.476231: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.476256: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 15:55:12.476276: Inverter 0 count register writes 0 2026-08-14 15:55:12.501483: Total inverter register writes now 814 2026-08-14 15:55:12.541417: Info: Completed run status Charging 2026-08-14 15:55:12.547759: Info: record_status Charging target 73%-100.0% 2026-08-14 15:55:12.554237: Saved current settings to /config/predbat_config.json 2026-08-14 15:55:12.554542: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 15:55:30.771260: Warn: Web Socket closed, will try to reconnect in 5 seconds - error count 1 2026-08-14 15:55:35.772921: Info: Start socket for url http://10.0.20.15:8123/api/websocket 2026-08-14 15:55:35.775625: Error: Web Socket exception in startup: Cannot connect to host 10.0.20.15:8123 ssl:default [Connect call failed ('10.0.20.15', 8123)] 2026-08-14 15:55:35.794744: Error: Traceback (most recent call last): File "/usr/local/lib/python3.13/site-packages/aiohttp/connector.py", line 1301, in _wrap_create_connection sock = await aiohappyeyeballs.start_connection( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ...<6 lines>... ) ^ File "/usr/local/lib/python3.13/site-packages/aiohappyeyeballs/impl.py", line 124, in start_connection raise first_exception File "/usr/local/lib/python3.13/site-packages/aiohappyeyeballs/impl.py", line 75, in start_connection sock = await _connect_sock( ^^^^^^^^^^^^^^^^^^^^ ...<6 lines>... ) ^ File "/usr/local/lib/python3.13/site-packages/aiohappyeyeballs/impl.py", line 210, in _connect_sock await loop.sock_connect(sock, address) File "/usr/local/lib/python3.13/asyncio/selector_events.py", line 643, in sock_connect return await fut ^^^^^^^^^ File "/usr/local/lib/python3.13/asyncio/selector_events.py", line 683, in _sock_connect_cb raise OSError(err, f'Connect call failed {address}') ConnectionRefusedError: [Errno 111] Connect call failed ('10.0.20.15', 8123) The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/addon/ha.py", line 549, in socketLoop async with session.ws_connect(url) as websocket: ~~~~~~~~~~~~~~~~~~^^^^^ File "/usr/local/lib/python3.13/site-packages/aiohttp/client.py", line 1693, in __aenter__ self._resp: _RetType_co = await self._coro ^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.13/site-packages/aiohttp/client.py", line 1249, in _ws_connect resp = await self.request( ^^^^^^^^^^^^^^^^^^^ ...<11 lines>... ) ^ File "/usr/local/lib/python3.13/site-packages/aiohttp/client.py", line 858, in _request resp = await handler(req) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.13/site-packages/aiohttp/client.py", line 812, in _connect_and_send_request conn = await self._connector.connect( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ req, traces=traces, timeout=real_timeout ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/usr/local/lib/python3.13/site-packages/aiohttp/connector.py", line 657, in connect proto = await self._create_connection(req, traces, timeout) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.13/site-packages/aiohttp/connector.py", line 1242, in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.13/site-packages/aiohttp/connector.py", line 1620, in _create_direct_connection raise last_exc File "/usr/local/lib/python3.13/site-packages/aiohttp/connector.py", line 1589, in _create_direct_connection transp, proto = await self._wrap_create_connection( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ...<7 lines>... ) ^ File "/usr/local/lib/python3.13/site-packages/aiohttp/connector.py", line 1324, in _wrap_create_connection raise client_error(req.connection_key, exc) from exc aiohttp.client_exceptions.ClientConnectorError: Cannot connect to host 10.0.20.15:8123 ssl:default [Connect call failed ('10.0.20.15', 8123)] 2026-08-14 15:55:35.795068: Warn: Web Socket closed, will try to reconnect in 5 seconds - error count 2 2026-08-14 15:56:16.146630: Info: No secrets.yaml file found 2026-08-14 15:56:16.146873: Loading apps.yaml 2026-08-14 15:56:16.439418: Predbat: Startup predbat 2026-08-14 15:56:16.813309: --------------- PredBat - update at 2026-08-14 15:55:00+01:00 with clock skew 0 minutes, minutes now 955 2026-08-14 15:56:16.819152: Config root is /config 2026-08-14 15:56:16.875794: --------------- PredBat - update at 2026-08-14 15:55:00+01:00 with clock skew 0 minutes, minutes now 955 2026-08-14 15:56:16.876053: Initialising Storage interface 2026-08-14 15:56:16.877287: Initialising Home Assistant Interface interface 2026-08-14 15:56:24.236004: Initialising Home Assistant History interface 2026-08-14 15:56:24.236463: Initialising Web Interface interface 2026-08-14 15:56:24.236841: Initialising plugin system 2026-08-14 15:56:24.237308: Scanning for plugins in: /addon 2026-08-14 15:56:24.238218: Plugin discovery complete. Loaded 0 plugins. 2026-08-14 15:56:24.238584: Starting Storage interface 2026-08-14 15:56:24.238855: Creating task: 2026-08-14 15:56:24.241067: StorageComponent: Waiting for API to start 2026-08-14 15:56:24.309297: StorageComponent: Started 2026-08-14 15:56:25.247696: Starting Home Assistant Interface interface 2026-08-14 15:56:25.247896: Creating task: 2026-08-14 15:56:25.248943: Info: Starting HA interface 2026-08-14 15:56:25.249509: Info: Start socket for url http://10.0.20.15:8123/api/websocket 2026-08-14 15:56:25.251135: HAInterface: Waiting for API to start 2026-08-14 15:56:25.558431: Info: Web Socket active 2026-08-14 15:56:26.251377: Starting Home Assistant History interface 2026-08-14 15:56:26.251563: Creating task: 2026-08-14 15:56:26.252325: HAHistory: Waiting for API to start 2026-08-14 15:56:26.252802: Info: Starting HAHistory 2026-08-14 15:56:26.252916: Info: HAHistory: Pruning history data started. 2026-08-14 15:56:26.253012: Info: HAHistory: Pruning history data completed. 2026-08-14 15:56:26.253110: HAHistory: Started 2026-08-14 15:56:27.252546: Starting Web Interface interface 2026-08-14 15:56:27.252744: Creating task: 2026-08-14 15:56:27.253412: WebInterface: Waiting for API to start 2026-08-14 15:56:28.253739: Config root is /config and printable config_root_p is now /config 2026-08-14 15:56:28.275913: Refreshing Predbat configuration 2026-08-14 15:56:28.288392: Warn: Failed to decode response from http://10.0.20.15:8123/api/history/period/2026-07-15T15:56:28+0100 2026-08-14 15:56:28.288900: predbat.status unavailable but predbat_config.json exists - not treating this as a new install 2026-08-14 15:56:28.289160: Loading current config 2026-08-14 15:56:30.853785: Warn: Failed to decode response from http://10.0.20.15:8123/api/history/period/2026-07-15T15:56:30+0100 2026-08-14 15:56:31.422478: Warn: Failed to decode response from http://10.0.20.15:8123/api/history/period/2026-07-15T15:56:31+0100 2026-08-14 15:56:31.801925: Saved current settings to /config/predbat_config.json 2026-08-14 15:56:32.969638: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 15:56:33.057082: Initialising MCP Server interface 2026-08-14 15:56:33.057763: Initialising External Temperature API interface 2026-08-14 15:56:33.058194: Starting MCP Server interface 2026-08-14 15:56:33.058268: Creating task: 2026-08-14 15:56:33.058855: PredbatMCPServer: Waiting for API to start 2026-08-14 15:56:33.059257: Creating HTTP MCP Server with Predbat integration 2026-08-14 15:56:33.060496: HTTP MCP Server started (web interface integration) 2026-08-14 15:56:34.060642: Starting External Temperature API interface 2026-08-14 15:56:34.060840: Creating task: 2026-08-14 15:56:34.062747: TemperatureAPI: Waiting for API to start 2026-08-14 15:56:34.335327: TemperatureAPI: Started 2026-08-14 15:56:35.063509: Initialising ML Load Forecaster interface 2026-08-14 15:56:35.252352: ML Predictor: Upgraded 288 feature std values to prevent extreme normalization 2026-08-14 15:56:35.252629: ML Predictor: Model loaded from /config/predbat_ml_model.npz (trained 2026-08-14 13:42, val_mae=0.0060, val_bias=-0.0008) 2026-08-14 15:56:35.253037: ML Component: Loaded existing model 2026-08-14 15:56:35.253299: Starting ML Load Forecaster interface 2026-08-14 15:56:35.253473: Creating task: 2026-08-14 15:56:35.254545: LoadMLComponent: Waiting for API to start 2026-08-14 15:56:35.334340: ML Component: Loaded database history: 16165 load points, 0.2h elapsed since save, age 56.0 days (shift will be applied on next fetch) 2026-08-14 15:56:35.357415: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 15:56:36.491843: Warn: Failed to decode response from http://10.0.20.15:8123/api/history/period/2026-07-17T15:56:35+0100 2026-08-14 15:56:36.492313: Error: Failure to fetch history for sensor.sunsynk_day_load_energy 2026-08-14 15:56:36.492430: Warn: Unable to fetch history for sensor.sunsynk_day_load_energy 2026-08-14 15:56:36.492475: Warn: ML Component: Failed to convert load history to minute data 2026-08-14 15:56:36.492501: Warn: ML Component: Failed to fetch load data, no data was returned. 2026-08-14 15:56:36.492546: ML Component: Data fetch completed, load data age 56.0 days, 16165 data points 2026-08-14 15:56:36.492637: ML Component: No training needed, model age is 1.2 hours 2026-08-14 15:56:36.492730: ML Component: Generating predictions load data age 56.0 days, 16165 data points 2026-08-14 15:56:36.722648: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0 max_dow {0: 0.1001499995472841, 1: 0.10541562578873709, 2: 0.11911562434397638, 3: 0.12494687462458387, 4: 0.17094062501564622, 5: 0.10070937447017059, 6: 0.10970937460660934} 2026-08-14 15:57:04.496880: ML Component: Generated 576 predictions (total 29.36 kWh over 48h) 2026-08-14 15:57:04.521092: Error: ML Component: Failed during ML work: Traceback (most recent call last): File "/addon/load_ml_component.py", line 760, in run self._publish_entity() ~~~~~~~~~~~~~~~~~~~~^^ File "/addon/load_ml_component.py", line 1028, in _publish_entity output_value = round(value - reset_amount + self.load_minutes_now, 4) ^^^^^^^^^^^^^^^^^^^^^ AttributeError: 'LoadMLComponent' object has no attribute 'load_minutes_now'. Did you mean: 'minutes_now'? 2026-08-14 15:57:04.521546: LoadMLComponent: Started 2026-08-14 15:57:05.446890: Refreshing Predbat configuration 2026-08-14 15:57:09.363092: Watch list [] 2026-08-14 15:57:11.396404: Saved current settings to /config/predbat_config.json 2026-08-14 15:57:11.398833: Warn: Regular expression argument: octopus_saving_session unable to match re:(binary_sensor.octopus_energy([0-9a-z_]+|)_saving_session(s|)), now will disable 2026-08-14 15:57:11.400674: Warn: Regular expression argument: octopus_free_session unable to match re:(event.octopus_energy_([0-9a-z_]+|)_octoplus_free_electricity_session_events), now will disable 2026-08-14 15:57:11.401139: Expected types ['float'] state None 2026-08-14 15:57:11.401230: Warn: Validation of apps.yaml found configuration item 'load_today' element sensor.sunsynk_day_load_energy returned value 'None', not a valid value 2026-08-14 15:57:11.401366: Expected types ['float'] state None 2026-08-14 15:57:11.401434: Warn: Validation of apps.yaml found configuration item 'import_today' element sensor.sunsynk_day_grid_import returned value 'None', not a valid value 2026-08-14 15:57:11.401554: Expected types ['float'] state None 2026-08-14 15:57:11.401628: Warn: Validation of apps.yaml found configuration item 'export_today' element sensor.sunsynk_day_grid_export returned value 'None', not a valid value 2026-08-14 15:57:11.401833: Expected types ['float'] state None 2026-08-14 15:57:11.401900: Warn: Validation of apps.yaml found configuration item 'battery_power' element sensor.sunsynk_battery_power returned value 'None', not a valid value 2026-08-14 15:57:11.402035: Expected types ['float'] state None 2026-08-14 15:57:11.402106: Warn: Validation of apps.yaml found configuration item 'load_power' element sensor.sunsynk_load_power returned value 'None', not a valid value 2026-08-14 15:57:11.402340: Expected types ['float'] state None 2026-08-14 15:57:11.402404: Warn: Validation of apps.yaml found configuration item 'charge_limit' element number.sunsynk_prog1_capacity returned value 'None', not a valid value 2026-08-14 15:57:11.402944: Expected types ['float'] state None 2026-08-14 15:57:11.403016: Warn: Validation of apps.yaml found configuration item 'metric_octopus_import' element sensor.octopus_energy_electricity_current_rate returned value 'None', not a valid value 2026-08-14 15:57:11.403509: Error: Validation of apps.yaml found 7 configuration errors 2026-08-14 15:57:11.410543: Restored saved plan from 340 minutes ago: 5 charge windows, 0 export windows 2026-08-14 15:57:11.476835: Predbat: Next run time will be 2026-08-14 16:00:00 and then every 300 seconds 2026-08-14 15:57:12.489974: Refreshing Predbat configuration 2026-08-14 15:57:29.939923: Saved current settings to /config/predbat_config.json 2026-08-14 15:57:29.940243: Warn: Validation of apps.yaml found configuration item 'load_today' element sensor.sunsynk_day_load_energy is not a valid type float 2026-08-14 15:57:29.940367: Warn: Validation of apps.yaml found configuration item 'import_today' element sensor.sunsynk_day_grid_import is not a valid type float 2026-08-14 15:57:29.940476: Warn: Validation of apps.yaml found configuration item 'export_today' element sensor.sunsynk_day_grid_export is not a valid type float 2026-08-14 15:57:29.940667: Warn: Validation of apps.yaml found configuration item 'battery_power' element sensor.sunsynk_battery_power is not a valid type float 2026-08-14 15:57:29.940791: Warn: Validation of apps.yaml found configuration item 'load_power' element sensor.sunsynk_load_power is not a valid type float 2026-08-14 15:57:29.941091: Warn: Validation of apps.yaml found configuration item 'charge_limit' element number.sunsynk_prog1_capacity is not a valid type float 2026-08-14 15:57:29.941951: Error: Validation of apps.yaml found 6 configuration errors 2026-08-14 15:57:29.942175: --------------- PredBat - update at 2026-08-14 15:55:00+01:00 with clock skew 0 minutes, minutes now 955 2026-08-14 15:57:29.942929: Saved current settings to /config/predbat_config.json 2026-08-14 15:57:30.202476: Loaded GitHub URL cache from storage (1 entries) 2026-08-14 15:57:30.202779: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 12.5 minutes 2026-08-14 15:57:30.202957: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 15:57:30.203127: Autoupdate: Currently up to date 2026-08-14 15:57:33.808575: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 15:57:33.808844: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 15:57:33.809383: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 15:57:33.810453: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 15:57:33.810756: Predbat mode is set to Control charge & discharge 2026-08-14 15:57:35.579203: Found 21602 load_today datapoints going back 27 days 2026-08-14 15:57:35.579388: Using load_power data to fill gaps in load_today data 2026-08-14 15:57:44.472731: Processing 721 30-minute periods for power integration 2026-08-14 15:57:44.796797: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 15:57:44.796937: Car charging hold False, threshold 6.0kWh 2026-08-14 15:57:44.797052: Current data so far today: load 15.3kWh, import 28.2kWh, export 0.0kWh, PV 0kWh 2026-08-14 15:57:44.903143: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 15:57:44.903743: Standing charge is set to 49.98p 2026-08-14 15:57:44.956013: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 15:57:44.956164: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 15:57:44.956528: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 322.7 minutes 2026-08-14 15:57:44.957057: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 322.7 minutes 2026-08-14 15:57:44.967647: Loaded 95 datapoints of futurerate analysis 2026-08-14 15:57:45.077005: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09'] 2026-08-14 15:57:45.143073: Rate min forward looking: now 14.97p at end of forecast 14.97p 2026-08-14 15:57:45.143258: Import rates: min 14.97p, max 53.39p, average 26.69p 2026-08-14 15:57:45.215625: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 15:57:45.215801: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 15:57:45.217602: High export rate found rates in range 99p to -99p 2026-08-14 15:57:45.351969: Low Import rate found rates in range 14.97p to 50.94p 2026-08-14 15:57:45.352112: Car 0 charging is not planned as it is not plugged in 2026-08-14 15:57:45.507502: Battery level now 11.31kWh, -1hr ago 9.52kWh, at midnight 2.43kWh, battery value change in the last hour 23.05p, change today 114.2p, rate_forward 12.86p 2026-08-14 15:57:45.507989: Last hour: net energy 3.1kWh, import 3.1kWh, export 0.0kWh, car 0kWh, load 0.8kWh, net cost 68.4p, import 68.4p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 15:57:45.718823: Today's energy total net 28.2kWh, import 28.2kWh, export 0.0kWh, cost 703.57p, import 653.58p, export 0.0p, carbon 0.0kg 2026-08-14 15:57:45.719015: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 15:57:45.820391: Using weighted-bucket historical load forecast over 14 days 2026-08-14 15:57:45.958919: Today's load divergence 129.29%, in-day adjustment 134.22%, damping 0.95x, yesterday 146.81% today 127.83% blend 33.68% 2026-08-14 15:57:45.959033: Today's predicted so far 9.29kWh with 0.0kWh car/iBoost excluded, 16.94kWh import ignored, and 9.29kWh forecast extra. 2026-08-14 15:57:45.959067: Today's actual load so far 15.23kWh with 0.0kWh car/iBoost excluded, and 16.94kWh import ignored. 2026-08-14 15:57:46.059521: Octopus slots changed from [[], [], [], [], [], [], [], []] to [[]] 2026-08-14 15:57:46.060114: Sensor changes require a replan, will recompute the plan 2026-08-14 15:57:46.060426: Inverter 0: Type SK Sunsynk 2026-08-14 15:57:46.060508: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:57:46.118851: Reserve min: 7%, battery_min: 7% 2026-08-14 15:57:46.119025: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:57:46.119115: **** Creating dummy entity sensor.predbat_SK_0_scheduled_charge_enable with value on and attributes {'state_class': 'measurement'} 2026-08-14 15:57:46.132434: **** Creating dummy entity sensor.predbat_SK_0_scheduled_discharge_enable with value on and attributes {'state_class': 'measurement'} 2026-08-14 15:57:46.142055: **** Creating dummy entity sensor.predbat_SK_0_reserve with value 1.12 and attributes {'state_class': 'measurement', 'unit_of_measurement': '%', 'icon': 'mdi:battery-lock'} 2026-08-14 15:57:46.151858: **** Creating dummy entity sensor.predbat_SK_0_charge_rate with value 5000.0 and attributes {'state_class': 'measurement', 'unit_of_measurement': 'W', 'device_class': 'power'} 2026-08-14 15:57:46.165726: **** Creating dummy entity sensor.predbat_SK_0_discharge_rate with value 5000.0 and attributes {'state_class': 'measurement', 'unit_of_measurement': 'W', 'device_class': 'power'} 2026-08-14 15:57:46.174600: **** Creating dummy entity sensor.predbat_SK_0_inverter_mode with value Eco and attributes {'state_class': 'measurement'} 2026-08-14 15:57:46.184464: **** Creating dummy entity sensor.predbat_SK_0_charge_start_time with value 23:59:00 and attributes {'state_class': 'measurement'} 2026-08-14 15:57:46.193880: **** Creating dummy entity sensor.predbat_SK_0_charge_end_time with value 23:59:00 and attributes {'state_class': 'measurement'} 2026-08-14 15:57:46.202370: **** Creating dummy entity sensor.predbat_SK_0_discharge_start_time with value 23:59:00 and attributes {'state_class': 'measurement'} 2026-08-14 15:57:46.211531: **** Creating dummy entity sensor.predbat_SK_0_discharge_end_time with value 23:59:00 and attributes {'state_class': 'measurement'} 2026-08-14 15:57:46.221720: **** Creating dummy entity sensor.predbat_SK_0_idle_start_time with value 00:00:00 and attributes {'state_class': 'measurement'} 2026-08-14 15:57:46.230725: **** Creating dummy entity sensor.predbat_SK_0_idle_end_time with value 00:00:00 and attributes {'state_class': 'measurement'} 2026-08-14 15:57:46.239848: Warn: Return bad float value unknown from soc_percent using default 0.0 2026-08-14 15:57:46.248751: Warn: record_status Warn: Return bad float value unknown from soc_percent 2026-08-14 15:57:46.248991: Warn: Return bad float value unknown from battery_power using default 0.0 2026-08-14 15:57:46.258114: Warn: record_status Warn: Return bad float value unknown from battery_power 2026-08-14 15:57:46.258303: Warn: Return bad float value unknown from grid_power using default 0.0 2026-08-14 15:57:46.270398: Warn: record_status Warn: Return bad float value unknown from grid_power 2026-08-14 15:57:46.270589: Warn: Return bad float value unknown from load_power using default 0.0 2026-08-14 15:57:46.278837: Warn: record_status Warn: Return bad float value unknown from load_power 2026-08-14 15:57:46.279032: Inverter 0 SoC: 0.0kW 0%, current charge rate 5000W, current discharge rate 5250W, current battery power 0W, current battery voltage 51.2V, grid power 0W, load power 0W, PV Power 0W 2026-08-14 15:57:51.287943: Inverter 0 Wrote scheduled_charge_enable to False successfully and got off 2026-08-14 15:57:51.288169: Inverter 0 scheduled charge enable is False 2026-08-14 15:57:51.288206: Inverter 0 charge windows currently [] 2026-08-14 15:57:51.288243: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 15:57:56.297384: Inverter 0 Wrote scheduled_discharge_enable to False successfully and got off 2026-08-14 15:57:56.297517: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:57:56.297594: Inverter 0 scheduled discharge enable is False 2026-08-14 15:57:56.297874: Inverter 0 idle time is 08-15 00:00:00-08-15 00:00:00 2026-08-14 15:57:56.297922: Inverter 0 discharge windows currently [] 2026-08-14 15:57:56.298006: Looking for discharge curve with sensors sensor.sunsynk_battery_soc, sensor.predbat_SK_0_discharge_rate, predbat.status and sensor.sunsynk_battery_power 2026-08-14 15:58:01.418393: Looking for discharge curve, have found 15.0 days of history data, max days 15 2026-08-14 15:58:01.490870: Info: Cannot find battery discharge curve (no full rate discharge cycle to empty found in history), battery may not have been fully charged/discharged at max rate recently - this is normal in cost-optimised operation 2026-08-14 15:58:01.508120: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:58:01.508254: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:58:01.508284: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:58:01.603722: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 15:58:01.603834: Will recompute the plan as it is invalid 2026-08-14 15:58:01.603897: Current charge window has expired, removing it 2026-08-14 15:58:01.603938: Current charge window has expired, removing it 2026-08-14 15:58:01.604067: Recompute is saving previous plan... 2026-08-14 15:58:01.608156: Best charge window [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.69p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 16.42p 0% ] 2026-08-14 15:58:01.608285: Best export window [ ] 2026-08-14 15:58:01.609294: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 15:58:01.613251: Load divergence over 8.0 hours mean 415.29W, min 272.4W, max 1057.8W, std dev 152.65W, divergence 18.38% 2026-08-14 15:58:01.636342: Calculating data from yesterday for savings calculation 2026-08-14 15:58:01.651274: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 15:58:01.875355: Warn: Prediction kernel failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so)) - using Python engine 2026-08-14 15:58:01.892781: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 913.68p, metric_keep 0kWh, min_soc 0.0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 15:58:01.909005: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 921.3p, metric_keep 0kWh, min_soc 0.0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 15:58:01.930409: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 913.68p, metric_keep 0kWh, min_soc 0.0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 15:58:01.969058: Yesterday: Predbat disabled was £9.14 (adjusted £8.99) vs £6.21 (adjusted £5.88), saving £2.92 (adjusted £3.11) with import 29.17kWh, export 0.0kWh, battery_cycle 3.57kWh, start_soc 0.0kWh, final_soc 1.12kWh and battery_value 14.4kWh 2026-08-14 15:58:02.054843: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 901.12p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 15:58:02.055055: Yesterday: No Battery/PV system cost predicted was £9.01 (adjusted £9.01) vs £6.21 (adjusted £5.88), saving £2.8 (adjusted £3.13) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 15:58:02.087943: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 15:58:02.088094: LoadML is_calculating False 2026-08-14 15:58:02.088186: Creating pool of 12 processes to match your CPU count 2026-08-14 15:58:02.255385: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 15:58:02.258383: Optimise levels pass started at 2026-08-14 15:58:02 2026-08-14 15:58:02.258486: Optimise all windows, total charge 95 export 1 2026-08-14 15:58:03.586833: >> Region optimisation pass width 960 gives best_metric 1438.83p, best_cost 1446.6p, best_cycle 26.42kWh, best_import 34.34kWh 2026-08-14 15:58:04.047760: >> Region optimisation pass width 480 gives best_metric 1438.83p, best_cost 1446.6p, best_cycle 26.42kWh, best_import 34.34kWh 2026-08-14 15:58:04.881081: >> Region optimisation pass width 240 gives best_metric 1438.83p, best_cost 1446.6p, best_cycle 26.42kWh, best_import 34.34kWh 2026-08-14 15:58:06.096705: >> Region optimisation pass width 120 gives best_metric 1438.83p, best_cost 1446.6p, best_cycle 26.42kWh, best_import 34.34kWh 2026-08-14 15:58:06.097080: Calculated end_record as 08-16 12:30:00 based on best_price 15.78p, next_charge_start 08-15 12:30:00, max_windows 89 2026-08-14 15:58:06.097197: Optimise levels pass ended at 2026-08-14 15:58:06, duration 3.8 seconds tried 324 combinations 2026-08-14 15:58:06.097271: Set best_price_charge_level 17.0p, best_price_export_level 0p, best_price_charge 15.78p, best_cost_export 0p, best_metric 1438.83p, best_keep 0kWh, best_cycle 26.42kWh, best_carbon 0kg, best_import 34.34kWh 2026-08-14 15:58:06.114641: Starting detailed optimisation end_record 08-16 12:30:00, best_price_charge 15.78p, best_price_export 0p. lowest_price_charge 14.97p with charge limits [0.0, 0, 0.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.75, 13.75, 13.75, 13.75, 13.75, 13.75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 15:58:12.639395: Tweak plan optimisation started metric 1404.58p, cost 1413.66p 2026-08-14 15:58:12.875653: Tweak optimisation finished metric 1404.58p, cost 1413.66p, metric_keep 0kWh, cycle 25.93kWh, carbon 0kg, import 32.23kWh, changed 8 window(s) 2026-08-14 15:58:12.896597: Swap charge optimisation started metric 1404.58p, cost 1413.66p, min_improvement_swap 0.1p 2026-08-14 15:58:18.811656: Swap charge optimisation finished metric 1404.58p, cost 1413.66p 2026-08-14 15:58:18.898844: Raw charge windows [ 14-08 15:30:00 - 14-08 16:00:00 @ 22.02p 0%, 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 30.04p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.17p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.59p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.99p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.24p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.49p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 26.24p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 26.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.71p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 25.43p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 25.52p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 25.64p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 25.68p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 25.71p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.27p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 24.83p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 24.07p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 23.34p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.78p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.22p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 21.81p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 21.43p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 20.21p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 18.99p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 17.81p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 16.62p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 16.19p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.4p 86%, 15-08 14:00:00 - 15-08 14:30:00 @ 15.19p 86%, 15-08 14:30:00 - 15-08 15:00:00 @ 14.97p 86%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.69p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 16.42p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 32.68p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 35.29p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 37.76p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.25p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 42.05p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.85p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 30.76p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 31.3p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.3p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 31.3p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.3p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.3p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 30.26p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.23p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 30.04p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.17p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.59p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.99p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.24p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.49p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 26.24p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 26.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.71p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 25.43p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 25.52p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 25.64p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 25.68p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 25.71p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.27p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 24.83p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 24.07p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 23.34p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.78p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.22p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 21.81p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 21.43p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 20.21p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 18.99p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 17.81p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 16.62p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 16.19p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 15.78p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.59p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.4p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 15.19p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 14.97p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.69p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 16.42p 100% ] reserve 1.12 2026-08-14 15:58:18.899425: Unclipped charge windows [ 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 15:00:00 @ 15.13p 86%, 15-08 15:00:00 - 15-08 16:00:00 @ 16.05p 84%, 16-08 12:30:00 - 16-08 16:00:00 @ 15.93p 100% ] reserve 1.12 2026-08-14 15:58:18.899727: Unfiltered charge windows [ 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 13%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.59p 100%, 15-08 13:30:00 - 15-08 15:00:00 @ 15.13p 100%, 15-08 15:00:00 - 15-08 16:00:00 @ 16.05p 84%, 16-08 12:30:00 - 16-08 16:00:00 @ 15.93p 100% ] reserve 1.12 2026-08-14 15:58:18.899928: Filtered charge windows [ 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 13%, 15-08 13:00:00 - 15-08 15:00:00 @ 15.36p 100%, 15-08 15:00:00 - 15-08 16:00:00 @ 16.05p 84%, 16-08 12:30:00 - 16-08 16:00:00 @ 15.93p 100% ] reserve 1.12 2026-08-14 15:58:18.937659: Previous plan best metric is 1611.97 (cost 1776.77) and new plan best metric is 1404.58 (cost 1413.66) 2026-08-14 15:58:18.938300: New plan metric is significantly better from previous plan, using new plan 2026-08-14 15:58:18.938380: Plan valid is now true after recompute was False 2026-08-14 15:58:18.965827: predict base end_record 08-16 12:30:00, final soc 0.0kWh, metric 1615.74p, metric_keep 0kWh, min_soc 0.0kWh @ 08-14 15:55:00, load 44.56kWh, PV 0.0kWh 2026-08-14 15:58:19.120980: Battery has 0.0 hours left - now at 0.0kWh 2026-08-14 15:58:19.168074: predict base10 end_record 08-16 12:30:00, final soc 0.0kWh, metric 1654.46p, metric_keep 0kWh, min_soc 0.0kWh @ 08-14 15:55:00, load 45.95kWh, PV 0.0kWh 2026-08-14 15:58:19.259915: predict best10 end_record 08-16 12:30:00, final soc 1.12kWh, metric 1549.14p, metric_keep 0kWh, min_soc 0.0kWh @ 08-14 15:55:00, load 45.95kWh, PV 0.0kWh 2026-08-14 15:58:19.375773: predict best end_record 08-16 12:30:00, final soc 1.12kWh, metric 1513.63p, metric_keep 0kWh, min_soc 0.0kWh @ 08-14 15:55:00, load 44.56kWh, PV 0.0kWh 2026-08-14 15:58:19.375876: Saving plan best values to HA entities 2026-08-14 15:58:19.583892: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 15:58:19.590518: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 15:58:19.597936: Best charging limit SoC's [2.0, 16.0, 13.5, 16.0]kWh, export []kWh gives import battery 16.63kWh, house 15.6kWh, export 0.0kWh, metric 1513.63p, metric10 1549.14p 2026-08-14 15:58:19.707361: Marginal costs baseline metric (no standing charge): 1413.6586 2026-08-14 15:58:19.992762: Marginal energy costs matrix computed: min=25.56 max=51.52 2026-08-14 15:58:20.099249: Rate array import [{'start': 955, 'end': 960, 'rate': 'cheap', 'range': '(22.0p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1500, 'rate': 'expensive', 'range': '(28.0p - 40.4p)'}, {'start': 1500, 'end': 2400, 'rate': 'cheap', 'range': '(15.0p - 27.2p)'}, {'start': 2400, 'end': 2520, 'rate': 'expensive', 'range': '(32.7p - 40.2p)'}, {'start': 2520, 'end': 2580, 'rate': 'very expensive', 'range': '(42.0p - 43.9p)'}, {'start': 2580, 'end': 2940, 'rate': 'expensive', 'range': '(28.0p - 31.3p)'}, {'start': 2940, 'end': 3630, 'rate': 'cheap', 'range': '(16.2p - 27.2p)'}] export [{'start': 955, 'end': 3630, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 15:58:20.100155: - Your estimated bill for today is £9.57 and tomorrow is £4.87 2026-08-14 15:58:20.100216: - Import rates are cheap (22.0p) for the next 5 minutes and then expensive (36.9p - 37.1p) for the next 1 hour. 2026-08-14 15:58:20.100242: - The battery is currently at 0% and is in eco mode for the next 20 hours. 2026-08-14 15:58:20.100261: - For the next 48 hours there will be no solar generation. 2026-08-14 15:58:20.100279: - Your next charge slot will be in 20 hours where import rates will be cheap (15.8p). 2026-08-14 15:58:20.100296: 2026-08-14 15:58:20.168215: Plan calculation took 18.56 seconds 2026-08-14 15:58:20.173967: Saved plan to storage 2026-08-14 15:58:20.178378: No high rate period found 2026-08-14 15:58:20.248218: Import threshold used for optimisation was 16.42p 2026-08-14 15:58:20.316293: Low import rate windows [0: 08-14 15:30:00 - 08-14 16:00:00 @ 22.02, 1: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 2: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 3: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 4: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 5: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 6: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 7: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 8: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 9: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 10: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 11: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 12: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 13: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 14: 08-14 23:00:00 - 08-14 23:30:00 @ 30.04, 15: 08-14 23:30:00 - 08-15 00:00:00 @ 29.17, 16: 08-15 00:00:00 - 08-15 00:30:00 @ 28.59, 17: 08-15 00:30:00 - 08-15 01:00:00 @ 27.99, 18: 08-15 01:00:00 - 08-15 01:30:00 @ 27.24, 19: 08-15 01:30:00 - 08-15 02:00:00 @ 26.49, 20: 08-15 02:00:00 - 08-15 02:30:00 @ 26.24, 21: 08-15 02:30:00 - 08-15 03:00:00 @ 26.0, 22: 08-15 03:00:00 - 08-15 03:30:00 @ 25.71, 23: 08-15 03:30:00 - 08-15 04:00:00 @ 25.43, 24: 08-15 04:00:00 - 08-15 04:30:00 @ 25.52, 25: 08-15 04:30:00 - 08-15 05:00:00 @ 25.64, 26: 08-15 05:00:00 - 08-15 05:30:00 @ 25.68, 27: 08-15 05:30:00 - 08-15 06:00:00 @ 25.71, 28: 08-15 06:00:00 - 08-15 06:30:00 @ 25.27, 29: 08-15 06:30:00 - 08-15 07:00:00 @ 24.83, 30: 08-15 07:00:00 - 08-15 07:30:00 @ 24.07, 31: 08-15 07:30:00 - 08-15 08:00:00 @ 23.34, 32: 08-15 08:00:00 - 08-15 08:30:00 @ 22.78, 33: 08-15 08:30:00 - 08-15 09:00:00 @ 22.22, 34: 08-15 09:00:00 - 08-15 09:30:00 @ 21.81, 35: 08-15 09:30:00 - 08-15 10:00:00 @ 21.43, 36: 08-15 10:00:00 - 08-15 10:30:00 @ 20.21, 37: 08-15 10:30:00 - 08-15 11:00:00 @ 18.99, 38: 08-15 11:00:00 - 08-15 11:30:00 @ 17.81, 39: 08-15 11:30:00 - 08-15 12:00:00 @ 16.62, 40: 08-15 12:00:00 - 08-15 12:30:00 @ 16.19, 41: 08-15 12:30:00 - 08-15 13:00:00 @ 15.78, 42: 08-15 13:00:00 - 08-15 13:30:00 @ 15.59, 43: 08-15 13:30:00 - 08-15 14:00:00 @ 15.4, 44: 08-15 14:00:00 - 08-15 14:30:00 @ 15.19, 45: 08-15 14:30:00 - 08-15 15:00:00 @ 14.97, 46: 08-15 15:00:00 - 08-15 15:30:00 @ 15.69, 47: 08-15 15:30:00 - 08-15 16:00:00 @ 16.42, 48: 08-15 16:00:00 - 08-15 16:30:00 @ 32.68, 49: 08-15 16:30:00 - 08-15 17:00:00 @ 35.29, 50: 08-15 17:00:00 - 08-15 17:30:00 @ 37.76, 51: 08-15 17:30:00 - 08-15 18:00:00 @ 40.25, 52: 08-15 18:00:00 - 08-15 18:30:00 @ 42.05, 53: 08-15 18:30:00 - 08-15 19:00:00 @ 43.85, 54: 08-15 19:00:00 - 08-15 19:30:00 @ 30.76, 55: 08-15 19:30:00 - 08-15 20:00:00 @ 31.3, 56: 08-15 20:00:00 - 08-15 20:30:00 @ 31.3, 57: 08-15 20:30:00 - 08-15 21:00:00 @ 31.3, 58: 08-15 21:00:00 - 08-15 21:30:00 @ 31.3, 59: 08-15 21:30:00 - 08-15 22:00:00 @ 31.3, 60: 08-15 22:00:00 - 08-15 22:30:00 @ 30.26, 61: 08-15 22:30:00 - 08-15 23:00:00 @ 29.23, 62: 08-15 23:00:00 - 08-15 23:30:00 @ 30.04, 63: 08-15 23:30:00 - 08-16 00:00:00 @ 29.17, 64: 08-16 00:00:00 - 08-16 00:30:00 @ 28.59, 65: 08-16 00:30:00 - 08-16 01:00:00 @ 27.99, 66: 08-16 01:00:00 - 08-16 01:30:00 @ 27.24, 67: 08-16 01:30:00 - 08-16 02:00:00 @ 26.49, 68: 08-16 02:00:00 - 08-16 02:30:00 @ 26.24, 69: 08-16 02:30:00 - 08-16 03:00:00 @ 26.0, 70: 08-16 03:00:00 - 08-16 03:30:00 @ 25.71, 71: 08-16 03:30:00 - 08-16 04:00:00 @ 25.43, 72: 08-16 04:00:00 - 08-16 04:30:00 @ 25.52, 73: 08-16 04:30:00 - 08-16 05:00:00 @ 25.64, 74: 08-16 05:00:00 - 08-16 05:30:00 @ 25.68, 75: 08-16 05:30:00 - 08-16 06:00:00 @ 25.71, 76: 08-16 06:00:00 - 08-16 06:30:00 @ 25.27, 77: 08-16 06:30:00 - 08-16 07:00:00 @ 24.83, 78: 08-16 07:00:00 - 08-16 07:30:00 @ 24.07, 79: 08-16 07:30:00 - 08-16 08:00:00 @ 23.34, 80: 08-16 08:00:00 - 08-16 08:30:00 @ 22.78, 81: 08-16 08:30:00 - 08-16 09:00:00 @ 22.22, 82: 08-16 09:00:00 - 08-16 09:30:00 @ 21.81, 83: 08-16 09:30:00 - 08-16 10:00:00 @ 21.43, 84: 08-16 10:00:00 - 08-16 10:30:00 @ 20.21, 85: 08-16 10:30:00 - 08-16 11:00:00 @ 18.99, 86: 08-16 11:00:00 - 08-16 11:30:00 @ 17.81, 87: 08-16 11:30:00 - 08-16 12:00:00 @ 16.62, 88: 08-16 12:00:00 - 08-16 12:30:00 @ 16.19, 89: 08-16 12:30:00 - 08-16 13:00:00 @ 15.78, 90: 08-16 13:00:00 - 08-16 13:30:00 @ 15.59, 91: 08-16 13:30:00 - 08-16 14:00:00 @ 15.4, 92: 08-16 14:00:00 - 08-16 14:30:00 @ 15.19, 93: 08-16 14:30:00 - 08-16 15:00:00 @ 14.97, 94: 08-16 15:00:00 - 08-16 15:30:00 @ 15.69, 95: 08-16 15:30:00 - 08-16 16:00:00 @ 16.42] 2026-08-14 15:58:20.326672: Inverter 0: Type SK Sunsynk 2026-08-14 15:58:20.326782: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 15:58:20.327745: Reserve min: 7%, battery_min: 7% 2026-08-14 15:58:20.327880: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 15:58:20.328198: Warn: Return bad float value unknown from soc_percent using default 0.0 2026-08-14 15:58:20.336184: Warn: record_status Warn: Return bad float value unknown from soc_percent 2026-08-14 15:58:20.336425: Inverter 0 SoC: 0.0kW 0%, current charge rate 5000W, current discharge rate 5250W, current battery power -4552W, current battery voltage 51.2V, grid power -5499W, load power 501W, PV Power 0W 2026-08-14 15:58:20.336696: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 15:58:20.336822: Inverter 0 scheduled charge enable is False 2026-08-14 15:58:20.336860: Inverter 0 charge windows currently [] 2026-08-14 15:58:20.336894: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 15:58:20.337052: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:58:20.337098: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:58:20.337145: Inverter 0 scheduled discharge enable is False 2026-08-14 15:58:20.337283: Inverter 0 idle time is 08-15 00:00:00-08-15 00:00:00 2026-08-14 15:58:20.337324: Inverter 0 discharge windows currently [] 2026-08-14 15:58:20.337355: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:58:20.337383: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:58:20.337403: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 15:58:20.402096: Inverter 0 Charge window will be: 2026-08-15 12:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 0%, target 13% 2026-08-14 15:58:20.402268: Inverter 0 disabled charge window while waiting for schedule (now 08-14 15:55:00 target set_window_minutes 30 charge start time 08-15 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 15:58:20.402345: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:58:20.402568: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 15:58:20.402662: Inverter 0 set new demand (idle) start time to 15:55:00 was 00:00:00 2026-08-14 15:58:25.409990: Inverter 0 write_and_poll_value: Wrote 15:55:00 to idle_start_time, successfully now 15:55:00 2026-08-14 15:58:25.410150: Inverter 0 set new demand (idle) end time to 23:59:00 was 00:00:00 2026-08-14 15:58:30.418601: Inverter 0 write_and_poll_value: Wrote 23:59:00 to idle_end_time, successfully now 23:59:00 2026-08-14 15:58:30.418821: No export window planned 2026-08-14 15:58:30.419045: Inverter 0 Adjust force export to False, change times from 23:59:00 - 23:59:00 to 00:00:00 - 00:00:00 2026-08-14 15:58:30.419118: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 15:58:30.419422: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 15:58:30.419529: Inverter 0 set new export start time to 00:00:00 2026-08-14 15:58:35.428987: Inverter 0 write_and_poll_value: Wrote 00:00:00 to discharge_start_time, successfully now 00:00:00 2026-08-14 15:58:35.429154: Inverter 0 Set new export end time to 00:00:00 was 23:59:00 2026-08-14 15:58:40.438769: Inverter 0 write_and_poll_value: Wrote 00:00:00 to discharge_end_time, successfully now 00:00:00 2026-08-14 15:58:40.439104: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 15:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 15:58:40.439181: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 15:58:40.439250: Inverter 0 Current charge limit is 100% and new target is 7% 2026-08-14 15:58:45.542482: Inverter 0 write_and_poll_value: Wrote 7 to charge_limit, successfully now 7.0 2026-08-14 15:58:45.542764: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog1_charge', 'option': 'Allow Gen'} 2026-08-14 15:58:45.624303: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog2_charge', 'option': 'Allow Gen'} 2026-08-14 15:58:45.730332: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog3_charge', 'option': 'Allow Gen'} 2026-08-14 15:58:45.834642: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog4_charge', 'option': 'Allow Gen'} 2026-08-14 15:58:45.889726: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog5_charge', 'option': 'Allow Gen'} 2026-08-14 15:58:45.998269: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog6_charge', 'option': 'Allow Gen'} 2026-08-14 15:58:46.102908: Inverter 0 Calling service charge_stop_service domain charge service_name select/select_option with data {'entity_id': 'select.sunsynk_load_limit', 'option': 'Zero Export'} 2026-08-14 15:58:46.209192: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog1_charge', 'option': 'Allow Gen'} 2026-08-14 15:58:46.313600: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog2_charge', 'option': 'Allow Gen'} 2026-08-14 15:58:46.406096: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog3_charge', 'option': 'Allow Gen'} 2026-08-14 15:58:46.445602: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog4_charge', 'option': 'Allow Gen'} 2026-08-14 15:58:46.549462: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog5_charge', 'option': 'Allow Gen'} 2026-08-14 15:58:46.653185: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_prog6_charge', 'option': 'Allow Gen'} 2026-08-14 15:58:46.757071: Inverter 0 Calling service charge_stop_service domain discharge service_name select/select_option with data {'entity_id': 'select.sunsynk_load_limit', 'option': 'Zero Export'} 2026-08-14 15:58:46.805280: Inverter 0 count register writes 1 2026-08-14 15:58:46.895256: Total inverter register writes now 815 2026-08-14 15:58:47.099548: Error: Completed run status Demand with Errors reported (check log) 2026-08-14 15:58:47.106919: Saved current settings to /config/predbat_config.json 2026-08-14 15:58:47.107448: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 15:58:47.172302: Creating predbat dashboard at /config/predbat_dashboard.yaml 2026-08-14 15:59:27.228112: Warn: Return bad float value unknown from soc_percent using default 0.0 2026-08-14 15:59:27.241585: Warn: record_status Warn: Return bad float value unknown from soc_percent 2026-08-14 15:59:27.241928: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 15:59:27.242110: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 15:59:27.242152: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 15:59:27.242288: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 15:59:27.242328: Note: Inverter does not support discharge freeze - disabled 2026-08-14 15:59:27.242349: Note: Inverter does not support charge freeze - disabled 2026-08-14 15:59:27.242367: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:00:00.359945: --------------- PredBat - update at 2026-08-14 16:00:00+01:00 with clock skew 0 minutes, minutes now 960 2026-08-14 16:00:00.360739: Saved current settings to /config/predbat_config.json 2026-08-14 16:00:00.360883: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 15.0 minutes 2026-08-14 16:00:00.361043: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 16:00:00.361169: Autoupdate: Currently up to date 2026-08-14 16:00:00.385016: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 16:00:00.385166: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 16:00:00.385392: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 16:00:00.386426: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 16:00:00.386711: Predbat mode is set to Control charge & discharge 2026-08-14 16:00:00.623121: Found 21602 load_today datapoints going back 28 days 2026-08-14 16:00:00.623287: Using load_power data to fill gaps in load_today data 2026-08-14 16:00:01.119796: Processing 721 30-minute periods for power integration 2026-08-14 16:00:01.300813: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 16:00:01.301562: Car charging hold False, threshold 6.0kWh 2026-08-14 16:00:01.301686: Current data so far today: load 15.32kWh, import 28.2kWh, export 0.0kWh, PV 0kWh 2026-08-14 16:00:01.330956: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 16:00:01.331746: Standing charge is set to 49.98p 2026-08-14 16:00:01.398685: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 16:00:01.398819: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 16:00:01.399069: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 325.0 minutes 2026-08-14 16:00:01.399538: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 325.0 minutes 2026-08-14 16:00:01.406280: Loaded 95 datapoints of futurerate analysis 2026-08-14 16:00:01.580702: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35'] 2026-08-14 16:00:01.629060: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 16:00:01.629359: Import rates: min 13.77p, max 53.39p, average 26.78p 2026-08-14 16:00:01.665432: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 16:00:01.665563: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 16:00:01.666558: High export rate found rates in range 99p to -99p 2026-08-14 16:00:01.751235: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 16:00:01.751637: Car 0 charging is not planned as it is not plugged in 2026-08-14 16:00:01.766758: Battery level now 0.0kWh, -1hr ago 10.21kWh, at midnight 2.43kWh, battery value change in the last hour -120.72p, change today -28.76p, rate_forward 11.83p 2026-08-14 16:00:01.767268: Last hour: net energy 2.75kWh, import 2.75kWh, export 0.0kWh, car 0kWh, load 0.72kWh, net cost 60.68p, import 60.68p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 16:00:01.836639: Today's energy total net 28.2kWh, import 28.2kWh, export 0.0kWh, cost 703.57p, import 653.58p, export 0.0p, carbon 0.0kg 2026-08-14 16:00:01.836806: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 16:00:01.915326: Using weighted-bucket historical load forecast over 14 days 2026-08-14 16:00:01.939834: Today's load divergence 129.48%, in-day adjustment 134.28%, damping 0.95x, yesterday 146.81% today 128.01% blend 33.33% 2026-08-14 16:00:01.939933: Today's predicted so far 9.39kWh with 0.0kWh car/iBoost excluded, 16.9kWh import ignored, and 9.39kWh forecast extra. 2026-08-14 16:00:01.939976: Today's actual load so far 15.38kWh with 0.0kWh car/iBoost excluded, and 16.9kWh import ignored. 2026-08-14 16:00:01.982395: Inverter 0: Type SK Sunsynk 2026-08-14 16:00:01.982508: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 16:00:01.983448: Reserve min: 7%, battery_min: 7% 2026-08-14 16:00:01.983564: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 16:00:01.983971: Inverter 0 SoC: 12.04kW 75%, current charge rate 5000W, current discharge rate 5250W, current battery power 486W, current battery voltage 51.2V, grid power -54W, load power 540W, PV Power 0W 2026-08-14 16:00:01.984184: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:00:01.984306: Inverter 0 scheduled charge enable is False 2026-08-14 16:00:01.984346: Inverter 0 charge windows currently [] 2026-08-14 16:00:01.984388: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 16:00:01.984549: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:00:01.984596: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:00:01.984667: Inverter 0 scheduled discharge enable is False 2026-08-14 16:00:01.984850: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:00:01.984900: Inverter 0 discharge windows currently [] 2026-08-14 16:00:01.984933: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:00:01.985007: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:00:01.985038: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:00:02.072422: Dynamic load last period 0.22kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 16:00:02.072568: Plan was last updated on 2026-08-14 15:55:00+01:00 and is now 5.0 minutes old 2026-08-14 16:00:02.072833: Best charge window [ 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 13%, 15-08 13:00:00 - 15-08 15:00:00 @ 15.36p 100%, 15-08 15:00:00 - 15-08 16:00:00 @ 16.05p 84%, 16-08 12:30:00 - 16-08 16:00:00 @ 15.93p 100% ] 2026-08-14 16:00:02.072881: Best export window [ ] 2026-08-14 16:00:02.073798: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 16:00:02.077149: Load divergence over 8.0 hours mean 412.51W, min 279.0W, max 1138.2W, std dev 155.41W, divergence 18.84% 2026-08-14 16:00:02.096834: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 16:00:02.097008: LoadML is_calculating False 2026-08-14 16:00:02.097088: Creating pool of 12 processes to match your CPU count 2026-08-14 16:00:02.199788: predict base end_record 08-16 12:35:00, final soc 1.12kWh, metric 1272.08p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:05:00, load 44.55kWh, PV 0.0kWh 2026-08-14 16:00:02.350303: Battery has 13.08 hours left - now at 12.04kWh 2026-08-14 16:00:02.404927: predict base10 end_record 08-16 12:35:00, final soc 1.12kWh, metric 1307.22p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:20:00, load 45.94kWh, PV 0.0kWh 2026-08-14 16:00:02.504197: predict best10 end_record 08-16 12:35:00, final soc 1.44kWh, metric 1180.18p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:20:00, load 45.94kWh, PV 0.0kWh 2026-08-14 16:00:02.585518: predict best end_record 08-16 12:35:00, final soc 1.51kWh, metric 1150.41p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:05:00, load 44.55kWh, PV 0.0kWh 2026-08-14 16:00:02.585623: Saving plan best values to HA entities 2026-08-14 16:00:02.771043: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 16:00:02.777428: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 16:00:02.784185: Best charging limit SoC's [2.0, 16.0, 13.5, 16.0]kWh, export []kWh gives import battery 15.9kWh, house 5.34kWh, export 0.0kWh, metric 1150.41p, metric10 1180.18p 2026-08-14 16:00:02.872203: Marginal costs baseline metric (no standing charge): 1050.4422 2026-08-14 16:00:03.171647: Marginal energy costs matrix computed: min=25.2 max=39.42 2026-08-14 16:00:03.282132: Rate array import [{'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3635, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 960, 'end': 3635, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 16:00:03.283262: - Your estimated bill for today is £7.04 and tomorrow is £3.71 2026-08-14 16:00:03.283325: - Import rates are expensive (36.9p - 37.1p) for the next 1 hour and then very expensive (43.9p - 53.4p) for the next 2 hours. 2026-08-14 16:00:03.283351: - The battery is currently at 75% and is in eco mode for the next 20 hours. 2026-08-14 16:00:03.283370: - For the next 48 hours there will be no solar generation. 2026-08-14 16:00:03.283387: - You will run out of battery in 13 hours. 2026-08-14 16:00:03.283404: - Your next charge slot will be in 20 hours where import rates will be cheap (16.3p). 2026-08-14 16:00:03.283422: 2026-08-14 16:00:03.362528: Plan calculation took 1.29 seconds 2026-08-14 16:00:03.367216: No high rate period found 2026-08-14 16:00:03.426136: Import threshold used for optimisation was 16.42p 2026-08-14 16:00:03.491002: Low import rate windows [0: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 1: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 2: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 3: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 4: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 5: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 6: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 7: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 8: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 9: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 10: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 11: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 12: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 13: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 14: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 15: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 16: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 17: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 18: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 19: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 20: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 21: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 22: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 23: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 24: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 25: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 26: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 27: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 28: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 29: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 30: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 31: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 32: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 33: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 34: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 35: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 36: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 37: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 38: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 39: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 40: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 41: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 42: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 43: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 44: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 45: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 46: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 47: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 48: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 49: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 50: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 51: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 52: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 53: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 54: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 55: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 56: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 57: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 58: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 59: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 60: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 61: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 62: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 63: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 64: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 65: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 66: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 67: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 68: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 69: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 70: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 71: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 72: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 73: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 74: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 75: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 76: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 77: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 78: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 79: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 80: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 81: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 82: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 83: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 84: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 85: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 86: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 87: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 88: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 89: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 90: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 91: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 92: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 93: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 94: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87] 2026-08-14 16:00:03.500070: Inverter 0 Charge window will be: 2026-08-15 12:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 75%, target 13% 2026-08-14 16:00:03.500208: Inverter 0 disabled charge window while waiting for schedule (now 08-14 16:00:00 target set_window_minutes 30 charge start time 08-15 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 16:00:03.500305: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:00:03.500533: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:00:03.500626: No export window planned 2026-08-14 16:00:03.500743: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 16:00:03.500776: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:00:03.500911: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:00:03.501138: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 16:00:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 16:00:03.501205: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 16:00:03.501287: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 16:00:03.501421: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:00:03.501481: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:00:03.501535: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:00:03.501588: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:00:03.501646: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:00:03.501676: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:00:03.501702: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:00:03.501786: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:00:03.501830: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:00:03.501869: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:00:03.501894: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:00:03.501927: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:00:03.501974: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:00:03.501999: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:00:03.502022: Inverter 0 count register writes 0 2026-08-14 16:00:03.520569: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 16:00:03.527073: Total inverter register writes now 815 2026-08-14 16:00:03.567333: Info: Completed run status Demand 2026-08-14 16:00:03.893865: Info: record_status Demand 2026-08-14 16:00:03.902311: Saved current settings to /config/predbat_config.json 2026-08-14 16:00:03.902793: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 16:00:11.978847: Validation of apps.yaml was successful 2026-08-14 16:00:11.978958: Info: Config validation retry succeeded, previous errors have now cleared 2026-08-14 16:00:42.026657: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:00:42.026900: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:00:42.026948: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:00:42.027085: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:00:42.027129: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:00:42.027151: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:00:42.027169: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:02:42.252320: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:02:42.252582: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:02:42.252642: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:02:42.252788: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:02:42.252852: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:02:42.252876: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:02:42.252894: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:04:42.482361: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:04:42.482656: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:04:42.482695: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:04:42.482887: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:04:42.482935: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:04:42.482958: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:04:42.482976: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:05:00.582464: --------------- PredBat - update at 2026-08-14 16:05:00+01:00 with clock skew 0 minutes, minutes now 965 2026-08-14 16:05:00.583436: Saved current settings to /config/predbat_config.json 2026-08-14 16:05:00.583631: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 20.0 minutes 2026-08-14 16:05:00.583753: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 16:05:00.583853: Autoupdate: Currently up to date 2026-08-14 16:05:00.603977: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 16:05:00.604132: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 16:05:00.604380: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 16:05:00.605289: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 16:05:00.605440: Predbat mode is set to Control charge & discharge 2026-08-14 16:05:00.851547: Found 21602 load_today datapoints going back 28 days 2026-08-14 16:05:00.851730: Using load_power data to fill gaps in load_today data 2026-08-14 16:05:01.329801: Processing 721 30-minute periods for power integration 2026-08-14 16:05:01.522489: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 16:05:01.522652: Car charging hold False, threshold 6.0kWh 2026-08-14 16:05:01.522702: Current data so far today: load 15.31kWh, import 28.2kWh, export 0.0kWh, PV 0kWh 2026-08-14 16:05:01.544783: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 16:05:01.545404: Standing charge is set to 49.98p 2026-08-14 16:05:01.596068: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 16:05:01.596239: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 16:05:01.596505: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 330.0 minutes 2026-08-14 16:05:01.597091: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 330.0 minutes 2026-08-14 16:05:01.604730: Loaded 95 datapoints of futurerate analysis 2026-08-14 16:05:01.776075: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35'] 2026-08-14 16:05:01.822397: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 16:05:01.822783: Import rates: min 13.77p, max 53.39p, average 26.77p 2026-08-14 16:05:01.865030: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 16:05:01.865168: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 16:05:01.866405: High export rate found rates in range 99p to -99p 2026-08-14 16:05:01.965012: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 16:05:01.965154: Car 0 charging is not planned as it is not plugged in 2026-08-14 16:05:01.978504: Battery level now 12.04kWh, -1hr ago 10.21kWh, at midnight 2.43kWh, battery value change in the last hour 21.7p, change today 113.66p, rate_forward 11.83p 2026-08-14 16:05:01.978905: Last hour: net energy 2.4kWh, import 2.4kWh, export 0.0kWh, car 0kWh, load 0.61kWh, net cost 52.9p, import 52.9p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 16:05:02.065618: Today's energy total net 28.2kWh, import 28.2kWh, export 0.0kWh, cost 703.57p, import 653.58p, export 0.0p, carbon 0.0kg 2026-08-14 16:05:02.065828: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 16:05:02.220978: Using weighted-bucket historical load forecast over 14 days 2026-08-14 16:05:02.254007: Today's load divergence 129.53%, in-day adjustment 134.24%, damping 0.95x, yesterday 146.81% today 128.06% blend 32.99% 2026-08-14 16:05:02.254117: Today's predicted so far 9.47kWh with 0.0kWh car/iBoost excluded, 16.86kWh import ignored, and 9.47kWh forecast extra. 2026-08-14 16:05:02.254151: Today's actual load so far 15.47kWh with 0.0kWh car/iBoost excluded, and 16.86kWh import ignored. 2026-08-14 16:05:02.294852: Inverter 0: Type SK Sunsynk 2026-08-14 16:05:02.294962: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 16:05:02.295747: Reserve min: 7%, battery_min: 7% 2026-08-14 16:05:02.295875: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 16:05:02.296235: Inverter 0 SoC: 12.04kW 75%, current charge rate 5000W, current discharge rate 5250W, current battery power 484W, current battery voltage 51.2V, grid power -52W, load power 541W, PV Power 0W 2026-08-14 16:05:02.296433: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:05:02.296549: Inverter 0 scheduled charge enable is False 2026-08-14 16:05:02.296612: Inverter 0 charge windows currently [] 2026-08-14 16:05:02.296655: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 16:05:02.296847: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:05:02.296890: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:05:02.296941: Inverter 0 scheduled discharge enable is False 2026-08-14 16:05:02.297159: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:05:02.297203: Inverter 0 discharge windows currently [] 2026-08-14 16:05:02.297226: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:05:02.297246: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:05:02.297280: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:05:02.365221: Dynamic load last period 0.10kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 16:05:02.365342: Plan was last updated on 2026-08-14 15:55:00+01:00 and is now 10.0 minutes old 2026-08-14 16:05:02.365660: Best charge window [ 15-08 12:30:00 - 15-08 13:00:00 @ 15.78p 13%, 15-08 13:00:00 - 15-08 15:00:00 @ 15.36p 100%, 15-08 15:00:00 - 15-08 16:00:00 @ 16.05p 84%, 16-08 12:30:00 - 16-08 16:00:00 @ 15.93p 100% ] 2026-08-14 16:05:02.365712: Best export window [ ] 2026-08-14 16:05:02.366555: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 16:05:02.369836: Load divergence over 8.0 hours mean 409.53W, min 267.0W, max 1243.8W, std dev 173.26W, divergence 21.15% 2026-08-14 16:05:02.388639: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 16:05:02.388808: LoadML is_calculating False 2026-08-14 16:05:02.388890: Creating pool of 12 processes to match your CPU count 2026-08-14 16:05:02.505764: predict base end_record 08-16 12:40:00, final soc 1.12kWh, metric 1270.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:15:00, load 44.52kWh, PV 0.0kWh 2026-08-14 16:05:02.645359: Battery has 13.17 hours left - now at 12.04kWh 2026-08-14 16:05:02.700811: predict base10 end_record 08-16 12:40:00, final soc 1.12kWh, metric 1305.99p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:30:00, load 45.92kWh, PV 0.0kWh 2026-08-14 16:05:02.787147: predict best10 end_record 08-16 12:40:00, final soc 1.77kWh, metric 1184.73p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:30:00, load 45.92kWh, PV 0.0kWh 2026-08-14 16:05:02.886894: predict best end_record 08-16 12:40:00, final soc 1.9kWh, metric 1156.19p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:15:00, load 44.52kWh, PV 0.0kWh 2026-08-14 16:05:02.886988: Saving plan best values to HA entities 2026-08-14 16:05:03.077546: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 16:05:03.083900: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 16:05:03.089831: Best charging limit SoC's [2.0, 16.0, 13.5, 16.0]kWh, export []kWh gives import battery 16.38kWh, house 5.26kWh, export 0.0kWh, metric 1156.19p, metric10 1184.73p 2026-08-14 16:05:03.173109: Marginal costs baseline metric (no standing charge): 1056.2237 2026-08-14 16:05:03.456107: Marginal energy costs matrix computed: min=25.17 max=38.94 2026-08-14 16:05:03.542774: Rate array import [{'start': 965, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3640, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 965, 'end': 3640, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 16:05:03.543549: - Your estimated bill for today is £7.04 and tomorrow is £3.69 2026-08-14 16:05:03.543613: - Import rates are expensive (36.9p - 37.1p) for the next 55 minutes and then very expensive (43.9p - 53.4p) for the next 2 hours. 2026-08-14 16:05:03.543636: - The battery is currently at 75% and is in eco mode for the next 20 hours. 2026-08-14 16:05:03.543652: - For the next 48 hours there will be no solar generation. 2026-08-14 16:05:03.543666: - You will run out of battery in 13 hours. 2026-08-14 16:05:03.543680: - Your next charge slot will be in 20 hours where import rates will be cheap (16.3p). 2026-08-14 16:05:03.543694: 2026-08-14 16:05:03.609977: Plan calculation took 1.24 seconds 2026-08-14 16:05:03.613841: No high rate period found 2026-08-14 16:05:03.670842: Import threshold used for optimisation was 16.42p 2026-08-14 16:05:03.728672: Low import rate windows [0: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 1: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 2: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 3: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 4: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 5: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 6: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 7: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 8: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 9: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 10: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 11: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 12: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 13: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 14: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 15: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 16: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 17: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 18: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 19: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 20: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 21: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 22: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 23: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 24: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 25: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 26: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 27: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 28: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 29: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 30: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 31: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 32: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 33: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 34: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 35: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 36: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 37: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 38: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 39: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 40: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 41: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 42: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 43: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 44: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 45: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 46: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 47: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 48: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 49: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 50: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 51: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 52: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 53: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 54: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 55: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 56: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 57: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 58: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 59: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 60: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 61: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 62: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 63: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 64: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 65: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 66: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 67: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 68: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 69: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 70: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 71: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 72: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 73: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 74: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 75: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 76: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 77: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 78: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 79: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 80: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 81: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 82: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 83: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 84: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 85: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 86: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 87: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 88: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 89: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 90: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 91: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 92: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 93: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 94: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 95: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13] 2026-08-14 16:05:03.737169: Inverter 0 Charge window will be: 2026-08-15 12:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 75%, target 13% 2026-08-14 16:05:03.737297: Inverter 0 disabled charge window while waiting for schedule (now 08-14 16:05:00 target set_window_minutes 30 charge start time 08-15 12:30:00) original inverter start time 08-16 00:00:00 2026-08-14 16:05:03.737402: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:05:03.737643: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:05:03.737726: No export window planned 2026-08-14 16:05:03.737823: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 16:05:03.737846: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:05:03.737954: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:05:03.738159: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 16:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 16:05:03.738233: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 16:05:03.738299: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 16:05:03.738378: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:05:03.738405: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:05:03.738427: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:05:03.738447: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:05:03.738476: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:05:03.738521: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:05:03.738544: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:05:03.738612: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:05:03.738639: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:05:03.738659: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:05:03.738678: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:05:03.738699: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:05:03.738718: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:05:03.738737: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:05:03.738758: Inverter 0 count register writes 0 2026-08-14 16:05:03.756072: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 16:05:03.756250: Recompute is saving previous plan... 2026-08-14 16:05:03.759427: Best charge window [ 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0% ] 2026-08-14 16:05:03.759517: Best export window [ ] 2026-08-14 16:05:03.760436: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 16:05:03.763627: Load divergence over 8.0 hours mean 409.53W, min 267.0W, max 1243.8W, std dev 173.26W, divergence 21.15% 2026-08-14 16:05:03.782623: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 16:05:03.782756: LoadML is_calculating False 2026-08-14 16:05:03.782822: Creating pool of 12 processes to match your CPU count 2026-08-14 16:05:03.856561: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 16:05:03.858131: Optimise levels pass started at 2026-08-14 16:05:03 2026-08-14 16:05:03.858189: Optimise all windows, total charge 95 export 1 2026-08-14 16:05:04.929854: >> Region optimisation pass width 960 gives best_metric 1068.15p, best_cost 1075.3p, best_cycle 37.06kWh, best_import 22.98kWh 2026-08-14 16:05:05.386310: >> Region optimisation pass width 480 gives best_metric 1068.15p, best_cost 1075.3p, best_cycle 37.06kWh, best_import 22.98kWh 2026-08-14 16:05:06.289462: >> Region optimisation pass width 240 gives best_metric 1068.06p, best_cost 1075.08p, best_cycle 37.06kWh, best_import 22.98kWh 2026-08-14 16:05:07.701356: >> Region optimisation pass width 120 gives best_metric 1068.06p, best_cost 1075.08p, best_cycle 37.06kWh, best_import 22.98kWh 2026-08-14 16:05:07.701790: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 86 2026-08-14 16:05:07.701900: Optimise levels pass ended at 2026-08-14 16:05:07, duration 3.8 seconds tried 362 combinations 2026-08-14 16:05:07.701977: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1068.06p, best_keep 0kWh, best_cycle 37.06kWh, best_carbon 0kg, best_import 22.98kWh 2026-08-14 16:05:07.724458: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3.0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 16:05:16.316105: Tweak plan optimisation started metric 1014.64p, cost 1023.45p 2026-08-14 16:05:16.651704: Tweak optimisation finished metric 1014.64p, cost 1023.45p, metric_keep 0kWh, cycle 35.37kWh, carbon 0kg, import 19.79kWh, changed 8 window(s) 2026-08-14 16:05:16.673322: Swap charge optimisation started metric 1014.64p, cost 1023.45p, min_improvement_swap 0.1p 2026-08-14 16:05:26.268474: Swap charge optimisation finished metric 1014.64p, cost 1023.45p 2026-08-14 16:05:26.433320: Pruned 1 dead plan slot(s) in 13 trial(s), nominal metric 1010.2p -> 1010.2p, plan now metric 1014.76p, cost 1023.45p, cycle 35.37kWh, import 19.79kWh 2026-08-14 16:05:26.446171: Raw charge windows [ 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 16%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 16%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 16%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100% ] reserve 1.12 2026-08-14 16:05:26.446783: Unclipped charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] reserve 1.12 2026-08-14 16:05:26.447093: Unfiltered charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] reserve 1.12 2026-08-14 16:05:26.447329: Filtered charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] reserve 1.12 2026-08-14 16:05:26.487352: Previous plan best metric is 1017.31 (cost 1026.06) and new plan best metric is 1014.64 (cost 1023.45) 2026-08-14 16:05:26.487584: New plan metric is significantly better from previous plan, using new plan 2026-08-14 16:05:26.487642: Plan valid is now true after recompute was False 2026-08-14 16:05:26.519781: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1254.4p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:15:00, load 43.5kWh, PV 0.0kWh 2026-08-14 16:05:26.626274: Battery has 13.17 hours left - now at 12.04kWh 2026-08-14 16:05:26.672606: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1288.65p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:30:00, load 44.84kWh, PV 0.0kWh 2026-08-14 16:05:26.763902: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1153.77p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 44.84kWh, PV 0.0kWh 2026-08-14 16:05:26.842844: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1123.41p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:55:00, load 43.5kWh, PV 0.0kWh 2026-08-14 16:05:26.842962: Saving plan best values to HA entities 2026-08-14 16:05:26.993729: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 16:05:26.999333: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 16:05:27.004854: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.1kWh, house 2.68kWh, export 0.0kWh, metric 1123.41p, metric10 1153.77p 2026-08-14 16:05:27.087166: Marginal costs baseline metric (no standing charge): 1023.4474 2026-08-14 16:05:27.380873: Marginal energy costs matrix computed: min=25.68 max=39.46 2026-08-14 16:05:27.472612: Rate array import [{'start': 965, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 26.7p)'}] export [{'start': 965, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 16:05:27.473368: - Your estimated bill for today is £7.04 and tomorrow is £3.66 2026-08-14 16:05:27.473419: - Import rates are expensive (36.9p - 37.1p) for the next 55 minutes and then very expensive (43.9p - 53.4p) for the next 2 hours. 2026-08-14 16:05:27.473441: - The battery is currently at 75% and is in eco mode for the next 10 hours. 2026-08-14 16:05:27.473460: - For the next 48 hours there will be no solar generation. 2026-08-14 16:05:27.473478: - You will run out of battery in 14 hours. 2026-08-14 16:05:27.473494: - Your next charge slot will be in 10 hours where import rates will be cheap (24.8p). 2026-08-14 16:05:27.473511: 2026-08-14 16:05:27.536340: Plan calculation took 23.78 seconds 2026-08-14 16:05:27.536762: Inverter 0: Type SK Sunsynk 2026-08-14 16:05:27.536816: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 16:05:27.537542: Reserve min: 7%, battery_min: 7% 2026-08-14 16:05:27.537684: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 16:05:27.538088: Inverter 0 SoC: 12.09kW 76%, current charge rate 5000W, current discharge rate 5250W, current battery power 529W, current battery voltage 51.2V, grid power -54W, load power 588W, PV Power 0W 2026-08-14 16:05:27.538375: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:05:27.538548: Inverter 0 scheduled charge enable is False 2026-08-14 16:05:27.538618: Inverter 0 charge windows currently [] 2026-08-14 16:05:27.538656: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 16:05:27.538803: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:05:27.538843: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:05:27.538880: Inverter 0 scheduled discharge enable is False 2026-08-14 16:05:27.539013: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:05:27.539065: Inverter 0 discharge windows currently [] 2026-08-14 16:05:27.539120: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:05:27.539145: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:05:27.539163: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:05:27.595070: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 76%, target 16% 2026-08-14 16:05:27.595203: Inverter 0 disabled charge window while waiting for schedule (now 08-14 16:05:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 16:05:27.595262: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:05:27.595414: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:05:27.595482: No export window planned 2026-08-14 16:05:27.595587: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 16:05:27.595643: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:05:27.595759: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:05:27.595895: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 16:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 16:05:27.595940: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 16:05:27.595983: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 16:05:27.596052: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:05:27.596087: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:05:27.596110: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:05:27.596131: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:05:27.596150: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:05:27.596172: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:05:27.596192: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:05:27.596243: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:05:27.596269: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:05:27.596289: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:05:27.596309: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:05:27.596337: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:05:27.596357: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:05:27.596376: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:05:27.596415: Inverter 0 count register writes 0 2026-08-14 16:05:27.618052: Total inverter register writes now 815 2026-08-14 16:05:27.653556: Info: Completed run status Demand 2026-08-14 16:05:27.660236: Info: record_status Demand 2026-08-14 16:05:27.668320: Saved current settings to /config/predbat_config.json 2026-08-14 16:05:27.668662: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 16:06:11.799375: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:06:11.799673: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:06:11.799727: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:06:11.799868: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:06:11.799917: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:06:11.799940: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:06:11.799960: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:08:12.040059: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:08:12.040408: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:08:12.040461: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:08:12.040623: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:08:12.040673: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:08:12.040696: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:08:12.040714: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:10:00.256028: --------------- PredBat - update at 2026-08-14 16:10:00+01:00 with clock skew 0 minutes, minutes now 970 2026-08-14 16:10:00.256871: Saved current settings to /config/predbat_config.json 2026-08-14 16:10:00.257097: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 25.0 minutes 2026-08-14 16:10:00.257224: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 16:10:00.257345: Autoupdate: Currently up to date 2026-08-14 16:10:00.281697: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 16:10:00.281864: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 16:10:00.282051: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 16:10:00.282639: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 16:10:00.282802: Predbat mode is set to Control charge & discharge 2026-08-14 16:10:00.481165: Found 21602 load_today datapoints going back 28 days 2026-08-14 16:10:00.481355: Using load_power data to fill gaps in load_today data 2026-08-14 16:10:00.960342: Processing 721 30-minute periods for power integration 2026-08-14 16:10:01.149029: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 16:10:01.149172: Car charging hold False, threshold 6.0kWh 2026-08-14 16:10:01.149219: Current data so far today: load 15.7kWh, import 28.7kWh, export 0.0kWh, PV 0kWh 2026-08-14 16:10:01.168669: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 16:10:01.169333: Standing charge is set to 49.98p 2026-08-14 16:10:01.219232: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 16:10:01.219344: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 16:10:01.219523: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 335.0 minutes 2026-08-14 16:10:01.219865: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 335.0 minutes 2026-08-14 16:10:01.224837: Loaded 95 datapoints of futurerate analysis 2026-08-14 16:10:01.382504: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35'] 2026-08-14 16:10:01.428687: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 16:10:01.429125: Import rates: min 13.77p, max 53.39p, average 26.76p 2026-08-14 16:10:01.472814: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 16:10:01.472999: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 16:10:01.474297: High export rate found rates in range 99p to -99p 2026-08-14 16:10:01.574312: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 16:10:01.574448: Car 0 charging is not planned as it is not plugged in 2026-08-14 16:10:01.588527: Battery level now 12.04kWh, -1hr ago 10.4kWh, at midnight 2.43kWh, battery value change in the last hour 19.43p, change today 113.66p, rate_forward 11.83p 2026-08-14 16:10:01.588944: Last hour: net energy 2.88kWh, import 2.88kWh, export 0.0kWh, car 0kWh, load 0.9kWh, net cost 70.87p, import 70.87p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 16:10:01.660418: Today's energy total net 28.7kWh, import 28.7kWh, export 0.0kWh, cost 722.1p, import 672.11p, export 0.0p, carbon 0.0kg 2026-08-14 16:10:01.660623: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 16:10:01.739431: Using weighted-bucket historical load forecast over 14 days 2026-08-14 16:10:01.762849: Today's load divergence 130.59%, in-day adjustment 134.85%, damping 0.95x, yesterday 146.81% today 129.06% blend 32.64% 2026-08-14 16:10:01.762970: Today's predicted so far 9.46kWh with 0.0kWh car/iBoost excluded, 17.09kWh import ignored, and 9.46kWh forecast extra. 2026-08-14 16:10:01.763006: Today's actual load so far 15.77kWh with 0.0kWh car/iBoost excluded, and 17.09kWh import ignored. 2026-08-14 16:10:01.805328: Inverter 0: Type SK Sunsynk 2026-08-14 16:10:01.805426: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 16:10:01.806064: Reserve min: 7%, battery_min: 7% 2026-08-14 16:10:01.806158: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 16:10:01.806437: Inverter 0 SoC: 12.09kW 76%, current charge rate 5000W, current discharge rate 5250W, current battery power 456W, current battery voltage 51.2V, grid power -53W, load power 534W, PV Power 0W 2026-08-14 16:10:01.806628: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:10:01.806728: Inverter 0 scheduled charge enable is False 2026-08-14 16:10:01.806759: Inverter 0 charge windows currently [] 2026-08-14 16:10:01.806785: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 16:10:01.806904: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:10:01.806946: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:10:01.806983: Inverter 0 scheduled discharge enable is False 2026-08-14 16:10:01.807122: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:10:01.807161: Inverter 0 discharge windows currently [] 2026-08-14 16:10:01.807184: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:10:01.807202: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:10:01.807222: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:10:01.883629: Dynamic load last period 2.40kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 16:10:01.883723: Plan was last updated on 2026-08-14 16:05:00+01:00 and is now 5.0 minutes old 2026-08-14 16:10:01.883952: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 16:10:01.883989: Best export window [ ] 2026-08-14 16:10:01.884638: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 16:10:01.887322: Load divergence over 8.0 hours mean 412.62W, min 274.2W, max 1206.0W, std dev 170.96W, divergence 20.72% 2026-08-14 16:10:01.902815: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 16:10:01.902932: LoadML is_calculating False 2026-08-14 16:10:01.902989: Creating pool of 12 processes to match your CPU count 2026-08-14 16:10:01.996368: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1273.21p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:20:00, load 43.98kWh, PV 0.0kWh 2026-08-14 16:10:02.121670: Battery has 13.17 hours left - now at 12.09kWh 2026-08-14 16:10:02.165449: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1307.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:35:00, load 45.33kWh, PV 0.0kWh 2026-08-14 16:10:02.263901: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1177.87p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.33kWh, PV 0.0kWh 2026-08-14 16:10:02.363596: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1148.68p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 07:00:00, load 43.98kWh, PV 0.0kWh 2026-08-14 16:10:02.363701: Saving plan best values to HA entities 2026-08-14 16:10:02.552196: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 16:10:02.557583: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 16:10:02.562866: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.6kWh, house 2.65kWh, export 0.0kWh, metric 1148.68p, metric10 1177.87p 2026-08-14 16:10:02.640144: Marginal costs baseline metric (no standing charge): 1048.7113 2026-08-14 16:10:02.915134: Marginal energy costs matrix computed: min=25.44 max=38.95 2026-08-14 16:10:02.995310: Rate array import [{'start': 970, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 970, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 16:10:02.995907: - Your estimated bill for today is £7.22 and tomorrow is £3.65 2026-08-14 16:10:02.995951: - Import rates are expensive (36.9p - 37.1p) for the next 50 minutes and then very expensive (43.9p - 53.4p) for the next 2 hours. 2026-08-14 16:10:02.995971: - The battery is currently at 76% and is in eco mode for the next 10 hours. 2026-08-14 16:10:02.995986: - For the next 48 hours there will be no solar generation. 2026-08-14 16:10:02.996000: - You will run out of battery in 14 hours. 2026-08-14 16:10:02.996014: - Your next charge slot will be in 10 hours where import rates will be cheap (24.8p). 2026-08-14 16:10:02.996028: 2026-08-14 16:10:03.053485: Plan calculation took 1.17 seconds 2026-08-14 16:10:03.057161: No high rate period found 2026-08-14 16:10:03.108510: Import threshold used for optimisation was 25.6p 2026-08-14 16:10:03.161230: Low import rate windows [0: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 1: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 2: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 3: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 4: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 5: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 6: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 7: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 8: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 9: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 10: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 11: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 12: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 13: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 14: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 15: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 16: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 17: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 18: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 19: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 20: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 21: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 22: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 23: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 24: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 25: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 26: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 27: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 28: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 29: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 30: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 31: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 32: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 33: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 34: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 35: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 36: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 37: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 38: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 39: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 40: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 41: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 42: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 43: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 44: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 45: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 46: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 47: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 48: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 49: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 50: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 51: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 52: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 53: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 54: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 55: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 56: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 57: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 58: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 59: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 60: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 61: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 62: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 63: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 64: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 65: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 66: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 67: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 68: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 69: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 70: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 71: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 72: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 73: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 74: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 75: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 76: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 77: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 78: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 79: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 80: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 81: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 82: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 83: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 84: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 85: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 86: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 87: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 88: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 89: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 90: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 91: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 92: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 93: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 94: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 95: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13] 2026-08-14 16:10:03.168736: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 76%, target 16% 2026-08-14 16:10:03.168879: Inverter 0 disabled charge window while waiting for schedule (now 08-14 16:10:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 16:10:03.169022: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:10:03.169297: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:10:03.169385: No export window planned 2026-08-14 16:10:03.169494: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 16:10:03.169531: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:10:03.169686: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:10:03.169861: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 16:10:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 16:10:03.169945: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 16:10:03.170005: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 16:10:03.170103: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:10:03.170146: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:10:03.170174: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:10:03.170205: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:10:03.170230: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:10:03.170256: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:10:03.170281: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:10:03.170347: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:10:03.170376: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:10:03.170400: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:10:03.170424: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:10:03.170448: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:10:03.170477: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:10:03.170501: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:10:03.170525: Inverter 0 count register writes 0 2026-08-14 16:10:03.185692: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 16:10:03.190451: Total inverter register writes now 815 2026-08-14 16:10:03.223878: Info: Completed run status Demand 2026-08-14 16:10:03.230347: Info: record_status Demand 2026-08-14 16:10:03.237022: Saved current settings to /config/predbat_config.json 2026-08-14 16:10:03.237318: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 16:10:42.345732: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:10:42.345986: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:10:42.346026: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:10:42.346185: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:10:42.346223: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:10:42.346242: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:10:42.346257: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:12:56.586747: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:12:56.586980: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:12:56.587022: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:12:56.587156: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:12:56.587195: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:12:56.587239: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:12:56.587259: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:14:56.814382: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:14:56.814749: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:14:56.814809: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:14:56.815047: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:14:56.815134: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:14:56.815177: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:14:56.815213: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:15:00.897999: --------------- PredBat - update at 2026-08-14 16:15:00+01:00 with clock skew 0 minutes, minutes now 975 2026-08-14 16:15:00.898867: Saved current settings to /config/predbat_config.json 2026-08-14 16:15:00.899066: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 30.0 minutes 2026-08-14 16:15:00.899190: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 16:15:00.899354: Autoupdate: Currently up to date 2026-08-14 16:15:00.917658: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 16:15:00.917784: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 16:15:00.917962: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 16:15:00.918580: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 16:15:00.918702: Predbat mode is set to Control charge & discharge 2026-08-14 16:15:01.101155: Found 21602 load_today datapoints going back 28 days 2026-08-14 16:15:01.101361: Using load_power data to fill gaps in load_today data 2026-08-14 16:15:01.529031: Processing 721 30-minute periods for power integration 2026-08-14 16:15:01.694654: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 16:15:01.694787: Car charging hold False, threshold 6.0kWh 2026-08-14 16:15:01.694838: Current data so far today: load 15.9kWh, import 28.7kWh, export 0.0kWh, PV 0kWh 2026-08-14 16:15:01.711490: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 16:15:01.712083: Standing charge is set to 49.98p 2026-08-14 16:15:01.769826: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 16:15:01.769922: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 16:15:01.770095: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 340.0 minutes 2026-08-14 16:15:01.770418: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 340.0 minutes 2026-08-14 16:15:01.775198: Loaded 95 datapoints of futurerate analysis 2026-08-14 16:15:01.900744: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35'] 2026-08-14 16:15:01.937774: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 16:15:01.938051: Import rates: min 13.77p, max 53.39p, average 26.76p 2026-08-14 16:15:01.972157: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 16:15:01.972272: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 16:15:01.973440: High export rate found rates in range 99p to -99p 2026-08-14 16:15:02.067017: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 16:15:02.067162: Car 0 charging is not planned as it is not plugged in 2026-08-14 16:15:02.079388: Battery level now 12.09kWh, -1hr ago 10.19kWh, at midnight 2.43kWh, battery value change in the last hour 22.42p, change today 114.19p, rate_forward 11.83p 2026-08-14 16:15:02.079771: Last hour: net energy 2.85kWh, import 2.85kWh, export 0.0kWh, car 0kWh, load 1.0kWh, net cost 70.32p, import 70.32p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 16:15:02.134364: Today's energy total net 28.7kWh, import 28.7kWh, export 0.0kWh, cost 722.1p, import 672.12p, export 0.0p, carbon 0.0kg 2026-08-14 16:15:02.134516: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 16:15:02.224791: Using weighted-bucket historical load forecast over 14 days 2026-08-14 16:15:02.260411: Today's load divergence 131.05%, in-day adjustment 135.09%, damping 0.95x, yesterday 146.81% today 129.5% blend 32.29% 2026-08-14 16:15:02.260530: Today's predicted so far 9.46kWh with 0.0kWh car/iBoost excluded, 17.07kWh import ignored, and 9.46kWh forecast extra. 2026-08-14 16:15:02.260581: Today's actual load so far 15.91kWh with 0.0kWh car/iBoost excluded, and 17.07kWh import ignored. 2026-08-14 16:15:02.312660: Inverter 0: Type SK Sunsynk 2026-08-14 16:15:02.312775: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 16:15:02.313900: Reserve min: 7%, battery_min: 7% 2026-08-14 16:15:02.314056: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 16:15:02.314499: Inverter 0 SoC: 12.0kW 75%, current charge rate 5000W, current discharge rate 5250W, current battery power 455W, current battery voltage 51.2V, grid power -54W, load power 523W, PV Power 0W 2026-08-14 16:15:02.314773: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:15:02.314904: Inverter 0 scheduled charge enable is False 2026-08-14 16:15:02.314959: Inverter 0 charge windows currently [] 2026-08-14 16:15:02.315009: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 16:15:02.315173: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:15:02.315243: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:15:02.315305: Inverter 0 scheduled discharge enable is False 2026-08-14 16:15:02.315563: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:15:02.315623: Inverter 0 discharge windows currently [] 2026-08-14 16:15:02.315668: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:15:02.315705: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:15:02.315738: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:15:02.387043: Dynamic load last period 2.40kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 16:15:02.387158: Plan was last updated on 2026-08-14 16:05:00+01:00 and is now 10.0 minutes old 2026-08-14 16:15:02.387437: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 16:15:02.387482: Best export window [ ] 2026-08-14 16:15:02.388402: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 16:15:02.391697: Load divergence over 8.0 hours mean 415.69W, min 276.0W, max 1164.0W, std dev 170.02W, divergence 20.45% 2026-08-14 16:15:02.410459: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 16:15:02.410571: LoadML is_calculating False 2026-08-14 16:15:02.410650: Creating pool of 12 processes to match your CPU count 2026-08-14 16:15:02.506375: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1276.15p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:15:00, load 44.25kWh, PV 0.0kWh 2026-08-14 16:15:02.630765: Battery has 13.0 hours left - now at 12.0kWh 2026-08-14 16:15:02.668964: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1310.58p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:25:00, load 45.61kWh, PV 0.0kWh 2026-08-14 16:15:02.741840: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1186.46p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.61kWh, PV 0.0kWh 2026-08-14 16:15:02.817708: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1158.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:55:00, load 44.25kWh, PV 0.0kWh 2026-08-14 16:15:02.817824: Saving plan best values to HA entities 2026-08-14 16:15:02.973998: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 16:15:02.979625: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 16:15:02.985573: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.12kWh, house 2.7kWh, export 0.0kWh, metric 1158.12p, metric10 1186.46p 2026-08-14 16:15:03.070582: Marginal costs baseline metric (no standing charge): 1058.1505 2026-08-14 16:15:03.306247: Marginal energy costs matrix computed: min=25.35 max=38.48 2026-08-14 16:15:03.410634: Rate array import [{'start': 975, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 975, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 16:15:03.411371: - Your estimated bill for today is £7.22 and tomorrow is £3.66 2026-08-14 16:15:03.411418: - Import rates are expensive (36.9p - 37.1p) for the next 45 minutes and then very expensive (43.9p - 53.4p) for the next 2 hours. 2026-08-14 16:15:03.411441: - The battery is currently at 75% and is in eco mode for the next 10 hours. 2026-08-14 16:15:03.411459: - For the next 48 hours there will be no solar generation. 2026-08-14 16:15:03.411476: - You will run out of battery in 14 hours. 2026-08-14 16:15:03.411499: - Your next charge slot will be in 10 hours where import rates will be cheap (24.8p). 2026-08-14 16:15:03.411517: 2026-08-14 16:15:03.484412: Plan calculation took 1.10 seconds 2026-08-14 16:15:03.488010: No high rate period found 2026-08-14 16:15:03.540907: Import threshold used for optimisation was 25.6p 2026-08-14 16:15:03.592243: Low import rate windows [0: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 1: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 2: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 3: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 4: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 5: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 6: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 7: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 8: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 9: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 10: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 11: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 12: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 13: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 14: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 15: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 16: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 17: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 18: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 19: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 20: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 21: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 22: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 23: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 24: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 25: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 26: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 27: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 28: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 29: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 30: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 31: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 32: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 33: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 34: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 35: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 36: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 37: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 38: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 39: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 40: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 41: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 42: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 43: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 44: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 45: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 46: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 47: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 48: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 49: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 50: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 51: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 52: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 53: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 54: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 55: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 56: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 57: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 58: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 59: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 60: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 61: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 62: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 63: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 64: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 65: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 66: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 67: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 68: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 69: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 70: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 71: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 72: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 73: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 74: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 75: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 76: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 77: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 78: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 79: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 80: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 81: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 82: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 83: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 84: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 85: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 86: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 87: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 88: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 89: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 90: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 91: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 92: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 93: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 94: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 95: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13] 2026-08-14 16:15:03.599114: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 75%, target 16% 2026-08-14 16:15:03.599271: Inverter 0 disabled charge window while waiting for schedule (now 08-14 16:15:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 16:15:03.599379: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:15:03.599655: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:15:03.599756: No export window planned 2026-08-14 16:15:03.599897: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 16:15:03.599945: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:15:03.600100: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:15:03.600271: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 16:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 16:15:03.600332: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 16:15:03.600389: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 16:15:03.600476: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:15:03.600516: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:15:03.600560: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:15:03.600598: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:15:03.600623: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:15:03.600672: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:15:03.600700: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:15:03.600768: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:15:03.600804: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:15:03.600830: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:15:03.600861: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:15:03.600885: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:15:03.600913: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:15:03.600937: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:15:03.600993: Inverter 0 count register writes 0 2026-08-14 16:15:03.617116: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 16:15:03.617350: Recompute is saving previous plan... 2026-08-14 16:15:03.620812: Best charge window [ 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0% ] 2026-08-14 16:15:03.620901: Best export window [ ] 2026-08-14 16:15:03.621829: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 16:15:03.626316: Load divergence over 8.0 hours mean 415.69W, min 276.0W, max 1164.0W, std dev 170.02W, divergence 20.45% 2026-08-14 16:15:03.645335: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 16:15:03.645469: LoadML is_calculating False 2026-08-14 16:15:03.645556: Creating pool of 12 processes to match your CPU count 2026-08-14 16:15:03.718292: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 16:15:03.720219: Optimise levels pass started at 2026-08-14 16:15:03 2026-08-14 16:15:03.720275: Optimise all windows, total charge 95 export 1 2026-08-14 16:15:04.599572: >> Region optimisation pass width 960 gives best_metric 1089.16p, best_cost 1096.33p, best_cycle 37.0kWh, best_import 23.06kWh 2026-08-14 16:15:04.969790: >> Region optimisation pass width 480 gives best_metric 1089.16p, best_cost 1096.33p, best_cycle 37.0kWh, best_import 23.06kWh 2026-08-14 16:15:05.514595: >> Region optimisation pass width 240 gives best_metric 1089.16p, best_cost 1096.33p, best_cycle 37.0kWh, best_import 23.06kWh 2026-08-14 16:15:06.727317: >> Region optimisation pass width 120 gives best_metric 1089.16p, best_cost 1096.33p, best_cycle 37.0kWh, best_import 23.06kWh 2026-08-14 16:15:06.727658: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 86 2026-08-14 16:15:06.727749: Optimise levels pass ended at 2026-08-14 16:15:06, duration 3.0 seconds tried 337 combinations 2026-08-14 16:15:06.727833: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1089.16p, best_keep 0kWh, best_cycle 37.0kWh, best_carbon 0kg, best_import 23.06kWh 2026-08-14 16:15:06.748811: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 16:15:14.846663: Tweak plan optimisation started metric 1033.55p, cost 1042.35p 2026-08-14 16:15:15.208882: Tweak optimisation finished metric 1033.55p, cost 1042.35p, metric_keep 0kWh, cycle 35.33kWh, carbon 0kg, import 19.8kWh, changed 8 window(s) 2026-08-14 16:15:15.229497: Swap charge optimisation started metric 1033.55p, cost 1042.35p, min_improvement_swap 0.1p 2026-08-14 16:15:23.826837: Swap charge optimisation finished metric 1033.55p, cost 1042.35p 2026-08-14 16:15:23.980354: Pruned 1 dead plan slot(s) in 13 trial(s), nominal metric 1029.1p -> 1029.1p, plan now metric 1033.66p, cost 1042.35p, cycle 35.33kWh, import 19.8kWh 2026-08-14 16:15:23.992971: Raw charge windows [ 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 16%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 16%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 16%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100% ] reserve 1.12 2026-08-14 16:15:23.993563: Unclipped charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] reserve 1.12 2026-08-14 16:15:23.993912: Unfiltered charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] reserve 1.12 2026-08-14 16:15:23.994154: Filtered charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] reserve 1.12 2026-08-14 16:15:24.034339: Previous plan best metric is 1033.55 (cost 1042.35) and new plan best metric is 1033.55 (cost 1042.35) 2026-08-14 16:15:24.034591: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 16:15:24.034764: Plan valid is now true after recompute was False 2026-08-14 16:15:24.064731: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1273.23p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:15:00, load 44.07kWh, PV 0.0kWh 2026-08-14 16:15:24.181876: Battery has 13.0 hours left - now at 12.0kWh 2026-08-14 16:15:24.242255: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1307.52p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:25:00, load 45.41kWh, PV 0.0kWh 2026-08-14 16:15:24.338776: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1172.66p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.41kWh, PV 0.0kWh 2026-08-14 16:15:24.421299: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1142.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:55:00, load 44.07kWh, PV 0.0kWh 2026-08-14 16:15:24.421424: Saving plan best values to HA entities 2026-08-14 16:15:24.561272: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 16:15:24.566416: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 16:15:24.571119: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.1kWh, house 2.7kWh, export 0.0kWh, metric 1142.32p, metric10 1172.66p 2026-08-14 16:15:24.643959: Marginal costs baseline metric (no standing charge): 1042.3493 2026-08-14 16:15:24.879283: Marginal energy costs matrix computed: min=25.35 max=38.48 2026-08-14 16:15:24.957024: Rate array import [{'start': 975, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 26.7p)'}] export [{'start': 975, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 16:15:24.957833: - Your estimated bill for today is £7.22 and tomorrow is £3.66 2026-08-14 16:15:24.957885: - Import rates are expensive (36.9p - 37.1p) for the next 45 minutes and then very expensive (43.9p - 53.4p) for the next 2 hours. 2026-08-14 16:15:24.957914: - The battery is currently at 75% and is in eco mode for the next 10 hours. 2026-08-14 16:15:24.957955: - For the next 48 hours there will be no solar generation. 2026-08-14 16:15:24.957989: - You will run out of battery in 14 hours. 2026-08-14 16:15:24.958020: - Your next charge slot will be in 10 hours where import rates will be cheap (24.8p). 2026-08-14 16:15:24.958061: 2026-08-14 16:15:25.020867: Plan calculation took 21.40 seconds 2026-08-14 16:15:25.021254: Inverter 0: Type SK Sunsynk 2026-08-14 16:15:25.021308: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 16:15:25.021949: Reserve min: 7%, battery_min: 7% 2026-08-14 16:15:25.022036: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 16:15:25.022331: Inverter 0 SoC: 12.0kW 75%, current charge rate 5000W, current discharge rate 5250W, current battery power 505W, current battery voltage 51.2V, grid power -55W, load power 577W, PV Power 0W 2026-08-14 16:15:25.022583: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:15:25.022692: Inverter 0 scheduled charge enable is False 2026-08-14 16:15:25.022753: Inverter 0 charge windows currently [] 2026-08-14 16:15:25.022786: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 16:15:25.022905: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:15:25.022941: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:15:25.022976: Inverter 0 scheduled discharge enable is False 2026-08-14 16:15:25.023108: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:15:25.023145: Inverter 0 discharge windows currently [] 2026-08-14 16:15:25.023168: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:15:25.023190: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:15:25.023208: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:15:25.082446: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 75%, target 16% 2026-08-14 16:15:25.082594: Inverter 0 disabled charge window while waiting for schedule (now 08-14 16:15:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 16:15:25.082669: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:15:25.082883: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:15:25.082961: No export window planned 2026-08-14 16:15:25.083080: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 16:15:25.083116: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:15:25.083267: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:15:25.083430: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 16:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 16:15:25.083481: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 16:15:25.083541: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 16:15:25.083648: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:15:25.083691: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:15:25.083724: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:15:25.083765: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:15:25.083795: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:15:25.083835: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:15:25.083878: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:15:25.083947: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:15:25.083989: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:15:25.084038: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:15:25.084084: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:15:25.084134: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:15:25.084179: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:15:25.084257: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:15:25.084296: Inverter 0 count register writes 0 2026-08-14 16:15:25.103214: Total inverter register writes now 815 2026-08-14 16:15:25.134046: Info: Completed run status Demand 2026-08-14 16:15:25.140420: Info: record_status Demand 2026-08-14 16:15:25.147389: Saved current settings to /config/predbat_config.json 2026-08-14 16:15:25.147713: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 16:15:57.241197: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:15:57.241407: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:15:57.241443: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:15:57.241582: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:15:57.241617: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:15:57.241634: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:15:57.241648: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:17:57.454688: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:17:57.455046: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:17:57.455109: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:17:57.455304: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:17:57.455388: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:17:57.455429: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:17:57.455466: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:20:00.681284: --------------- PredBat - update at 2026-08-14 16:20:00+01:00 with clock skew 0 minutes, minutes now 980 2026-08-14 16:20:00.682285: Saved current settings to /config/predbat_config.json 2026-08-14 16:20:00.682430: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 35.0 minutes 2026-08-14 16:20:00.682608: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 16:20:00.682743: Autoupdate: Currently up to date 2026-08-14 16:20:00.701893: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 16:20:00.702016: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 16:20:00.702240: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 16:20:00.702914: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 16:20:00.703082: Predbat mode is set to Control charge & discharge 2026-08-14 16:20:00.897083: Found 21602 load_today datapoints going back 28 days 2026-08-14 16:20:00.897264: Using load_power data to fill gaps in load_today data 2026-08-14 16:20:01.366364: Processing 721 30-minute periods for power integration 2026-08-14 16:20:01.584719: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 16:20:01.584909: Car charging hold False, threshold 6.0kWh 2026-08-14 16:20:01.585016: Current data so far today: load 15.65kWh, import 28.7kWh, export 0.0kWh, PV 0kWh 2026-08-14 16:20:01.604544: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 16:20:01.605455: Standing charge is set to 49.98p 2026-08-14 16:20:01.655898: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 16:20:01.656010: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 16:20:01.656225: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 345.0 minutes 2026-08-14 16:20:01.656662: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 345.0 minutes 2026-08-14 16:20:01.662641: Loaded 95 datapoints of futurerate analysis 2026-08-14 16:20:01.819287: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35'] 2026-08-14 16:20:01.864392: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 16:20:01.864765: Import rates: min 13.77p, max 53.39p, average 26.75p 2026-08-14 16:20:01.907245: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 16:20:01.907385: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 16:20:01.908760: High export rate found rates in range 99p to -99p 2026-08-14 16:20:02.008246: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 16:20:02.008409: Car 0 charging is not planned as it is not plugged in 2026-08-14 16:20:02.021653: Battery level now 12.0kWh, -1hr ago 10.08kWh, at midnight 2.43kWh, battery value change in the last hour 22.71p, change today 113.15p, rate_forward 11.83p 2026-08-14 16:20:02.022028: Last hour: net energy 2.83kWh, import 2.83kWh, export 0.0kWh, car 0kWh, load 0.7kWh, net cost 69.76p, import 69.76p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 16:20:02.083733: Today's energy total net 28.7kWh, import 28.7kWh, export 0.0kWh, cost 722.1p, import 672.12p, export 0.0p, carbon 0.0kg 2026-08-14 16:20:02.083882: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 16:20:02.175683: Using weighted-bucket historical load forecast over 14 days 2026-08-14 16:20:02.204416: Today's load divergence 130.04%, in-day adjustment 134.37%, damping 0.95x, yesterday 146.81% today 128.54% blend 31.94% 2026-08-14 16:20:02.204556: Today's predicted so far 9.48kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 9.48kWh forecast extra. 2026-08-14 16:20:02.204618: Today's actual load so far 15.63kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 16:20:02.244003: Inverter 0: Type SK Sunsynk 2026-08-14 16:20:02.244112: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 16:20:02.244671: Reserve min: 7%, battery_min: 7% 2026-08-14 16:20:02.244771: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 16:20:02.245131: Inverter 0 SoC: 12.0kW 75%, current charge rate 5000W, current discharge rate 5250W, current battery power 465W, current battery voltage 51.2V, grid power -52W, load power 531W, PV Power 0W 2026-08-14 16:20:02.245307: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:20:02.245397: Inverter 0 scheduled charge enable is False 2026-08-14 16:20:02.245425: Inverter 0 charge windows currently [] 2026-08-14 16:20:02.245450: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 16:20:02.245575: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:20:02.245613: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:20:02.245649: Inverter 0 scheduled discharge enable is False 2026-08-14 16:20:02.245773: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:20:02.245821: Inverter 0 discharge windows currently [] 2026-08-14 16:20:02.245878: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:20:02.245916: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:20:02.245958: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:20:02.311969: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 16:20:02.312085: Plan was last updated on 2026-08-14 16:15:00+01:00 and is now 5.0 minutes old 2026-08-14 16:20:02.312356: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 16:20:02.312399: Best export window [ ] 2026-08-14 16:20:02.313188: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 16:20:02.316413: Load divergence over 8.0 hours mean 418.66W, min 290.4W, max 1182.6W, std dev 159.27W, divergence 19.02% 2026-08-14 16:20:02.335273: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 16:20:02.335366: LoadML is_calculating False 2026-08-14 16:20:02.335429: Creating pool of 12 processes to match your CPU count 2026-08-14 16:20:02.453833: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1273.04p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:25:00, load 43.84kWh, PV 0.0kWh 2026-08-14 16:20:02.593971: Battery has 13.08 hours left - now at 12.0kWh 2026-08-14 16:20:02.652712: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1307.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:35:00, load 45.19kWh, PV 0.0kWh 2026-08-14 16:20:02.747899: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1177.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.19kWh, PV 0.0kWh 2026-08-14 16:20:02.848584: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1148.55p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:55:00, load 43.84kWh, PV 0.0kWh 2026-08-14 16:20:02.848704: Saving plan best values to HA entities 2026-08-14 16:20:03.028480: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 16:20:03.033663: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 16:20:03.038891: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.55kWh, house 2.7kWh, export 0.0kWh, metric 1148.55p, metric10 1177.51p 2026-08-14 16:20:03.114176: Marginal costs baseline metric (no standing charge): 1048.5797 2026-08-14 16:20:03.415896: Marginal energy costs matrix computed: min=24.93 max=37.95 2026-08-14 16:20:03.495219: Rate array import [{'start': 980, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 980, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 16:20:03.495890: - Your estimated bill for today is £7.22 and tomorrow is £3.65 2026-08-14 16:20:03.495940: - Import rates are expensive (36.9p - 37.1p) for the next 40 minutes and then very expensive (43.9p - 53.4p) for the next 2 hours. 2026-08-14 16:20:03.495975: - The battery is currently at 75% and is in eco mode for the next 10 hours. 2026-08-14 16:20:03.496003: - For the next 48 hours there will be no solar generation. 2026-08-14 16:20:03.496036: - You will run out of battery in 14 hours. 2026-08-14 16:20:03.496065: - Your next charge slot will be in 10 hours where import rates will be cheap (24.8p). 2026-08-14 16:20:03.496091: 2026-08-14 16:20:03.562054: Plan calculation took 1.25 seconds 2026-08-14 16:20:03.565762: No high rate period found 2026-08-14 16:20:03.618832: Import threshold used for optimisation was 25.6p 2026-08-14 16:20:03.672623: Low import rate windows [0: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 1: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 2: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 3: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 4: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 5: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 6: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 7: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 8: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 9: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 10: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 11: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 12: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 13: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 14: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 15: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 16: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 17: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 18: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 19: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 20: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 21: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 22: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 23: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 24: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 25: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 26: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 27: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 28: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 29: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 30: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 31: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 32: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 33: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 34: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 35: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 36: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 37: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 38: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 39: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 40: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 41: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 42: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 43: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 44: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 45: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 46: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 47: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 48: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 49: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 50: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 51: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 52: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 53: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 54: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 55: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 56: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 57: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 58: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 59: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 60: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 61: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 62: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 63: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 64: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 65: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 66: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 67: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 68: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 69: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 70: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 71: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 72: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 73: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 74: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 75: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 76: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 77: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 78: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 79: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 80: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 81: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 82: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 83: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 84: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 85: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 86: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 87: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 88: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 89: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 90: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 91: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 92: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 93: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 94: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 95: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13] 2026-08-14 16:20:03.680876: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 75%, target 16% 2026-08-14 16:20:03.681102: Inverter 0 disabled charge window while waiting for schedule (now 08-14 16:20:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 16:20:03.681255: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:20:03.681593: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:20:03.681708: No export window planned 2026-08-14 16:20:03.681883: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 16:20:03.681926: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:20:03.682103: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:20:03.682337: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 16:20:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 16:20:03.682411: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 16:20:03.682535: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 16:20:03.682667: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:20:03.682717: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:20:03.682763: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:20:03.682815: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:20:03.682870: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:20:03.682930: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:20:03.682973: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:20:03.683075: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:20:03.683129: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:20:03.683179: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:20:03.683226: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:20:03.683270: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:20:03.683321: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:20:03.683370: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:20:03.683418: Inverter 0 count register writes 0 2026-08-14 16:20:03.699996: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 16:20:03.705281: Total inverter register writes now 815 2026-08-14 16:20:03.742542: Info: Completed run status Demand 2026-08-14 16:20:03.756133: Info: record_status Demand 2026-08-14 16:20:03.765583: Saved current settings to /config/predbat_config.json 2026-08-14 16:20:03.765910: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 16:20:41.893040: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:20:41.893287: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:20:41.893335: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:20:41.893499: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:20:41.893548: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:20:41.893571: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:20:41.893589: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:22:42.135926: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:22:42.136171: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:22:42.136224: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:22:42.136398: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:22:42.136461: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:22:42.136502: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:22:42.136520: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:24:42.359835: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:24:42.360177: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:24:42.360254: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:24:42.360491: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:24:42.360542: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:24:42.360567: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:24:42.360585: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:25:00.464891: --------------- PredBat - update at 2026-08-14 16:25:00+01:00 with clock skew 0 minutes, minutes now 985 2026-08-14 16:25:00.465770: Saved current settings to /config/predbat_config.json 2026-08-14 16:25:00.465900: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 40.0 minutes 2026-08-14 16:25:00.465994: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 16:25:00.466116: Autoupdate: Currently up to date 2026-08-14 16:25:00.487172: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 16:25:00.487299: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 16:25:00.487477: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 16:25:00.487974: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 16:25:00.488095: Predbat mode is set to Control charge & discharge 2026-08-14 16:25:00.672984: Found 21602 load_today datapoints going back 28 days 2026-08-14 16:25:00.673117: Using load_power data to fill gaps in load_today data 2026-08-14 16:25:01.069642: Processing 721 30-minute periods for power integration 2026-08-14 16:25:01.223414: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 16:25:01.223548: Car charging hold False, threshold 6.0kWh 2026-08-14 16:25:01.223586: Current data so far today: load 15.7kWh, import 28.7kWh, export 0.0kWh, PV 0kWh 2026-08-14 16:25:01.238732: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 16:25:01.239159: Standing charge is set to 49.98p 2026-08-14 16:25:01.287967: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 16:25:01.288062: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 16:25:01.288234: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 350.0 minutes 2026-08-14 16:25:01.288556: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 350.0 minutes 2026-08-14 16:25:01.293505: Loaded 95 datapoints of futurerate analysis 2026-08-14 16:25:01.433958: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35'] 2026-08-14 16:25:01.472367: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 16:25:01.472671: Import rates: min 13.77p, max 53.39p, average 26.74p 2026-08-14 16:25:01.508255: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 16:25:01.508365: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 16:25:01.509511: High export rate found rates in range 99p to -99p 2026-08-14 16:25:01.591729: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 16:25:01.591858: Car 0 charging is not planned as it is not plugged in 2026-08-14 16:25:01.606000: Battery level now 12.0kWh, -1hr ago 10.08kWh, at midnight 2.43kWh, battery value change in the last hour 22.71p, change today 113.15p, rate_forward 11.83p 2026-08-14 16:25:01.606563: Last hour: net energy 2.8kWh, import 2.8kWh, export 0.0kWh, car 0kWh, load 0.7kWh, net cost 69.2p, import 69.2p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 16:25:01.686410: Today's energy total net 28.7kWh, import 28.7kWh, export 0.0kWh, cost 722.1p, import 672.12p, export 0.0p, carbon 0.0kg 2026-08-14 16:25:01.686577: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 16:25:01.768189: Using weighted-bucket historical load forecast over 14 days 2026-08-14 16:25:01.797151: Today's load divergence 129.96%, in-day adjustment 134.26%, damping 0.95x, yesterday 146.81% today 128.47% blend 31.6% 2026-08-14 16:25:01.797248: Today's predicted so far 9.5kWh with 0.0kWh car/iBoost excluded, 17.37kWh import ignored, and 9.5kWh forecast extra. 2026-08-14 16:25:01.797293: Today's actual load so far 15.63kWh with 0.0kWh car/iBoost excluded, and 17.37kWh import ignored. 2026-08-14 16:25:01.837249: Inverter 0: Type SK Sunsynk 2026-08-14 16:25:01.837340: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 16:25:01.837850: Reserve min: 7%, battery_min: 7% 2026-08-14 16:25:01.837933: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 16:25:01.838156: Inverter 0 SoC: 11.88kW 74%, current charge rate 5000W, current discharge rate 5250W, current battery power 498W, current battery voltage 51.2V, grid power -53W, load power 554W, PV Power 0W 2026-08-14 16:25:01.838288: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:25:01.838392: Inverter 0 scheduled charge enable is False 2026-08-14 16:25:01.838462: Inverter 0 charge windows currently [] 2026-08-14 16:25:01.838493: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 16:25:01.838657: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:25:01.838701: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:25:01.838757: Inverter 0 scheduled discharge enable is False 2026-08-14 16:25:01.838917: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:25:01.838971: Inverter 0 discharge windows currently [] 2026-08-14 16:25:01.839008: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:25:01.839035: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:25:01.839050: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:25:01.892904: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 16:25:01.893024: Plan was last updated on 2026-08-14 16:15:00+01:00 and is now 10.0 minutes old 2026-08-14 16:25:01.893301: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 16:25:01.893343: Best export window [ ] 2026-08-14 16:25:01.894024: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 16:25:01.897428: Load divergence over 8.0 hours mean 421.65W, min 287.4W, max 1057.8W, std dev 149.79W, divergence 17.76% 2026-08-14 16:25:01.920436: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 16:25:01.920613: LoadML is_calculating False 2026-08-14 16:25:01.920700: Creating pool of 12 processes to match your CPU count 2026-08-14 16:25:02.011495: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1276.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:15:00, load 43.94kWh, PV 0.0kWh 2026-08-14 16:25:02.140479: Battery has 12.83 hours left - now at 11.88kWh 2026-08-14 16:25:02.186955: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1310.56p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:25:00, load 45.29kWh, PV 0.0kWh 2026-08-14 16:25:02.286720: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1186.3p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.29kWh, PV 0.0kWh 2026-08-14 16:25:02.373593: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1158.11p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:55:00, load 43.94kWh, PV 0.0kWh 2026-08-14 16:25:02.373690: Saving plan best values to HA entities 2026-08-14 16:25:02.568079: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 16:25:02.574396: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 16:25:02.580292: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.14kWh, house 2.69kWh, export 0.0kWh, metric 1158.11p, metric10 1186.3p 2026-08-14 16:25:02.665423: Marginal costs baseline metric (no standing charge): 1058.1459 2026-08-14 16:25:02.961466: Marginal energy costs matrix computed: min=24.91 max=37.58 2026-08-14 16:25:03.050636: Rate array import [{'start': 985, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 985, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 16:25:03.051260: - Your estimated bill for today is £7.22 and tomorrow is £3.66 2026-08-14 16:25:03.051304: - Import rates are expensive (36.9p - 37.1p) for the next 35 minutes and then very expensive (43.9p - 53.4p) for the next 2 hours. 2026-08-14 16:25:03.051325: - The battery is currently at 74% and is in eco mode for the next 10 hours. 2026-08-14 16:25:03.051340: - For the next 48 hours there will be no solar generation. 2026-08-14 16:25:03.051354: - You will run out of battery in 14 hours. 2026-08-14 16:25:03.051372: - Your next charge slot will be in 10 hours where import rates will be cheap (24.8p). 2026-08-14 16:25:03.051386: 2026-08-14 16:25:03.107692: Plan calculation took 1.21 seconds 2026-08-14 16:25:03.111359: No high rate period found 2026-08-14 16:25:03.162340: Import threshold used for optimisation was 25.6p 2026-08-14 16:25:03.220438: Low import rate windows [0: 08-14 16:00:00 - 08-14 16:30:00 @ 37.06, 1: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 2: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 3: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 4: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 5: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 6: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 7: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 8: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 9: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 10: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 11: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 12: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 13: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 14: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 15: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 16: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 17: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 18: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 19: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 20: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 21: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 22: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 23: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 24: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 25: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 26: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 27: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 28: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 29: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 30: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 31: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 32: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 33: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 34: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 35: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 36: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 37: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 38: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 39: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 40: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 41: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 42: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 43: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 44: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 45: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 46: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 47: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 48: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 49: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 50: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 51: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 52: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 53: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 54: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 55: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 56: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 57: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 58: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 59: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 60: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 61: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 62: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 63: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 64: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 65: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 66: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 67: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 68: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 69: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 70: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 71: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 72: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 73: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 74: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 75: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 76: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 77: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 78: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 79: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 80: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 81: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 82: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 83: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 84: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 85: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 86: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 87: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 88: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 89: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 90: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 91: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 92: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 93: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 94: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 95: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13] 2026-08-14 16:25:03.228374: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 74%, target 16% 2026-08-14 16:25:03.228531: Inverter 0 disabled charge window while waiting for schedule (now 08-14 16:25:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 16:25:03.228640: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:25:03.228906: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:25:03.229024: No export window planned 2026-08-14 16:25:03.229152: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 16:25:03.229189: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:25:03.229328: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:25:03.229522: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 16:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 16:25:03.229588: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 16:25:03.229648: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 16:25:03.229739: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:25:03.229774: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:25:03.229802: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:25:03.229828: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:25:03.229879: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:25:03.229908: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:25:03.229932: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:25:03.230000: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:25:03.230031: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:25:03.230056: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:25:03.230080: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:25:03.230113: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:25:03.230138: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:25:03.230162: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:25:03.230183: Inverter 0 count register writes 0 2026-08-14 16:25:03.247083: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 16:25:03.247267: Recompute is saving previous plan... 2026-08-14 16:25:03.250510: Best charge window [ 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0% ] 2026-08-14 16:25:03.250616: Best export window [ ] 2026-08-14 16:25:03.251465: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 16:25:03.254547: Load divergence over 8.0 hours mean 421.65W, min 287.4W, max 1057.8W, std dev 149.79W, divergence 17.76% 2026-08-14 16:25:03.273835: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 16:25:03.273966: LoadML is_calculating False 2026-08-14 16:25:03.274036: Creating pool of 12 processes to match your CPU count 2026-08-14 16:25:03.363873: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 16:25:03.366159: Optimise levels pass started at 2026-08-14 16:25:03 2026-08-14 16:25:03.366247: Optimise all windows, total charge 95 export 1 2026-08-14 16:25:04.396073: >> Region optimisation pass width 960 gives best_metric 1091.62p, best_cost 1098.74p, best_cycle 36.92kWh, best_import 23.14kWh 2026-08-14 16:25:04.847429: >> Region optimisation pass width 480 gives best_metric 1091.62p, best_cost 1098.74p, best_cycle 36.92kWh, best_import 23.14kWh 2026-08-14 16:25:05.694006: >> Region optimisation pass width 240 gives best_metric 1091.54p, best_cost 1098.53p, best_cycle 36.91kWh, best_import 23.14kWh 2026-08-14 16:25:07.013428: >> Region optimisation pass width 120 gives best_metric 1091.54p, best_cost 1098.53p, best_cycle 36.91kWh, best_import 23.14kWh 2026-08-14 16:25:07.014184: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 86 2026-08-14 16:25:07.014289: Optimise levels pass ended at 2026-08-14 16:25:07, duration 3.6 seconds tried 362 combinations 2026-08-14 16:25:07.014404: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1091.54p, best_keep 0kWh, best_cycle 36.91kWh, best_carbon 0kg, best_import 23.14kWh 2026-08-14 16:25:07.037864: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3.0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 16:25:15.333859: Tweak plan optimisation started metric 1033.6p, cost 1042.43p 2026-08-14 16:25:15.676749: Tweak optimisation finished metric 1033.6p, cost 1042.43p, metric_keep 0kWh, cycle 35.21kWh, carbon 0kg, import 19.8kWh, changed 8 window(s) 2026-08-14 16:25:15.694643: Swap charge optimisation started metric 1033.6p, cost 1042.43p, min_improvement_swap 0.1p 2026-08-14 16:25:24.716072: Swap charge optimisation finished metric 1033.6p, cost 1042.43p 2026-08-14 16:25:24.839015: Pruned 1 dead plan slot(s) in 13 trial(s), nominal metric 1029.18p -> 1029.18p, plan now metric 1033.71p, cost 1042.43p, cycle 35.21kWh, import 19.8kWh 2026-08-14 16:25:24.849013: Raw charge windows [ 14-08 16:00:00 - 14-08 16:30:00 @ 37.06p 0%, 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 16%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 16%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 16%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100% ] reserve 1.12 2026-08-14 16:25:24.849534: Unclipped charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] reserve 1.12 2026-08-14 16:25:24.849783: Unfiltered charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] reserve 1.12 2026-08-14 16:25:24.849990: Filtered charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] reserve 1.12 2026-08-14 16:25:24.882158: Previous plan best metric is 1033.6 (cost 1042.43) and new plan best metric is 1033.6 (cost 1042.43) 2026-08-14 16:25:24.882355: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 16:25:24.882497: Plan valid is now true after recompute was False 2026-08-14 16:25:24.906382: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1273.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:15:00, load 43.76kWh, PV 0.0kWh 2026-08-14 16:25:25.009108: Battery has 12.83 hours left - now at 11.88kWh 2026-08-14 16:25:25.049060: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1307.58p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:25:00, load 45.1kWh, PV 0.0kWh 2026-08-14 16:25:25.130876: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1172.59p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.1kWh, PV 0.0kWh 2026-08-14 16:25:25.203279: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1142.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:55:00, load 43.76kWh, PV 0.0kWh 2026-08-14 16:25:25.203365: Saving plan best values to HA entities 2026-08-14 16:25:25.385201: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 16:25:25.392584: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 16:25:25.400093: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.12kWh, house 2.69kWh, export 0.0kWh, metric 1142.39p, metric10 1172.59p 2026-08-14 16:25:25.471838: Marginal costs baseline metric (no standing charge): 1042.4251 2026-08-14 16:25:25.762774: Marginal energy costs matrix computed: min=24.91 max=37.58 2026-08-14 16:25:25.842274: Rate array import [{'start': 985, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p - 37.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 26.7p)'}] export [{'start': 985, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 16:25:25.843088: - Your estimated bill for today is £7.22 and tomorrow is £3.66 2026-08-14 16:25:25.843146: - Import rates are expensive (36.9p - 37.1p) for the next 35 minutes and then very expensive (43.9p - 53.4p) for the next 2 hours. 2026-08-14 16:25:25.843172: - The battery is currently at 74% and is in eco mode for the next 10 hours. 2026-08-14 16:25:25.843206: - For the next 48 hours there will be no solar generation. 2026-08-14 16:25:25.843240: - You will run out of battery in 14 hours. 2026-08-14 16:25:25.843265: - Your next charge slot will be in 10 hours where import rates will be cheap (24.8p). 2026-08-14 16:25:25.843292: 2026-08-14 16:25:25.906531: Plan calculation took 22.66 seconds 2026-08-14 16:25:25.906912: Inverter 0: Type SK Sunsynk 2026-08-14 16:25:25.906994: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 16:25:25.907683: Reserve min: 7%, battery_min: 7% 2026-08-14 16:25:25.907778: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 16:25:25.908077: Inverter 0 SoC: 11.88kW 74%, current charge rate 5000W, current discharge rate 5250W, current battery power 498W, current battery voltage 51.2V, grid power -53W, load power 554W, PV Power 0W 2026-08-14 16:25:25.908343: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:25:25.908496: Inverter 0 scheduled charge enable is False 2026-08-14 16:25:25.908541: Inverter 0 charge windows currently [] 2026-08-14 16:25:25.908572: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 16:25:25.908692: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:25:25.908728: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:25:25.908764: Inverter 0 scheduled discharge enable is False 2026-08-14 16:25:25.908890: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:25:25.908927: Inverter 0 discharge windows currently [] 2026-08-14 16:25:25.908974: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:25:25.908996: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:25:25.909049: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:25:25.962618: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 74%, target 16% 2026-08-14 16:25:25.962745: Inverter 0 disabled charge window while waiting for schedule (now 08-14 16:25:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 16:25:25.962803: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:25:25.962955: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:25:25.963017: No export window planned 2026-08-14 16:25:25.963104: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 16:25:25.963135: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:25:25.963246: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:25:25.963390: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 16:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 16:25:25.963435: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 16:25:25.963496: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 16:25:25.963574: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:25:25.963602: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:25:25.963624: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:25:25.963645: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:25:25.963665: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:25:25.963686: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:25:25.963706: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:25:25.963751: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:25:25.963779: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:25:25.963800: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:25:25.963819: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:25:25.963840: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:25:25.963880: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:25:25.963901: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:25:25.963917: Inverter 0 count register writes 0 2026-08-14 16:25:25.982986: Total inverter register writes now 815 2026-08-14 16:25:26.018248: Info: Completed run status Demand 2026-08-14 16:25:26.025717: Info: record_status Demand 2026-08-14 16:25:26.033527: Saved current settings to /config/predbat_config.json 2026-08-14 16:25:26.033926: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 16:25:57.150510: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:25:57.150760: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:25:57.150796: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:25:57.150912: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:25:57.150945: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:25:57.150962: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:25:57.150977: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:27:06.148012: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 16:27:14.384595: Processing 1345 30-minute periods for power integration 2026-08-14 16:27:14.510464: ML Component: Car charging hold False, car energy reported load False 2026-08-14 16:27:14.610185: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 16:27:14.714732: ML Temperature data points: 49416 2026-08-14 16:27:15.978076: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 16:27:15.997920: ML Component: Data fetch completed, load data age 56.0 days, 16174 data points 2026-08-14 16:27:15.998044: ML Component: No training needed, model age is 1.7 hours 2026-08-14 16:27:15.998116: ML Component: Generating predictions load data age 56.0 days, 16174 data points 2026-08-14 16:27:16.139716: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0627 max_dow {0: 0.10282812496256083, 1: 0.11130937486607581, 2: 0.11949062483031303, 3: 0.1146749994263053, 4: 0.1683562503574416, 5: 0.10196875002831221, 6: 0.10919687573947012} 2026-08-14 16:27:16.610460: ML Component: Generated 576 predictions (total 37.62 kWh over 48h) 2026-08-14 16:27:16.670389: ML Component: Prediction cycle completed 2026-08-14 16:27:16.779893: ML Component: Saved 16174 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 16:27:57.400545: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:27:57.400756: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:27:57.400793: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:27:57.400901: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:27:57.400935: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:27:57.400983: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:27:57.401001: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:30:00.631180: --------------- PredBat - update at 2026-08-14 16:30:00+01:00 with clock skew 0 minutes, minutes now 990 2026-08-14 16:30:00.632041: Saved current settings to /config/predbat_config.json 2026-08-14 16:30:00.632181: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 45.0 minutes 2026-08-14 16:30:00.632269: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 16:30:00.632448: Autoupdate: Currently up to date 2026-08-14 16:30:00.656632: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 16:30:00.656770: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 16:30:00.656938: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 16:30:00.657650: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 16:30:00.657831: Predbat mode is set to Control charge & discharge 2026-08-14 16:30:00.871841: Found 21602 load_today datapoints going back 28 days 2026-08-14 16:30:00.872000: Using load_power data to fill gaps in load_today data 2026-08-14 16:30:01.754258: Processing 721 30-minute periods for power integration 2026-08-14 16:30:01.929372: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 16:30:01.929824: Car charging hold False, threshold 6.0kWh 2026-08-14 16:30:01.929943: Current data so far today: load 15.6kWh, import 28.7kWh, export 0.0kWh, PV 0kWh 2026-08-14 16:30:01.957752: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 16:30:01.958316: Standing charge is set to 49.98p 2026-08-14 16:30:02.007877: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 16:30:02.007983: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 16:30:02.008271: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 355.0 minutes 2026-08-14 16:30:02.008809: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 355.0 minutes 2026-08-14 16:30:02.016991: Loaded 95 datapoints of futurerate analysis 2026-08-14 16:30:02.175348: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35'] 2026-08-14 16:30:02.221374: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 16:30:02.221713: Import rates: min 13.77p, max 53.39p, average 26.73p 2026-08-14 16:30:02.269020: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 16:30:02.269179: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 16:30:02.270407: High export rate found rates in range 99p to -99p 2026-08-14 16:30:02.373755: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 16:30:02.373901: Car 0 charging is not planned as it is not plugged in 2026-08-14 16:30:02.390515: Battery level now 11.88kWh, -1hr ago 10.08kWh, at midnight 2.43kWh, battery value change in the last hour 21.29p, change today 111.73p, rate_forward 11.83p 2026-08-14 16:30:02.390971: Last hour: net energy 2.65kWh, import 2.65kWh, export 0.0kWh, car 0kWh, load 0.55kWh, net cost 65.87p, import 65.87p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 16:30:02.459447: Today's energy total net 28.7kWh, import 28.7kWh, export 0.0kWh, cost 722.1p, import 672.11p, export 0.0p, carbon 0.0kg 2026-08-14 16:30:02.459655: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 16:30:02.583928: Using weighted-bucket historical load forecast over 14 days 2026-08-14 16:30:02.625149: Today's load divergence 129.77%, in-day adjustment 134.07%, damping 0.95x, yesterday 146.81% today 128.28% blend 31.25% 2026-08-14 16:30:02.625300: Today's predicted so far 9.59kWh with 0.0kWh car/iBoost excluded, 17.37kWh import ignored, and 9.59kWh forecast extra. 2026-08-14 16:30:02.625378: Today's actual load so far 15.66kWh with 0.0kWh car/iBoost excluded, and 17.37kWh import ignored. 2026-08-14 16:30:02.666116: Inverter 0: Type SK Sunsynk 2026-08-14 16:30:02.666209: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 16:30:02.666780: Reserve min: 7%, battery_min: 7% 2026-08-14 16:30:02.666861: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 16:30:02.667126: Inverter 0 SoC: 11.84kW 74%, current charge rate 5000W, current discharge rate 5250W, current battery power 438W, current battery voltage 51.2V, grid power -54W, load power 505W, PV Power 0W 2026-08-14 16:30:02.667286: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:30:02.667390: Inverter 0 scheduled charge enable is False 2026-08-14 16:30:02.667426: Inverter 0 charge windows currently [] 2026-08-14 16:30:02.667452: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 16:30:02.667565: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:30:02.667601: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:30:02.667639: Inverter 0 scheduled discharge enable is False 2026-08-14 16:30:02.667762: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:30:02.667799: Inverter 0 discharge windows currently [] 2026-08-14 16:30:02.667822: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:30:02.667841: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:30:02.667858: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:30:02.732794: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 16:30:02.732923: Plan was last updated on 2026-08-14 16:25:00+01:00 and is now 5.0 minutes old 2026-08-14 16:30:02.733421: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 16:30:02.733476: Best export window [ ] 2026-08-14 16:30:02.734220: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 16:30:02.737112: Load divergence over 8.0 hours mean 423.04W, min 279.0W, max 1138.2W, std dev 153.3W, divergence 18.12% 2026-08-14 16:30:02.754758: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 16:30:02.754882: LoadML is_calculating False 2026-08-14 16:30:02.754956: Creating pool of 12 processes to match your CPU count 2026-08-14 16:30:02.866248: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1273.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:20:00, load 43.66kWh, PV 0.0kWh 2026-08-14 16:30:03.007321: Battery has 12.83 hours left - now at 11.84kWh 2026-08-14 16:30:03.056313: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1307.65p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:35:00, load 44.99kWh, PV 0.0kWh 2026-08-14 16:30:03.149003: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1177.93p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 44.99kWh, PV 0.0kWh 2026-08-14 16:30:03.239089: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1149.01p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 07:00:00, load 43.66kWh, PV 0.0kWh 2026-08-14 16:30:03.239190: Saving plan best values to HA entities 2026-08-14 16:30:03.425878: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 16:30:03.432029: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 16:30:03.438006: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.62kWh, house 2.64kWh, export 0.0kWh, metric 1149.01p, metric10 1177.93p 2026-08-14 16:30:03.518659: Marginal costs baseline metric (no standing charge): 1049.0478 2026-08-14 16:30:03.833685: Marginal energy costs matrix computed: min=25.05 max=37.11 2026-08-14 16:30:03.921589: Rate array import [{'start': 990, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 990, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 16:30:03.922346: - Your estimated bill for today is £7.22 and tomorrow is £3.65 2026-08-14 16:30:03.922397: - Import rates are expensive (36.9p) for the next 30 minutes and then very expensive (43.9p - 53.4p) for the next 2 hours. 2026-08-14 16:30:03.922420: - The battery is currently at 74% and is in eco mode for the next 10 hours. 2026-08-14 16:30:03.922440: - For the next 48 hours there will be no solar generation. 2026-08-14 16:30:03.922457: - You will run out of battery in 14 hours. 2026-08-14 16:30:03.922490: - Your next charge slot will be in 10 hours where import rates will be cheap (24.8p). 2026-08-14 16:30:03.922516: 2026-08-14 16:30:03.994868: Plan calculation took 1.26 seconds 2026-08-14 16:30:04.000451: No high rate period found 2026-08-14 16:30:04.067018: Import threshold used for optimisation was 25.6p 2026-08-14 16:30:04.143710: Low import rate windows [0: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 1: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 2: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 3: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 4: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 5: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 6: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 7: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 8: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 9: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 10: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 11: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 12: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 13: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 14: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 15: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 16: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 17: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 18: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 19: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 20: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 21: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 22: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 23: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 24: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 25: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 26: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 27: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 28: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 29: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 30: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 31: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 32: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 33: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 34: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 35: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 36: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 37: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 38: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 39: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 40: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 41: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 42: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 43: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 44: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 45: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 46: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 47: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 48: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 49: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 50: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 51: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 52: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 53: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 54: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 55: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 56: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 57: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 58: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 59: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 60: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 61: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 62: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 63: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 64: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 65: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 66: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 67: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 68: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 69: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 70: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 71: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 72: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 73: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 74: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 75: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 76: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 77: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 78: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 79: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 80: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 81: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 82: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 83: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 84: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 85: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 86: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 87: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 88: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 89: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 90: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 91: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 92: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 93: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 94: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13] 2026-08-14 16:30:04.156096: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 74%, target 16% 2026-08-14 16:30:04.156258: Inverter 0 disabled charge window while waiting for schedule (now 08-14 16:30:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 16:30:04.156395: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:30:04.156664: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:30:04.156755: No export window planned 2026-08-14 16:30:04.156870: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 16:30:04.156906: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:30:04.157122: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:30:04.157317: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 16:30:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 16:30:04.157401: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 16:30:04.157470: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 16:30:04.157560: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:30:04.157602: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:30:04.157630: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:30:04.157655: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:30:04.157680: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:30:04.157706: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:30:04.157730: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:30:04.157797: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:30:04.157832: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:30:04.157858: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:30:04.157883: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:30:04.157906: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:30:04.157935: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:30:04.157959: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:30:04.157980: Inverter 0 count register writes 0 2026-08-14 16:30:04.176872: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 16:30:04.183794: Total inverter register writes now 815 2026-08-14 16:30:04.222908: Info: Completed run status Demand 2026-08-14 16:30:04.231144: Info: record_status Demand 2026-08-14 16:30:04.239135: Saved current settings to /config/predbat_config.json 2026-08-14 16:30:04.239585: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 16:30:42.351951: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:30:42.352283: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:30:42.352364: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:30:42.352585: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:30:42.352638: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:30:42.352684: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:30:42.352723: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:32:56.623150: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:32:56.623408: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:32:56.623449: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:32:56.623579: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:32:56.623618: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:32:56.623638: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:32:56.623656: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:34:56.850948: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:34:56.851298: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:34:56.851417: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:34:56.851736: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:34:56.851801: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:34:56.851845: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:34:56.851884: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:35:00.937779: --------------- PredBat - update at 2026-08-14 16:35:00+01:00 with clock skew 0 minutes, minutes now 995 2026-08-14 16:35:00.938530: Saved current settings to /config/predbat_config.json 2026-08-14 16:35:00.938705: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 50.0 minutes 2026-08-14 16:35:00.938801: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 16:35:00.938891: Autoupdate: Currently up to date 2026-08-14 16:35:00.960834: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 16:35:00.961002: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 16:35:00.961181: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 16:35:00.961719: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 16:35:00.961842: Predbat mode is set to Control charge & discharge 2026-08-14 16:35:01.159858: Found 21602 load_today datapoints going back 28 days 2026-08-14 16:35:01.160016: Using load_power data to fill gaps in load_today data 2026-08-14 16:35:01.937362: Processing 721 30-minute periods for power integration 2026-08-14 16:35:02.133638: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 16:35:02.133776: Car charging hold False, threshold 6.0kWh 2026-08-14 16:35:02.133823: Current data so far today: load 15.6kWh, import 28.7kWh, export 0.0kWh, PV 0kWh 2026-08-14 16:35:02.151620: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 16:35:02.152370: Standing charge is set to 49.98p 2026-08-14 16:35:02.200823: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 16:35:02.200934: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 16:35:02.201214: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 360.0 minutes 2026-08-14 16:35:02.201677: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 360.0 minutes 2026-08-14 16:35:02.207619: Loaded 95 datapoints of futurerate analysis 2026-08-14 16:35:02.368437: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35'] 2026-08-14 16:35:02.418664: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 16:35:02.419212: Import rates: min 13.77p, max 53.39p, average 26.73p 2026-08-14 16:35:02.483589: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 16:35:02.483724: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 16:35:02.485033: High export rate found rates in range 99p to -99p 2026-08-14 16:35:02.581742: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 16:35:02.581872: Car 0 charging is not planned as it is not plugged in 2026-08-14 16:35:02.595991: Battery level now 11.84kWh, -1hr ago 10.08kWh, at midnight 2.43kWh, battery value change in the last hour 20.81p, change today 111.26p, rate_forward 11.83p 2026-08-14 16:35:02.596465: Last hour: net energy 2.5kWh, import 2.5kWh, export 0.0kWh, car 0kWh, load 0.5kWh, net cost 62.57p, import 62.57p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 16:35:02.673396: Today's energy total net 28.7kWh, import 28.7kWh, export 0.0kWh, cost 722.1p, import 672.11p, export 0.0p, carbon 0.0kg 2026-08-14 16:35:02.673578: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 16:35:02.772116: Using weighted-bucket historical load forecast over 14 days 2026-08-14 16:35:02.803716: Today's load divergence 129.92%, in-day adjustment 134.11%, damping 0.95x, yesterday 146.81% today 128.43% blend 30.9% 2026-08-14 16:35:02.803826: Today's predicted so far 9.66kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 9.66kWh forecast extra. 2026-08-14 16:35:02.803861: Today's actual load so far 15.77kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 16:35:02.844716: Inverter 0: Type SK Sunsynk 2026-08-14 16:35:02.844823: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 16:35:02.845481: Reserve min: 7%, battery_min: 7% 2026-08-14 16:35:02.845585: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 16:35:02.845930: Inverter 0 SoC: 11.84kW 74%, current charge rate 5000W, current discharge rate 5250W, current battery power 450W, current battery voltage 51.2V, grid power -55W, load power 520W, PV Power 0W 2026-08-14 16:35:02.846139: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:35:02.846257: Inverter 0 scheduled charge enable is False 2026-08-14 16:35:02.846312: Inverter 0 charge windows currently [] 2026-08-14 16:35:02.846363: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 16:35:02.846532: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:35:02.846576: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:35:02.846622: Inverter 0 scheduled discharge enable is False 2026-08-14 16:35:02.846814: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:35:02.846857: Inverter 0 discharge windows currently [] 2026-08-14 16:35:02.846882: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:35:02.846918: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:35:02.846952: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:35:02.907670: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 16:35:02.907785: Plan was last updated on 2026-08-14 16:25:00+01:00 and is now 10.0 minutes old 2026-08-14 16:35:02.908063: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 16:35:02.908107: Best export window [ ] 2026-08-14 16:35:02.909022: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 16:35:02.912099: Load divergence over 8.0 hours mean 424.4W, min 267.0W, max 1243.8W, std dev 173.69W, divergence 20.46% 2026-08-14 16:35:02.931343: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 16:35:02.931462: LoadML is_calculating False 2026-08-14 16:35:02.931525: Creating pool of 12 processes to match your CPU count 2026-08-14 16:35:03.049214: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1273.41p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:25:00, load 43.69kWh, PV 0.0kWh 2026-08-14 16:35:03.202821: Battery has 12.83 hours left - now at 11.84kWh 2026-08-14 16:35:03.254104: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1307.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:40:00, load 45.03kWh, PV 0.0kWh 2026-08-14 16:35:03.343886: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1183.05p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.03kWh, PV 0.0kWh 2026-08-14 16:35:03.422104: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1155.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:55:00, load 43.69kWh, PV 0.0kWh 2026-08-14 16:35:03.422202: Saving plan best values to HA entities 2026-08-14 16:35:03.632154: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 16:35:03.639248: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 16:35:03.645902: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.04kWh, house 2.67kWh, export 0.0kWh, metric 1155.39p, metric10 1183.05p 2026-08-14 16:35:03.719035: Marginal costs baseline metric (no standing charge): 1055.4187 2026-08-14 16:35:03.958223: Marginal energy costs matrix computed: min=25.05 max=36.54 2026-08-14 16:35:04.046137: Rate array import [{'start': 995, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 995, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 16:35:04.046790: - Your estimated bill for today is £7.22 and tomorrow is £3.64 2026-08-14 16:35:04.046837: - Import rates are expensive (36.9p) for the next 25 minutes and then very expensive (43.9p - 53.4p) for the next 2 hours. 2026-08-14 16:35:04.046857: - The battery is currently at 74% and is in eco mode for the next 9 hours. 2026-08-14 16:35:04.046871: - For the next 48 hours there will be no solar generation. 2026-08-14 16:35:04.046886: - You will run out of battery in 14 hours. 2026-08-14 16:35:04.046901: - Your next charge slot will be in 9 hours where import rates will be cheap (24.8p). 2026-08-14 16:35:04.046914: 2026-08-14 16:35:04.111243: Plan calculation took 1.20 seconds 2026-08-14 16:35:04.117048: No high rate period found 2026-08-14 16:35:04.168880: Import threshold used for optimisation was 25.6p 2026-08-14 16:35:04.222604: Low import rate windows [0: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 1: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 2: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 3: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 4: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 5: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 6: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 7: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 8: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 9: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 10: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 11: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 12: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 13: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 14: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 15: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 16: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 17: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 18: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 19: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 20: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 21: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 22: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 23: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 24: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 25: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 26: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 27: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 28: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 29: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 30: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 31: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 32: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 33: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 34: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 35: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 36: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 37: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 38: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 39: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 40: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 41: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 42: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 43: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 44: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 45: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 46: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 47: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 48: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 49: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 50: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 51: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 52: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 53: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 54: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 55: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 56: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 57: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 58: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 59: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 60: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 61: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 62: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 63: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 64: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 65: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 66: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 67: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 68: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 69: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 70: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 71: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 72: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 73: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 74: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 75: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 76: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 77: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 78: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 79: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 80: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 81: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 82: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 83: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 84: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 85: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 86: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 87: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 88: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 89: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 90: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 91: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 92: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 93: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 94: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 95: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13] 2026-08-14 16:35:04.230636: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 74%, target 16% 2026-08-14 16:35:04.230782: Inverter 0 disabled charge window while waiting for schedule (now 08-14 16:35:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 16:35:04.230895: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:35:04.231233: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:35:04.231329: No export window planned 2026-08-14 16:35:04.231444: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 16:35:04.231482: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:35:04.231622: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:35:04.231798: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 16:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 16:35:04.231862: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 16:35:04.231922: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 16:35:04.232020: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:35:04.232054: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:35:04.232083: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:35:04.232108: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:35:04.232134: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:35:04.232159: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:35:04.232199: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:35:04.232265: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:35:04.232303: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:35:04.232329: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:35:04.232356: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:35:04.232380: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:35:04.232408: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:35:04.232433: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:35:04.232455: Inverter 0 count register writes 0 2026-08-14 16:35:04.249358: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 16:35:04.249548: Recompute is saving previous plan... 2026-08-14 16:35:04.252675: Best charge window [ 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0% ] 2026-08-14 16:35:04.252767: Best export window [ ] 2026-08-14 16:35:04.253722: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 16:35:04.256896: Load divergence over 8.0 hours mean 424.4W, min 267.0W, max 1243.8W, std dev 173.69W, divergence 20.46% 2026-08-14 16:35:04.276707: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 16:35:04.276892: LoadML is_calculating False 2026-08-14 16:35:04.277052: Creating pool of 12 processes to match your CPU count 2026-08-14 16:35:04.355372: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 16:35:04.357583: Optimise levels pass started at 2026-08-14 16:35:04 2026-08-14 16:35:04.357651: Optimise all windows, total charge 95 export 1 2026-08-14 16:35:05.369692: >> Region optimisation pass width 960 gives best_metric 1091.12p, best_cost 1098.28p, best_cycle 36.87kWh, best_import 23.1kWh 2026-08-14 16:35:05.799517: >> Region optimisation pass width 480 gives best_metric 1091.12p, best_cost 1098.28p, best_cycle 36.87kWh, best_import 23.1kWh 2026-08-14 16:35:06.627029: >> Region optimisation pass width 240 gives best_metric 1091.03p, best_cost 1098.06p, best_cycle 36.86kWh, best_import 23.09kWh 2026-08-14 16:35:07.992537: >> Region optimisation pass width 120 gives best_metric 1091.03p, best_cost 1098.06p, best_cycle 36.86kWh, best_import 23.09kWh 2026-08-14 16:35:07.992980: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 85 2026-08-14 16:35:07.993490: Optimise levels pass ended at 2026-08-14 16:35:07, duration 3.6 seconds tried 361 combinations 2026-08-14 16:35:07.993663: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1091.03p, best_keep 0kWh, best_cycle 36.86kWh, best_carbon 0kg, best_import 23.09kWh 2026-08-14 16:35:08.017091: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3.0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 16:35:16.113513: Tweak plan optimisation started metric 1031.06p, cost 1039.85p 2026-08-14 16:35:16.477560: Tweak optimisation finished metric 1031.06p, cost 1039.85p, metric_keep 0kWh, cycle 35.17kWh, carbon 0kg, import 19.7kWh, changed 8 window(s) 2026-08-14 16:35:16.502301: Swap charge optimisation started metric 1031.06p, cost 1039.85p, min_improvement_swap 0.1p 2026-08-14 16:35:25.524073: Swap charge optimisation finished metric 1031.06p, cost 1039.85p 2026-08-14 16:35:25.692926: Pruned 1 dead plan slot(s) in 13 trial(s), nominal metric 1026.61p -> 1026.61p, plan now metric 1031.06p, cost 1039.85p, cycle 35.17kWh, import 19.7kWh 2026-08-14 16:35:25.705756: Raw charge windows [ 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 16%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 16%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 16%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100% ] reserve 1.12 2026-08-14 16:35:25.706664: Unclipped charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 17:00:00 @ 28.68p 100% ] reserve 1.12 2026-08-14 16:35:25.706976: Unfiltered charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 17:00:00 @ 28.68p 100% ] reserve 1.12 2026-08-14 16:35:25.707246: Filtered charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 17:00:00 @ 28.68p 100% ] reserve 1.12 2026-08-14 16:35:25.742675: Previous plan best metric is 1031.0 (cost 1039.85) and new plan best metric is 1031.06 (cost 1039.85) 2026-08-14 16:35:25.742953: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 16:35:25.743200: Plan valid is now true after recompute was False 2026-08-14 16:35:25.767958: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1270.73p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:25:00, load 43.52kWh, PV 0.0kWh 2026-08-14 16:35:25.892002: Battery has 12.83 hours left - now at 11.84kWh 2026-08-14 16:35:25.932841: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1304.58p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:40:00, load 44.85kWh, PV 0.0kWh 2026-08-14 16:35:26.000723: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1169.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 44.85kWh, PV 0.0kWh 2026-08-14 16:35:26.084125: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1139.82p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:55:00, load 43.52kWh, PV 0.0kWh 2026-08-14 16:35:26.084231: Saving plan best values to HA entities 2026-08-14 16:35:26.234657: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 16:35:26.239921: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 16:35:26.245072: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.03kWh, house 2.67kWh, export 0.0kWh, metric 1139.82p, metric10 1169.51p 2026-08-14 16:35:26.314019: Marginal costs baseline metric (no standing charge): 1039.854 2026-08-14 16:35:26.545940: Marginal energy costs matrix computed: min=25.05 max=36.54 2026-08-14 16:35:26.623116: Rate array import [{'start': 995, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 26.7p)'}] export [{'start': 995, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 16:35:26.624009: - Your estimated bill for today is £7.22 and tomorrow is £3.64 2026-08-14 16:35:26.624104: - Import rates are expensive (36.9p) for the next 25 minutes and then very expensive (43.9p - 53.4p) for the next 2 hours. 2026-08-14 16:35:26.624141: - The battery is currently at 74% and is in eco mode for the next 9 hours. 2026-08-14 16:35:26.624170: - For the next 48 hours there will be no solar generation. 2026-08-14 16:35:26.624199: - You will run out of battery in 14 hours. 2026-08-14 16:35:26.624214: - Your next charge slot will be in 9 hours where import rates will be cheap (24.8p). 2026-08-14 16:35:26.624233: 2026-08-14 16:35:26.701052: Plan calculation took 22.45 seconds 2026-08-14 16:35:26.701492: Inverter 0: Type SK Sunsynk 2026-08-14 16:35:26.701571: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 16:35:26.702330: Reserve min: 7%, battery_min: 7% 2026-08-14 16:35:26.702424: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 16:35:26.702729: Inverter 0 SoC: 11.84kW 74%, current charge rate 5000W, current discharge rate 5250W, current battery power 457W, current battery voltage 51.2V, grid power -56W, load power 530W, PV Power 0W 2026-08-14 16:35:26.703132: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:35:26.703337: Inverter 0 scheduled charge enable is False 2026-08-14 16:35:26.703409: Inverter 0 charge windows currently [] 2026-08-14 16:35:26.703469: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 16:35:26.703690: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:35:26.703742: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:35:26.703786: Inverter 0 scheduled discharge enable is False 2026-08-14 16:35:26.703958: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:35:26.704014: Inverter 0 discharge windows currently [] 2026-08-14 16:35:26.704056: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:35:26.704091: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:35:26.704111: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:35:26.772072: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 74%, target 16% 2026-08-14 16:35:26.772246: Inverter 0 disabled charge window while waiting for schedule (now 08-14 16:35:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 16:35:26.772334: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:35:26.772521: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:35:26.772604: No export window planned 2026-08-14 16:35:26.772716: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 16:35:26.772752: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:35:26.772890: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:35:26.773088: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 16:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 16:35:26.773148: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 16:35:26.773227: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 16:35:26.773322: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:35:26.773364: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:35:26.773392: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:35:26.773446: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:35:26.773474: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:35:26.773498: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:35:26.773524: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:35:26.773583: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:35:26.773617: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:35:26.773642: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:35:26.773670: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:35:26.773694: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:35:26.773726: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:35:26.773750: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:35:26.773775: Inverter 0 count register writes 0 2026-08-14 16:35:26.796616: Total inverter register writes now 815 2026-08-14 16:35:26.830283: Info: Completed run status Demand 2026-08-14 16:35:26.837458: Info: record_status Demand 2026-08-14 16:35:26.846009: Saved current settings to /config/predbat_config.json 2026-08-14 16:35:26.846303: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 16:35:56.942461: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:35:56.942702: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:35:56.942746: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:35:56.942884: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:35:56.942923: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:35:56.942945: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:35:56.942962: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:37:57.163098: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:37:57.163372: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:37:57.163416: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:37:57.163555: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:37:57.163592: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:37:57.163613: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:37:57.163630: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:39:57.386877: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:39:57.387180: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:39:57.387249: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:39:57.387403: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:39:57.387446: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:39:57.387488: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:39:57.387507: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:40:00.260682: --------------- PredBat - update at 2026-08-14 16:40:00+01:00 with clock skew 0 minutes, minutes now 1000 2026-08-14 16:40:00.261761: Saved current settings to /config/predbat_config.json 2026-08-14 16:40:00.261908: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 55.0 minutes 2026-08-14 16:40:00.261992: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 16:40:00.262094: Autoupdate: Currently up to date 2026-08-14 16:40:00.387030: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 16:40:00.387198: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 16:40:00.387373: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 16:40:00.388065: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 16:40:00.388217: Predbat mode is set to Control charge & discharge 2026-08-14 16:40:00.639681: Found 21602 load_today datapoints going back 28 days 2026-08-14 16:40:00.639819: Using load_power data to fill gaps in load_today data 2026-08-14 16:40:01.408034: Processing 721 30-minute periods for power integration 2026-08-14 16:40:01.586867: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 16:40:01.587044: Car charging hold False, threshold 6.0kWh 2026-08-14 16:40:01.587133: Current data so far today: load 15.72kWh, import 28.7kWh, export 0.0kWh, PV 0kWh 2026-08-14 16:40:01.609695: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 16:40:01.610427: Standing charge is set to 49.98p 2026-08-14 16:40:01.689520: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 16:40:01.689662: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 16:40:01.689948: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 365.0 minutes 2026-08-14 16:40:01.690648: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 365.0 minutes 2026-08-14 16:40:01.699426: Loaded 95 datapoints of futurerate analysis 2026-08-14 16:40:01.840226: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35'] 2026-08-14 16:40:01.877964: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 16:40:01.878314: Import rates: min 13.77p, max 53.39p, average 26.72p 2026-08-14 16:40:01.913142: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 16:40:01.913267: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 16:40:01.914323: High export rate found rates in range 99p to -99p 2026-08-14 16:40:01.996456: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 16:40:01.996594: Car 0 charging is not planned as it is not plugged in 2026-08-14 16:40:02.008902: Battery level now 11.84kWh, -1hr ago 10.26kWh, at midnight 2.43kWh, battery value change in the last hour 18.64p, change today 111.26p, rate_forward 11.83p 2026-08-14 16:40:02.009282: Last hour: net energy 2.0kWh, import 2.0kWh, export 0.0kWh, car 0kWh, load 0.57kWh, net cost 51.56p, import 51.56p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 16:40:02.070358: Today's energy total net 28.7kWh, import 28.7kWh, export 0.0kWh, cost 722.1p, import 672.11p, export 0.0p, carbon 0.0kg 2026-08-14 16:40:02.070531: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 16:40:02.150456: Using weighted-bucket historical load forecast over 14 days 2026-08-14 16:40:02.174207: Today's load divergence 130.14%, in-day adjustment 134.19%, damping 0.95x, yesterday 146.81% today 128.63% blend 30.56% 2026-08-14 16:40:02.174299: Today's predicted so far 9.66kWh with 0.0kWh car/iBoost excluded, 17.18kWh import ignored, and 9.66kWh forecast extra. 2026-08-14 16:40:02.174327: Today's actual load so far 15.83kWh with 0.0kWh car/iBoost excluded, and 17.18kWh import ignored. 2026-08-14 16:40:02.213881: Inverter 0: Type SK Sunsynk 2026-08-14 16:40:02.213982: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 16:40:02.214560: Reserve min: 7%, battery_min: 7% 2026-08-14 16:40:02.214658: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 16:40:02.215056: Inverter 0 SoC: 11.82kW 74%, current charge rate 5000W, current discharge rate 5250W, current battery power 1534W, current battery voltage 51.2V, grid power -53W, load power 1592W, PV Power 0W 2026-08-14 16:40:02.215341: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:40:02.215458: Inverter 0 scheduled charge enable is False 2026-08-14 16:40:02.215508: Inverter 0 charge windows currently [] 2026-08-14 16:40:02.215550: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 16:40:02.215697: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:40:02.215736: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:40:02.215778: Inverter 0 scheduled discharge enable is False 2026-08-14 16:40:02.215934: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:40:02.215972: Inverter 0 discharge windows currently [] 2026-08-14 16:40:02.215993: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:40:02.216029: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:40:02.216059: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:40:02.286757: Dynamic load last period 0.30kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 16:40:02.286932: Plan was last updated on 2026-08-14 16:35:00+01:00 and is now 5.0 minutes old 2026-08-14 16:40:02.287259: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 16:40:02.287308: Best export window [ ] 2026-08-14 16:40:02.288168: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 16:40:02.291322: Load divergence over 8.0 hours mean 425.99W, min 274.2W, max 1206.0W, std dev 170.23W, divergence 19.98% 2026-08-14 16:40:02.312530: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 16:40:02.312651: LoadML is_calculating False 2026-08-14 16:40:02.312712: Creating pool of 12 processes to match your CPU count 2026-08-14 16:40:02.411262: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1271.82p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:30:00, load 43.7kWh, PV 0.0kWh 2026-08-14 16:40:02.586262: Battery has 12.83 hours left - now at 11.82kWh 2026-08-14 16:40:02.636490: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1305.76p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:40:00, load 45.03kWh, PV 0.0kWh 2026-08-14 16:40:02.741565: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1175.98p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.03kWh, PV 0.0kWh 2026-08-14 16:40:02.852832: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1147.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 07:00:00, load 43.7kWh, PV 0.0kWh 2026-08-14 16:40:02.852933: Saving plan best values to HA entities 2026-08-14 16:40:03.053090: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 16:40:03.058086: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 16:40:03.063251: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.53kWh, house 2.67kWh, export 0.0kWh, metric 1147.33p, metric10 1175.98p 2026-08-14 16:40:03.139411: Marginal costs baseline metric (no standing charge): 1047.3646 2026-08-14 16:40:03.397010: Marginal energy costs matrix computed: min=24.91 max=36.05 2026-08-14 16:40:03.473593: Rate array import [{'start': 1000, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1000, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 16:40:03.474277: - Your estimated bill for today is £7.22 and tomorrow is £3.63 2026-08-14 16:40:03.474324: - Import rates are expensive (36.9p) for the next 20 minutes and then very expensive (43.9p - 53.4p) for the next 2 hours. 2026-08-14 16:40:03.474343: - The battery is currently at 74% and is in eco mode for the next 9 hours. 2026-08-14 16:40:03.474358: - For the next 48 hours there will be no solar generation. 2026-08-14 16:40:03.474373: - You will run out of battery in 14 hours. 2026-08-14 16:40:03.474387: - Your next charge slot will be in 9 hours where import rates will be cheap (24.8p). 2026-08-14 16:40:03.474401: 2026-08-14 16:40:03.534372: Plan calculation took 1.25 seconds 2026-08-14 16:40:03.537492: No high rate period found 2026-08-14 16:40:03.584854: Import threshold used for optimisation was 26.25p 2026-08-14 16:40:03.635150: Low import rate windows [0: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 1: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 2: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 3: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 4: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 5: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 6: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 7: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 8: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 9: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 10: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 11: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 12: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 13: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 14: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 15: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 16: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 17: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 18: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 19: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 20: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 21: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 22: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 23: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 24: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 25: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 26: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 27: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 28: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 29: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 30: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 31: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 32: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 33: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 34: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 35: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 36: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 37: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 38: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 39: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 40: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 41: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 42: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 43: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 44: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 45: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 46: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 47: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 48: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 49: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 50: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 51: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 52: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 53: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 54: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 55: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 56: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 57: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 58: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 59: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 60: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 61: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 62: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 63: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 64: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 65: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 66: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 67: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 68: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 69: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 70: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 71: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 72: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 73: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 74: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 75: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 76: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 77: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 78: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 79: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 80: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 81: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 82: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 83: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 84: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 85: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 86: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 87: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 88: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 89: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 90: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 91: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 92: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 93: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 94: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 95: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13] 2026-08-14 16:40:03.643908: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 74%, target 16% 2026-08-14 16:40:03.644051: Inverter 0 disabled charge window while waiting for schedule (now 08-14 16:40:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 16:40:03.644174: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:40:03.644444: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:40:03.644538: No export window planned 2026-08-14 16:40:03.644646: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 16:40:03.644683: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:40:03.644821: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:40:03.645060: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 16:40:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 16:40:03.645151: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 16:40:03.645215: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 16:40:03.645315: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:40:03.645349: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:40:03.645377: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:40:03.645401: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:40:03.645425: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:40:03.645451: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:40:03.645477: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:40:03.645538: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:40:03.645567: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:40:03.645592: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:40:03.645648: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:40:03.645676: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:40:03.645702: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:40:03.645737: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:40:03.645759: Inverter 0 count register writes 0 2026-08-14 16:40:03.662625: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 16:40:03.667913: Total inverter register writes now 815 2026-08-14 16:40:03.705605: Info: Completed run status Demand 2026-08-14 16:40:03.711948: Info: record_status Demand 2026-08-14 16:40:03.718590: Saved current settings to /config/predbat_config.json 2026-08-14 16:40:03.718902: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 16:40:41.826930: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:40:41.827237: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:40:41.827283: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:40:41.827406: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:40:41.827460: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:40:41.827498: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:40:41.827538: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:42:42.047914: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:42:42.048254: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:42:42.048305: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:42:42.048511: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:42:42.048561: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:42:42.048592: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:42:42.048626: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:44:42.290071: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:44:42.290447: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:44:42.290520: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:44:42.290764: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:44:42.290820: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:44:42.290846: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:44:42.290867: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:45:00.420569: --------------- PredBat - update at 2026-08-14 16:45:00+01:00 with clock skew 0 minutes, minutes now 1005 2026-08-14 16:45:00.421395: Saved current settings to /config/predbat_config.json 2026-08-14 16:45:00.421525: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 60.0 minutes 2026-08-14 16:45:00.421683: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 16:45:00.421780: Autoupdate: Currently up to date 2026-08-14 16:45:00.440881: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 16:45:00.441065: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 16:45:00.441268: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 16:45:00.441780: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 16:45:00.441901: Predbat mode is set to Control charge & discharge 2026-08-14 16:45:01.154518: Found 21602 load_today datapoints going back 28 days 2026-08-14 16:45:01.154680: Using load_power data to fill gaps in load_today data 2026-08-14 16:45:01.920720: Processing 721 30-minute periods for power integration 2026-08-14 16:45:02.073253: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 16:45:02.073383: Car charging hold False, threshold 6.0kWh 2026-08-14 16:45:02.073425: Current data so far today: load 15.75kWh, import 28.7kWh, export 0.0kWh, PV 0kWh 2026-08-14 16:45:02.087345: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 16:45:02.087744: Standing charge is set to 49.98p 2026-08-14 16:45:02.129096: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 16:45:02.129195: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 16:45:02.129400: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 370.0 minutes 2026-08-14 16:45:02.129743: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 370.0 minutes 2026-08-14 16:45:02.136922: Loaded 95 datapoints of futurerate analysis 2026-08-14 16:45:02.258756: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35'] 2026-08-14 16:45:02.298188: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 16:45:02.298630: Import rates: min 13.77p, max 53.39p, average 26.72p 2026-08-14 16:45:02.333671: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 16:45:02.333788: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 16:45:02.334858: High export rate found rates in range 99p to -99p 2026-08-14 16:45:02.414886: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 16:45:02.415039: Car 0 charging is not planned as it is not plugged in 2026-08-14 16:45:02.431565: Battery level now 11.82kWh, -1hr ago 10.97kWh, at midnight 2.43kWh, battery value change in the last hour 10.03p, change today 110.98p, rate_forward 11.83p 2026-08-14 16:45:02.431877: Last hour: net energy 1.5kWh, import 1.5kWh, export 0.0kWh, car 0kWh, load 0.55kWh, net cost 40.55p, import 40.55p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 16:45:02.488076: Today's energy total net 28.7kWh, import 28.7kWh, export 0.0kWh, cost 722.1p, import 672.12p, export 0.0p, carbon 0.0kg 2026-08-14 16:45:02.488212: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 16:45:02.563017: Using weighted-bucket historical load forecast over 14 days 2026-08-14 16:45:02.590331: Today's load divergence 130.0%, in-day adjustment 134.03%, damping 0.95x, yesterday 146.81% today 128.5% blend 30.21% 2026-08-14 16:45:02.590693: Today's predicted so far 9.66kWh with 0.0kWh car/iBoost excluded, 17.19kWh import ignored, and 9.66kWh forecast extra. 2026-08-14 16:45:02.590732: Today's actual load so far 15.79kWh with 0.0kWh car/iBoost excluded, and 17.19kWh import ignored. 2026-08-14 16:45:02.627306: Inverter 0: Type SK Sunsynk 2026-08-14 16:45:02.627413: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 16:45:02.628117: Reserve min: 7%, battery_min: 7% 2026-08-14 16:45:02.628200: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 16:45:02.628441: Inverter 0 SoC: 11.68kW 73%, current charge rate 5000W, current discharge rate 5250W, current battery power 1853W, current battery voltage 51.2V, grid power -55W, load power 1908W, PV Power 0W 2026-08-14 16:45:02.628579: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:45:02.628649: Inverter 0 scheduled charge enable is False 2026-08-14 16:45:02.628672: Inverter 0 charge windows currently [] 2026-08-14 16:45:02.628693: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 16:45:02.628780: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:45:02.628809: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:45:02.628838: Inverter 0 scheduled discharge enable is False 2026-08-14 16:45:02.628987: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:45:02.629030: Inverter 0 discharge windows currently [] 2026-08-14 16:45:02.629050: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:45:02.629065: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:45:02.629079: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:45:02.704038: Dynamic load last period 0.30kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 16:45:02.704139: Plan was last updated on 2026-08-14 16:35:00+01:00 and is now 10.0 minutes old 2026-08-14 16:45:02.704445: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 16:45:02.704494: Best export window [ ] 2026-08-14 16:45:02.705580: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 16:45:02.708454: Load divergence over 8.0 hours mean 427.68W, min 276.0W, max 1164.0W, std dev 168.37W, divergence 19.68% 2026-08-14 16:45:02.723447: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 16:45:02.723556: LoadML is_calculating False 2026-08-14 16:45:02.723613: Creating pool of 12 processes to match your CPU count 2026-08-14 16:45:02.834314: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1275.35p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:20:00, load 43.78kWh, PV 0.0kWh 2026-08-14 16:45:02.980545: Battery has 12.58 hours left - now at 11.68kWh 2026-08-14 16:45:03.026318: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1309.34p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:30:00, load 45.11kWh, PV 0.0kWh 2026-08-14 16:45:03.109690: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1185.13p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.11kWh, PV 0.0kWh 2026-08-14 16:45:03.209851: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1157.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:55:00, load 43.78kWh, PV 0.0kWh 2026-08-14 16:45:03.209952: Saving plan best values to HA entities 2026-08-14 16:45:03.384612: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 16:45:03.391152: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 16:45:03.397058: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.12kWh, house 2.67kWh, export 0.0kWh, metric 1157.27p, metric10 1185.13p 2026-08-14 16:45:03.476481: Marginal costs baseline metric (no standing charge): 1057.2992 2026-08-14 16:45:03.750299: Marginal energy costs matrix computed: min=24.9 max=35.64 2026-08-14 16:45:03.842660: Rate array import [{'start': 1005, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1005, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 16:45:03.844101: - Your estimated bill for today is £7.22 and tomorrow is £3.65 2026-08-14 16:45:03.844198: - Import rates are expensive (36.9p) for the next 15 minutes and then very expensive (43.9p - 53.4p) for the next 2 hours. 2026-08-14 16:45:03.844248: - The battery is currently at 73% and is in eco mode for the next 9 hours. 2026-08-14 16:45:03.844291: - For the next 48 hours there will be no solar generation. 2026-08-14 16:45:03.844312: - You will run out of battery in 14 hours. 2026-08-14 16:45:03.844329: - Your next charge slot will be in 9 hours where import rates will be cheap (24.8p). 2026-08-14 16:45:03.844348: 2026-08-14 16:45:03.916570: Plan calculation took 1.21 seconds 2026-08-14 16:45:03.920900: No high rate period found 2026-08-14 16:45:03.993319: Import threshold used for optimisation was 26.25p 2026-08-14 16:45:04.062834: Low import rate windows [0: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 1: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 2: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 3: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 4: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 5: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 6: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 7: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 8: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 9: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 10: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 11: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 12: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 13: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 14: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 15: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 16: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 17: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 18: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 19: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 20: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 21: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 22: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 23: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 24: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 25: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 26: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 27: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 28: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 29: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 30: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 31: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 32: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 33: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 34: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 35: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 36: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 37: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 38: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 39: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 40: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 41: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 42: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 43: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 44: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 45: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 46: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 47: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 48: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 49: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 50: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 51: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 52: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 53: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 54: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 55: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 56: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 57: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 58: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 59: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 60: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 61: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 62: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 63: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 64: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 65: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 66: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 67: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 68: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 69: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 70: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 71: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 72: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 73: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 74: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 75: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 76: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 77: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 78: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 79: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 80: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 81: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 82: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 83: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 84: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 85: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 86: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 87: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 88: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 89: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 90: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 91: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 92: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 93: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 94: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 95: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13] 2026-08-14 16:45:04.069456: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 73%, target 16% 2026-08-14 16:45:04.069588: Inverter 0 disabled charge window while waiting for schedule (now 08-14 16:45:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 16:45:04.069704: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:45:04.069969: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:45:04.070085: No export window planned 2026-08-14 16:45:04.070210: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 16:45:04.070247: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:45:04.070381: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:45:04.070557: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 16:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 16:45:04.070619: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 16:45:04.070688: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 16:45:04.070776: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:45:04.070817: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:45:04.070845: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:45:04.070871: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:45:04.070895: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:45:04.070919: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:45:04.070942: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:45:04.071025: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:45:04.071062: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:45:04.071086: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:45:04.071117: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:45:04.071141: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:45:04.071167: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:45:04.071190: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:45:04.071210: Inverter 0 count register writes 0 2026-08-14 16:45:04.086821: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 16:45:04.087042: Recompute is saving previous plan... 2026-08-14 16:45:04.089743: Best charge window [ 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0% ] 2026-08-14 16:45:04.089827: Best export window [ ] 2026-08-14 16:45:04.090537: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 16:45:04.093105: Load divergence over 8.0 hours mean 427.68W, min 276.0W, max 1164.0W, std dev 168.37W, divergence 19.68% 2026-08-14 16:45:04.109395: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 16:45:04.109513: LoadML is_calculating False 2026-08-14 16:45:04.109581: Creating pool of 12 processes to match your CPU count 2026-08-14 16:45:04.192695: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 16:45:04.195458: Optimise levels pass started at 2026-08-14 16:45:04 2026-08-14 16:45:04.195541: Optimise all windows, total charge 95 export 1 2026-08-14 16:45:05.146478: >> Region optimisation pass width 960 gives best_metric 1095.15p, best_cost 1102.33p, best_cycle 36.69kWh, best_import 23.23kWh 2026-08-14 16:45:05.516454: >> Region optimisation pass width 480 gives best_metric 1095.15p, best_cost 1102.33p, best_cycle 36.69kWh, best_import 23.23kWh 2026-08-14 16:45:06.050675: >> Region optimisation pass width 240 gives best_metric 1095.15p, best_cost 1102.33p, best_cycle 36.69kWh, best_import 23.23kWh 2026-08-14 16:45:07.312020: >> Region optimisation pass width 120 gives best_metric 1095.15p, best_cost 1102.33p, best_cycle 36.69kWh, best_import 23.23kWh 2026-08-14 16:45:07.314256: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 85 2026-08-14 16:45:07.314353: Optimise levels pass ended at 2026-08-14 16:45:07, duration 3.1 seconds tried 335 combinations 2026-08-14 16:45:07.314418: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1095.15p, best_keep 0kWh, best_cycle 36.69kWh, best_carbon 0kg, best_import 23.23kWh 2026-08-14 16:45:07.336325: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 16:45:15.286406: Tweak plan optimisation started metric 1032.65p, cost 1041.5p 2026-08-14 16:45:15.622923: Tweak optimisation finished metric 1032.65p, cost 1041.5p, metric_keep 0kWh, cycle 35.01kWh, carbon 0kg, import 19.77kWh, changed 8 window(s) 2026-08-14 16:45:15.650223: Swap charge optimisation started metric 1032.65p, cost 1041.5p, min_improvement_swap 0.1p 2026-08-14 16:45:17.929556: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 16:45:20.293374: Processing 1345 30-minute periods for power integration 2026-08-14 16:45:20.525244: ML Component: Car charging hold False, car energy reported load False 2026-08-14 16:45:20.716568: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 16:45:20.925645: ML Temperature data points: 49396 2026-08-14 16:45:21.512158: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 16:45:21.580478: ML Component: Data fetch completed, load data age 56.0 days, 16178 data points 2026-08-14 16:45:21.590804: ML Component: Starting fine-tune training (2h interval), model age is 2.0335813866666665 hours 2026-08-14 16:45:21.596013: ML Component: Waiting for current prediction cycle to complete before running ML work 2026-08-14 16:45:25.628988: Swap charge optimisation finished metric 1032.65p, cost 1041.5p 2026-08-14 16:45:25.744350: Pruned 1 dead plan slot(s) in 13 trial(s), nominal metric 1028.25p -> 1028.25p, plan now metric 1032.73p, cost 1041.5p, cycle 35.01kWh, import 19.77kWh 2026-08-14 16:45:25.753681: Raw charge windows [ 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 16%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 16%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 16%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100% ] reserve 1.12 2026-08-14 16:45:25.754158: Unclipped charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 17:00:00 @ 28.68p 100% ] reserve 1.12 2026-08-14 16:45:25.754402: Unfiltered charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 17:00:00 @ 28.68p 100% ] reserve 1.12 2026-08-14 16:45:25.754591: Filtered charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 17:00:00 @ 28.68p 100% ] reserve 1.12 2026-08-14 16:45:25.784347: Previous plan best metric is 1032.65 (cost 1041.5) and new plan best metric is 1032.65 (cost 1041.5) 2026-08-14 16:45:25.784577: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 16:45:25.784702: Plan valid is now true after recompute was False 2026-08-14 16:45:25.806802: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1272.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:20:00, load 43.59kWh, PV 0.0kWh 2026-08-14 16:45:25.922160: Battery has 12.58 hours left - now at 11.68kWh 2026-08-14 16:45:25.980426: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1306.28p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:30:00, load 44.91kWh, PV 0.0kWh 2026-08-14 16:45:26.078507: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1171.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 44.91kWh, PV 0.0kWh 2026-08-14 16:45:26.169166: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1141.46p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:55:00, load 43.59kWh, PV 0.0kWh 2026-08-14 16:45:26.169266: Saving plan best values to HA entities 2026-08-14 16:45:26.368136: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 16:45:26.373528: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 16:45:26.379898: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.1kWh, house 2.67kWh, export 0.0kWh, metric 1141.46p, metric10 1171.33p 2026-08-14 16:45:26.452116: Marginal costs baseline metric (no standing charge): 1041.498 2026-08-14 16:45:26.705069: Marginal energy costs matrix computed: min=24.9 max=35.64 2026-08-14 16:45:26.791345: Rate array import [{'start': 1005, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 26.7p)'}] export [{'start': 1005, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 16:45:26.792082: - Your estimated bill for today is £7.22 and tomorrow is £3.65 2026-08-14 16:45:26.792130: - Import rates are expensive (36.9p) for the next 15 minutes and then very expensive (43.9p - 53.4p) for the next 2 hours. 2026-08-14 16:45:26.792154: - The battery is currently at 73% and is in eco mode for the next 9 hours. 2026-08-14 16:45:26.792172: - For the next 48 hours there will be no solar generation. 2026-08-14 16:45:26.792189: - You will run out of battery in 14 hours. 2026-08-14 16:45:26.792208: - Your next charge slot will be in 9 hours where import rates will be cheap (24.8p). 2026-08-14 16:45:26.792226: 2026-08-14 16:45:26.860767: Plan calculation took 22.77 seconds 2026-08-14 16:45:26.861168: Inverter 0: Type SK Sunsynk 2026-08-14 16:45:26.861224: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 16:45:26.861898: Reserve min: 7%, battery_min: 7% 2026-08-14 16:45:26.862028: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 16:45:26.862346: Inverter 0 SoC: 11.68kW 73%, current charge rate 5000W, current discharge rate 5250W, current battery power 1853W, current battery voltage 51.2V, grid power -55W, load power 1908W, PV Power 0W 2026-08-14 16:45:26.862607: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:45:26.862726: Inverter 0 scheduled charge enable is False 2026-08-14 16:45:26.862789: Inverter 0 charge windows currently [] 2026-08-14 16:45:26.862831: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 16:45:26.862953: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:45:26.863008: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:45:26.863048: Inverter 0 scheduled discharge enable is False 2026-08-14 16:45:26.863212: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:45:26.863253: Inverter 0 discharge windows currently [] 2026-08-14 16:45:26.863276: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:45:26.863300: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:45:26.863318: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:45:26.922475: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 73%, target 16% 2026-08-14 16:45:26.922629: Inverter 0 disabled charge window while waiting for schedule (now 08-14 16:45:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 16:45:26.922702: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:45:26.922891: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:45:26.922987: No export window planned 2026-08-14 16:45:26.923110: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 16:45:26.923145: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:45:26.923281: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:45:26.923448: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 16:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 16:45:26.923502: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 16:45:26.923558: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 16:45:26.923647: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:45:26.923681: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:45:26.923707: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:45:26.923740: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:45:26.923766: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:45:26.923790: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:45:26.923815: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:45:26.923871: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:45:26.923905: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:45:26.923931: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:45:26.923956: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:45:26.923998: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:45:26.924030: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:45:26.924054: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:45:26.924074: Inverter 0 count register writes 0 2026-08-14 16:45:26.947530: Total inverter register writes now 815 2026-08-14 16:45:26.981807: Info: Completed run status Demand 2026-08-14 16:45:26.989341: Info: record_status Demand 2026-08-14 16:45:26.996737: Saved current settings to /config/predbat_config.json 2026-08-14 16:45:26.997057: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 16:45:27.157861: ML Component: Doing training... 2026-08-14 16:45:27.174258: ML Predictor: Curriculum training - capped to last 4 intermediate passes (starting at window=53.0 days) 2026-08-14 16:45:27.174402: ML Predictor: Curriculum training - 5 passes, window 53.0→56.0 days + final full pass (56.2 days) 2026-08-14 16:45:27.225963: ML Predictor: Curriculum pass 1/5: window=53.0 days (1272 hours of data) 2026-08-14 16:45:27.226115: ML Predictor: Starting initial training with 30 epochs 2026-08-14 16:45:27.798301: ML Predictor: Creating dataset with 1272 hours of training data, 48 hours validation 2026-08-14 16:45:31.929740: ML Predictor: Created 14976 training samples, 576 validation samples 2026-08-14 16:45:32.228316: ML Predictor: Normalization stats [fit] target(mean=0.0587 std=0.0472) load(mean=0.0589 std=0.0473) pv(mean=0.0000 std=0.0100) temp(mean=19.4859 std=4.4023) import_rate(mean=24.2395 std=1.9636) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1907 std=0.5232) 2026-08-14 16:45:48.973504: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0058 val_mae=0.0015 kWh val_bias=+0.0004 kWh (+0.7%) combined=0.0013 kWh ema_combined=0.0013 kWh 2026-08-14 16:46:02.762281: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0068 val_mae=0.0014 kWh val_bias=-0.0004 kWh (-0.6%) combined=0.0012 kWh ema_combined=0.0013 kWh 2026-08-14 16:46:11.923797: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:46:11.924074: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:46:11.924124: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:46:11.924278: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:46:11.924320: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:46:11.924343: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:46:11.924362: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:46:17.736761: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0074 val_mae=0.0018 kWh val_bias=+0.0009 kWh (+1.5%) combined=0.0017 kWh ema_combined=0.0014 kWh 2026-08-14 16:46:31.893399: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0077 val_mae=0.0016 kWh val_bias=-0.0008 kWh (-1.3%) combined=0.0016 kWh ema_combined=0.0015 kWh 2026-08-14 16:46:46.676564: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0078 val_mae=0.0015 kWh val_bias=-0.0002 kWh (-0.4%) combined=0.0008 kWh ema_combined=0.0013 kWh 2026-08-14 16:47:01.305738: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0073 val_mae=0.0015 kWh val_bias=-0.0006 kWh (-1.0%) combined=0.0014 kWh ema_combined=0.0013 kWh 2026-08-14 16:47:14.127301: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0079 val_mae=0.0013 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0008 kWh ema_combined=0.0012 kWh 2026-08-14 16:47:27.937250: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0066 val_mae=0.0017 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0012 kWh ema_combined=0.0012 kWh 2026-08-14 16:47:42.305797: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0072 val_mae=0.0014 kWh val_bias=-0.0003 kWh (-0.6%) combined=0.0009 kWh ema_combined=0.0011 kWh 2026-08-14 16:47:56.872220: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0072 val_mae=0.0015 kWh val_bias=+0.0007 kWh (+1.2%) combined=0.0013 kWh ema_combined=0.0012 kWh 2026-08-14 16:48:11.872515: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0080 val_mae=0.0014 kWh val_bias=-0.0003 kWh (-0.6%) combined=0.0010 kWh ema_combined=0.0011 kWh 2026-08-14 16:48:12.319289: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:48:12.319535: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:48:12.319580: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:48:12.319723: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:48:12.319755: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:48:12.319776: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:48:12.319808: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:48:25.313998: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0062 val_mae=0.0014 kWh val_bias=-0.0004 kWh (-0.7%) combined=0.0009 kWh ema_combined=0.0010 kWh 2026-08-14 16:48:39.445762: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0064 val_mae=0.0014 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0009 kWh ema_combined=0.0010 kWh 2026-08-14 16:48:52.907184: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0060 val_mae=0.0014 kWh val_bias=-0.0000 kWh (-0.0%) combined=0.0007 kWh ema_combined=0.0009 kWh 2026-08-14 16:49:07.495671: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0058 val_mae=0.0013 kWh val_bias=-0.0003 kWh (-0.6%) combined=0.0009 kWh ema_combined=0.0009 kWh 2026-08-14 16:49:21.869119: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0055 val_mae=0.0015 kWh val_bias=-0.0008 kWh (-1.3%) combined=0.0011 kWh ema_combined=0.0010 kWh 2026-08-14 16:49:34.650845: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0055 val_mae=0.0014 kWh val_bias=+0.0006 kWh (+1.0%) combined=0.0014 kWh ema_combined=0.0011 kWh 2026-08-14 16:49:45.902163: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0053 val_mae=0.0014 kWh val_bias=-0.0009 kWh (-1.5%) combined=0.0012 kWh ema_combined=0.0011 kWh 2026-08-14 16:49:59.369037: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0053 val_mae=0.0016 kWh val_bias=-0.0013 kWh (-2.2%) combined=0.0016 kWh ema_combined=0.0013 kWh 2026-08-14 16:50:00.731288: --------------- PredBat - update at 2026-08-14 16:50:00+01:00 with clock skew 0 minutes, minutes now 1010 2026-08-14 16:50:00.732344: Saved current settings to /config/predbat_config.json 2026-08-14 16:50:00.732513: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 65.0 minutes 2026-08-14 16:50:00.732638: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 16:50:00.732765: Autoupdate: Currently up to date 2026-08-14 16:50:01.283838: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 16:50:01.285783: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 16:50:01.289003: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 16:50:01.291558: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 16:50:01.291981: Predbat mode is set to Control charge & discharge 2026-08-14 16:50:01.659944: Found 21602 load_today datapoints going back 28 days 2026-08-14 16:50:01.660164: Using load_power data to fill gaps in load_today data 2026-08-14 16:50:02.981132: Processing 721 30-minute periods for power integration 2026-08-14 16:50:03.289148: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 16:50:03.289352: Car charging hold False, threshold 6.0kWh 2026-08-14 16:50:03.289404: Current data so far today: load 16.0kWh, import 28.7kWh, export 0.0kWh, PV 0kWh 2026-08-14 16:50:03.308536: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 16:50:03.309234: Standing charge is set to 49.98p 2026-08-14 16:50:03.402127: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 16:50:03.402242: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 16:50:03.402472: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 375.0 minutes 2026-08-14 16:50:03.402988: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 375.0 minutes 2026-08-14 16:50:03.409559: Loaded 95 datapoints of futurerate analysis 2026-08-14 16:50:03.777014: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35'] 2026-08-14 16:50:03.822808: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 16:50:03.823264: Import rates: min 13.77p, max 53.39p, average 26.71p 2026-08-14 16:50:03.858469: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 16:50:03.858579: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 16:50:03.859683: High export rate found rates in range 99p to -99p 2026-08-14 16:50:03.984393: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 16:50:03.984594: Car 0 charging is not planned as it is not plugged in 2026-08-14 16:50:04.004682: Battery level now 11.68kWh, -1hr ago 10.97kWh, at midnight 2.43kWh, battery value change in the last hour 8.42p, change today 109.37p, rate_forward 11.83p 2026-08-14 16:50:04.005287: Last hour: net energy 1.0kWh, import 1.0kWh, export 0.0kWh, car 0kWh, load 0.75kWh, net cost 29.54p, import 29.54p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 16:50:04.128370: Today's energy total net 28.7kWh, import 28.7kWh, export 0.0kWh, cost 722.1p, import 672.12p, export 0.0p, carbon 0.0kg 2026-08-14 16:50:04.128685: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 16:50:04.266425: Using weighted-bucket historical load forecast over 14 days 2026-08-14 16:50:04.295394: Today's load divergence 130.44%, in-day adjustment 134.26%, damping 0.95x, yesterday 146.81% today 128.91% blend 29.86% 2026-08-14 16:50:04.295496: Today's predicted so far 9.68kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 9.68kWh forecast extra. 2026-08-14 16:50:04.295529: Today's actual load so far 15.94kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 16:50:04.365433: Inverter 0: Type SK Sunsynk 2026-08-14 16:50:04.365538: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 16:50:04.366305: Reserve min: 7%, battery_min: 7% 2026-08-14 16:50:04.366429: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 16:50:04.366818: Inverter 0 SoC: 11.68kW 73%, current charge rate 5000W, current discharge rate 5250W, current battery power 1783W, current battery voltage 51.2V, grid power -56W, load power 1840W, PV Power 0W 2026-08-14 16:50:04.367086: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:50:04.367192: Inverter 0 scheduled charge enable is False 2026-08-14 16:50:04.367232: Inverter 0 charge windows currently [] 2026-08-14 16:50:04.367261: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 16:50:04.367535: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:50:04.367603: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:50:04.367801: Inverter 0 scheduled discharge enable is False 2026-08-14 16:50:04.368182: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:50:04.368266: Inverter 0 discharge windows currently [] 2026-08-14 16:50:04.368401: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:50:04.368533: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:50:04.368663: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:50:04.517710: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 16:50:04.517859: Plan was last updated on 2026-08-14 16:45:00+01:00 and is now 5.0 minutes old 2026-08-14 16:50:04.518317: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 16:50:04.518369: Best export window [ ] 2026-08-14 16:50:04.519317: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 16:50:04.522884: Load divergence over 8.0 hours mean 430.85W, min 296.4W, max 1182.6W, std dev 157.3W, divergence 18.25% 2026-08-14 16:50:04.557457: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 16:50:04.558021: LoadML is_calculating True 2026-08-14 16:50:04.558077: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 16:50:04.600368: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1273.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 05:20:00, load 43.91kWh, PV 0.0kWh 2026-08-14 16:50:04.835160: Battery has 12.5 hours left - now at 11.68kWh 2026-08-14 16:50:04.902854: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1307.24p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:35:00, load 45.24kWh, PV 0.0kWh 2026-08-14 16:50:05.064278: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1177.5p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.24kWh, PV 0.0kWh 2026-08-14 16:50:05.196500: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1148.89p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 07:00:00, load 43.91kWh, PV 0.0kWh 2026-08-14 16:50:05.197222: Saving plan best values to HA entities 2026-08-14 16:50:05.517646: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 16:50:05.525621: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 16:50:05.534013: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.62kWh, house 2.64kWh, export 0.0kWh, metric 1148.89p, metric10 1177.5p 2026-08-14 16:50:05.650978: Marginal costs baseline metric (no standing charge): 1048.9205 2026-08-14 16:50:06.115357: Marginal energy costs matrix computed: min=24.88 max=35.26 2026-08-14 16:50:06.316250: Rate array import [{'start': 1010, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1010, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 16:50:06.317181: - Your estimated bill for today is £7.22 and tomorrow is £3.65 2026-08-14 16:50:06.317239: - Import rates are expensive (36.9p) for the next 10 minutes and then very expensive (43.9p - 53.4p) for the next 2 hours. 2026-08-14 16:50:06.317263: - The battery is currently at 73% and is in eco mode for the next 9 hours. 2026-08-14 16:50:06.317282: - For the next 48 hours there will be no solar generation. 2026-08-14 16:50:06.317299: - You will run out of battery in 14 hours. 2026-08-14 16:50:06.317316: - Your next charge slot will be in 9 hours where import rates will be cheap (24.8p). 2026-08-14 16:50:06.317335: 2026-08-14 16:50:06.382291: Plan calculation took 1.86 seconds 2026-08-14 16:50:06.387360: No high rate period found 2026-08-14 16:50:06.506481: Import threshold used for optimisation was 25.6p 2026-08-14 16:50:06.619455: Low import rate windows [0: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 1: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 2: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 3: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 4: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 5: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 6: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 7: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 8: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 9: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 10: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 11: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 12: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 13: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 14: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 15: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 16: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 17: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 18: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 19: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 20: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 21: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 22: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 23: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 24: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 25: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 26: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 27: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 28: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 29: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 30: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 31: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 32: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 33: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 34: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 35: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 36: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 37: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 38: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 39: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 40: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 41: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 42: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 43: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 44: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 45: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 46: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 47: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 48: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 49: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 50: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 51: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 52: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 53: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 54: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 55: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 56: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 57: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 58: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 59: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 60: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 61: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 62: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 63: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 64: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 65: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 66: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 67: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 68: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 69: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 70: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 71: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 72: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 73: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 74: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 75: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 76: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 77: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 78: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 79: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 80: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 81: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 82: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 83: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 84: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 85: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 86: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 87: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 88: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 89: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 90: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 91: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 92: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 93: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 94: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 95: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13] 2026-08-14 16:50:06.641981: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 73%, target 16% 2026-08-14 16:50:06.642181: Inverter 0 disabled charge window while waiting for schedule (now 08-14 16:50:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 16:50:06.642275: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:50:06.642538: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:50:06.642640: No export window planned 2026-08-14 16:50:06.642794: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 16:50:06.642845: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:50:06.643053: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:50:06.643259: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 16:50:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 16:50:06.643347: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 16:50:06.643432: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 16:50:06.643549: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:50:06.643606: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:50:06.643683: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:50:06.643733: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:50:06.643779: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:50:06.643830: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:50:06.643883: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:50:06.647047: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:50:06.647138: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:50:06.647194: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:50:06.647261: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:50:06.647318: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:50:06.647355: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:50:06.647398: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:50:06.647437: Inverter 0 count register writes 0 2026-08-14 16:50:06.677765: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 16:50:06.687801: Total inverter register writes now 815 2026-08-14 16:50:06.739157: Info: Completed run status Demand 2026-08-14 16:50:06.749908: Info: record_status Demand 2026-08-14 16:50:06.760682: Saved current settings to /config/predbat_config.json 2026-08-14 16:50:06.760913: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 16:50:18.043146: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0047 val_mae=0.0011 kWh val_bias=-0.0000 kWh (-0.1%) combined=0.0007 kWh ema_combined=0.0011 kWh 2026-08-14 16:50:30.471444: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0047 val_mae=0.0010 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0006 kWh ema_combined=0.0009 kWh 2026-08-14 16:50:41.890430: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:50:41.890992: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:50:41.891204: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:50:41.891568: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:50:41.891732: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:50:41.891915: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:50:41.892173: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:50:45.131457: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0050 val_mae=0.0012 kWh val_bias=+0.0006 kWh (+1.0%) combined=0.0011 kWh ema_combined=0.0010 kWh 2026-08-14 16:50:56.543647: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0045 val_mae=0.0010 kWh val_bias=-0.0002 kWh (-0.4%) combined=0.0006 kWh ema_combined=0.0009 kWh 2026-08-14 16:51:10.714105: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0052 val_mae=0.0012 kWh val_bias=+0.0006 kWh (+1.1%) combined=0.0011 kWh ema_combined=0.0010 kWh 2026-08-14 16:51:24.646332: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0044 val_mae=0.0011 kWh val_bias=+0.0002 kWh (+0.4%) combined=0.0008 kWh ema_combined=0.0009 kWh 2026-08-14 16:51:39.238170: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0044 val_mae=0.0010 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0006 kWh ema_combined=0.0008 kWh 2026-08-14 16:51:52.437320: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0042 val_mae=0.0011 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0006 kWh ema_combined=0.0008 kWh 2026-08-14 16:52:06.005456: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0043 val_mae=0.0010 kWh val_bias=+0.0000 kWh (+0.1%) combined=0.0006 kWh ema_combined=0.0007 kWh 2026-08-14 16:52:20.068646: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0046 val_mae=0.0010 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0005 kWh ema_combined=0.0006 kWh 2026-08-14 16:52:32.788922: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0042 val_mae=0.0010 kWh val_bias=-0.0002 kWh (-0.4%) combined=0.0007 kWh ema_combined=0.0007 kWh 2026-08-14 16:52:32.790190: ML Predictor: Restored best weights from epoch with val_mae=0.0010 kWh val_bias=-0.0001 kWh (-0.2%) 2026-08-14 16:52:32.790442: ML Predictor: Training complete, final val_mae=0.0010 kWh val_bias=-0.0001 kWh (-0.2%) 2026-08-14 16:52:33.664668: ML Predictor: AR rollout over holdout: ar_mae=0.0010 kWh ar_bias=-0.0001 kWh (-0.2%) [drift vs teacher-forced: +0.0000 kWh] 2026-08-14 16:52:33.697362: ML Predictor: Curriculum pass 1/5 complete, val_mae=0.0010 kWh 2026-08-14 16:52:33.750370: ML Predictor: Curriculum pass 2/5: window=54.0 days (1296 hours of data) 2026-08-14 16:52:33.750485: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 16:52:34.311697: ML Predictor: Creating dataset with 1296 hours of training data, 48 hours validation 2026-08-14 16:52:38.895964: ML Predictor: Created 15264 training samples, 576 validation samples 2026-08-14 16:52:38.943734: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0472) load(mean=0.0589 std=0.0473) pv(mean=0.0000 std=0.0100) temp(mean=19.4873 std=4.4036) import_rate(mean=24.2399 std=1.9618) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1905 std=0.5233) 2026-08-14 16:52:39.018245: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 16:52:39.033052: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 16:52:39.077868: ML Predictor: Baseline (pre-finetune) val_mae=0.0014 kWh val_bias=-0.0002 kWh 2026-08-14 16:52:41.940792: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:52:41.941254: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:52:41.941690: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:52:41.942035: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:52:41.942151: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:52:41.942262: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:52:41.942341: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:52:52.036324: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0063 val_mae=0.0018 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0009 kWh ema_combined=0.0009 kWh 2026-08-14 16:53:06.045124: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0078 val_mae=0.0024 kWh val_bias=+0.0002 kWh (+0.4%) combined=0.0017 kWh ema_combined=0.0011 kWh 2026-08-14 16:53:19.780804: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0112 val_mae=0.0027 kWh val_bias=-0.0005 kWh (-1.0%) combined=0.0020 kWh ema_combined=0.0014 kWh 2026-08-14 16:53:33.811205: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0116 val_mae=0.0023 kWh val_bias=-0.0007 kWh (-1.4%) combined=0.0021 kWh ema_combined=0.0016 kWh 2026-08-14 16:53:49.139406: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0088 val_mae=0.0018 kWh val_bias=-0.0002 kWh (-0.3%) combined=0.0010 kWh ema_combined=0.0014 kWh 2026-08-14 16:54:03.579952: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0091 val_mae=0.0018 kWh val_bias=+0.0005 kWh (+1.0%) combined=0.0011 kWh ema_combined=0.0013 kWh 2026-08-14 16:54:17.398067: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0086 val_mae=0.0020 kWh val_bias=-0.0004 kWh (-0.8%) combined=0.0011 kWh ema_combined=0.0013 kWh 2026-08-14 16:54:31.245326: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0075 val_mae=0.0017 kWh val_bias=-0.0004 kWh (-0.8%) combined=0.0012 kWh ema_combined=0.0012 kWh 2026-08-14 16:54:42.417860: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:54:42.418179: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:54:42.418264: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:54:42.426326: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:54:42.426401: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:54:42.426434: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:54:42.426460: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:54:45.523113: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0070 val_mae=0.0014 kWh val_bias=-0.0003 kWh (-0.6%) combined=0.0011 kWh ema_combined=0.0012 kWh 2026-08-14 16:54:59.146608: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0067 val_mae=0.0014 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0009 kWh ema_combined=0.0011 kWh 2026-08-14 16:54:59.146751: ML Predictor: Early stopping at epoch 10 2026-08-14 16:54:59.147595: ML Predictor: Restored best weights from epoch with val_mae=0.0014 kWh val_bias=-0.0002 kWh (-0.4%) 2026-08-14 16:54:59.147972: ML Predictor: Training complete, final val_mae=0.0014 kWh val_bias=-0.0002 kWh (-0.4%) 2026-08-14 16:55:00.670168: --------------- PredBat - update at 2026-08-14 16:55:00+01:00 with clock skew 0 minutes, minutes now 1015 2026-08-14 16:55:00.671155: Saved current settings to /config/predbat_config.json 2026-08-14 16:55:00.671310: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 70.0 minutes 2026-08-14 16:55:00.671424: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 16:55:00.671637: Autoupdate: Currently up to date 2026-08-14 16:55:00.980420: ML Predictor: AR rollout over holdout: ar_mae=0.0016 kWh ar_bias=-0.0003 kWh (-0.6%) [drift vs teacher-forced: +0.0002 kWh] 2026-08-14 16:55:01.001030: ML Predictor: Curriculum pass 2/5 complete, val_mae=0.0014 kWh 2026-08-14 16:55:01.088579: ML Predictor: Curriculum pass 3/5: window=55.0 days (1320 hours of data) 2026-08-14 16:55:01.088723: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 16:55:01.451672: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 16:55:01.457004: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 16:55:01.467569: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 16:55:01.473361: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 16:55:01.478652: Predbat mode is set to Control charge & discharge 2026-08-14 16:55:01.634647: ML Predictor: Creating dataset with 1320 hours of training data, 48 hours validation 2026-08-14 16:55:02.525281: Found 21602 load_today datapoints going back 28 days 2026-08-14 16:55:02.531176: Using load_power data to fill gaps in load_today data 2026-08-14 16:55:04.191460: Processing 721 30-minute periods for power integration 2026-08-14 16:55:04.549013: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 16:55:04.554329: Car charging hold False, threshold 6.0kWh 2026-08-14 16:55:04.559576: Current data so far today: load 16.1kWh, import 28.7kWh, export 0.0kWh, PV 0kWh 2026-08-14 16:55:04.588588: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 16:55:04.594321: Standing charge is set to 49.98p 2026-08-14 16:55:04.890235: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 16:55:04.911018: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 16:55:04.916437: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 380.1 minutes 2026-08-14 16:55:04.922101: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 380.1 minutes 2026-08-14 16:55:04.938613: Loaded 95 datapoints of futurerate analysis 2026-08-14 16:55:05.242500: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35'] 2026-08-14 16:55:05.320215: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 16:55:05.330906: Import rates: min 13.77p, max 53.39p, average 26.7p 2026-08-14 16:55:05.431298: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 16:55:05.436589: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 16:55:05.442935: High export rate found rates in range 99p to -99p 2026-08-14 16:55:05.650356: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 16:55:05.655623: Car 0 charging is not planned as it is not plugged in 2026-08-14 16:55:05.774329: Battery level now 11.68kWh, -1hr ago 11.31kWh, at midnight 2.43kWh, battery value change in the last hour 4.35p, change today 109.37p, rate_forward 11.83p 2026-08-14 16:55:05.774658: Last hour: net energy 0.5kWh, import 0.5kWh, export 0.0kWh, car 0kWh, load 0.8kWh, net cost 18.53p, import 18.53p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 16:55:06.296833: Today's energy total net 28.7kWh, import 28.7kWh, export 0.0kWh, cost 722.1p, import 672.11p, export 0.0p, carbon 0.0kg 2026-08-14 16:55:06.302251: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 16:55:06.533349: Using weighted-bucket historical load forecast over 14 days 2026-08-14 16:55:06.611987: Today's load divergence 130.55%, in-day adjustment 134.27%, damping 0.95x, yesterday 146.81% today 129.02% blend 29.51% 2026-08-14 16:55:06.627729: Today's predicted so far 9.7kWh with 0.0kWh car/iBoost excluded, 17.38kWh import ignored, and 9.7kWh forecast extra. 2026-08-14 16:55:06.633010: Today's actual load so far 16.0kWh with 0.0kWh car/iBoost excluded, and 17.38kWh import ignored. 2026-08-14 16:55:06.948715: Inverter 0: Type SK Sunsynk 2026-08-14 16:55:06.954010: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 16:55:06.965092: Reserve min: 7%, battery_min: 7% 2026-08-14 16:55:06.970386: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 16:55:06.976110: Inverter 0 SoC: 11.38kW 71%, current charge rate 5000W, current discharge rate 5250W, current battery power 1730W, current battery voltage 51.2V, grid power -54W, load power 1786W, PV Power 0W 2026-08-14 16:55:06.981541: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:55:06.986847: Inverter 0 scheduled charge enable is False 2026-08-14 16:55:06.992062: Inverter 0 charge windows currently [] 2026-08-14 16:55:06.997318: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 16:55:07.002753: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:55:07.023619: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:55:07.028886: Inverter 0 scheduled discharge enable is False 2026-08-14 16:55:07.034606: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:55:07.039979: Inverter 0 discharge windows currently [] 2026-08-14 16:55:07.045251: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:55:07.050510: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:55:07.060887: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:55:07.753382: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 16:55:07.758628: Plan was last updated on 2026-08-14 16:45:00+01:00 and is now 10.0 minutes old 2026-08-14 16:55:07.764086: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 16:55:07.769271: Best export window [ ] 2026-08-14 16:55:07.770031: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 16:55:07.772654: Load divergence over 8.0 hours mean 434.04W, min 287.4W, max 1057.8W, std dev 147.37W, divergence 16.98% 2026-08-14 16:55:07.810043: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 16:55:07.815267: LoadML is_calculating True 2026-08-14 16:55:07.825538: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 16:55:07.884528: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1281.19p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:55:00, load 44.06kWh, PV 0.0kWh 2026-08-14 16:55:08.592385: Battery has 12.0 hours left - now at 11.38kWh 2026-08-14 16:55:08.652177: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1315.24p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:10:00, load 45.39kWh, PV 0.0kWh 2026-08-14 16:55:08.737617: ML Predictor: Created 15552 training samples, 576 validation samples 2026-08-14 16:55:08.815485: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1191.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.39kWh, PV 0.0kWh 2026-08-14 16:55:08.816830: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0472) load(mean=0.0589 std=0.0472) pv(mean=0.0000 std=0.0100) temp(mean=19.4979 std=4.4109) import_rate(mean=24.2408 std=1.9586) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1903 std=0.5235) 2026-08-14 16:55:08.911752: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 16:55:08.920871: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1163.05p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:40:00, load 44.06kWh, PV 0.0kWh 2026-08-14 16:55:08.920993: Saving plan best values to HA entities 2026-08-14 16:55:08.938531: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 16:55:08.971324: ML Predictor: Baseline (pre-finetune) val_mae=0.0032 kWh val_bias=-0.0016 kWh 2026-08-14 16:55:09.311772: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 16:55:09.321106: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 16:55:09.329318: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.22kWh, house 2.79kWh, export 0.0kWh, metric 1163.05p, metric10 1191.25p 2026-08-14 16:55:09.464065: Marginal costs baseline metric (no standing charge): 1063.0826 2026-08-14 16:55:09.914219: Marginal energy costs matrix computed: min=24.87 max=35.73 2026-08-14 16:55:10.134043: Rate array import [{'start': 1015, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1015, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 16:55:10.136501: - Your estimated bill for today is £7.22 and tomorrow is £3.71 2026-08-14 16:55:10.137214: - Import rates are expensive (36.9p) for the next 5 minutes and then very expensive (43.9p - 53.4p) for the next 2 hours. 2026-08-14 16:55:10.137397: - The battery is currently at 71% and is in eco mode for the next 9 hours. 2026-08-14 16:55:10.137548: - For the next 48 hours there will be no solar generation. 2026-08-14 16:55:10.149360: - You will run out of battery in 13 hours. 2026-08-14 16:55:10.149493: - Your next charge slot will be in 9 hours where import rates will be cheap (24.8p). 2026-08-14 16:55:10.149546: 2026-08-14 16:55:10.250966: Plan calculation took 2.49 seconds 2026-08-14 16:55:10.256744: No high rate period found 2026-08-14 16:55:10.422205: Import threshold used for optimisation was 25.6p 2026-08-14 16:55:10.551395: Low import rate windows [0: 08-14 16:30:00 - 08-14 17:00:00 @ 36.88, 1: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 2: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 3: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 4: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 5: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 6: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 7: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 8: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 9: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 10: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 11: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 12: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 13: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 14: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 15: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 16: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 17: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 18: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 19: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 20: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 21: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 22: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 23: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 24: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 25: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 26: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 27: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 28: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 29: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 30: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 31: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 32: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 33: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 34: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 35: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 36: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 37: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 38: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 39: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 40: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 41: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 42: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 43: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 44: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 45: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 46: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 47: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 48: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 49: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 50: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 51: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 52: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 53: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 54: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 55: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 56: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 57: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 58: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 59: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 60: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 61: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 62: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 63: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 64: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 65: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 66: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 67: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 68: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 69: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 70: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 71: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 72: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 73: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 74: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 75: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 76: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 77: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 78: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 79: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 80: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 81: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 82: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 83: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 84: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 85: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 86: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 87: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 88: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 89: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 90: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 91: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 92: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 93: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 94: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 95: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13] 2026-08-14 16:55:10.632313: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 71%, target 16% 2026-08-14 16:55:10.632473: Inverter 0 disabled charge window while waiting for schedule (now 08-14 16:55:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 16:55:10.632548: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:55:10.632731: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:55:10.632810: No export window planned 2026-08-14 16:55:10.632911: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 16:55:10.632990: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:55:10.633148: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:55:10.633306: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 16:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 16:55:10.633358: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 16:55:10.633407: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 16:55:10.633494: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:55:10.633537: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:55:10.633566: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:55:10.633596: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:55:10.633623: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:55:10.633651: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:55:10.633678: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:55:10.633737: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:55:10.633774: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:55:10.633802: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:55:10.633830: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:55:10.633856: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:55:10.633882: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:55:10.633909: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:55:10.633947: Inverter 0 count register writes 0 2026-08-14 16:55:10.729429: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 16:55:10.729765: Recompute is saving previous plan... 2026-08-14 16:55:10.733782: Best charge window [ 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0% ] 2026-08-14 16:55:10.733891: Best export window [ ] 2026-08-14 16:55:10.735014: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 16:55:10.739120: Load divergence over 8.0 hours mean 434.04W, min 287.4W, max 1057.8W, std dev 147.37W, divergence 16.98% 2026-08-14 16:55:10.791330: Calculating data from yesterday for savings calculation 2026-08-14 16:55:10.806086: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 16:55:10.906272: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 16:55:10.948622: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 870.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 16:55:11.003743: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 16:55:11.059749: Yesterday: Predbat disabled was £8.57 (adjusted £8.43) vs £6.21 (adjusted £5.91), saving £2.35 (adjusted £2.52) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 13.25kWh 2026-08-14 16:55:11.178793: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 901.12p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 16:55:11.179008: Yesterday: No Battery/PV system cost predicted was £9.01 (adjusted £9.01) vs £6.21 (adjusted £5.91), saving £2.8 (adjusted £3.1) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 16:55:11.197155: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 16:55:11.197430: LoadML is_calculating True 2026-08-14 16:55:11.197491: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 16:55:11.213205: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 16:55:11.216074: Optimise levels pass started at 2026-08-14 16:55:11 2026-08-14 16:55:11.216299: Optimise all windows, total charge 95 export 1 2026-08-14 16:55:15.756149: >> Region optimisation pass width 960 gives best_metric 1103.55p, best_cost 1110.65p, best_cycle 36.43kWh, best_import 23.54kWh 2026-08-14 16:55:16.664111: >> Region optimisation pass width 480 gives best_metric 1103.55p, best_cost 1110.65p, best_cycle 36.43kWh, best_import 23.54kWh 2026-08-14 16:55:19.671084: >> Region optimisation pass width 240 gives best_metric 1103.47p, best_cost 1110.44p, best_cycle 36.43kWh, best_import 23.54kWh 2026-08-14 16:55:25.786227: >> Region optimisation pass width 120 gives best_metric 1097.3p, best_cost 1105.65p, best_cycle 38.58kWh, best_import 23.8kWh 2026-08-14 16:55:25.786982: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 85 2026-08-14 16:55:25.787140: Optimise levels pass ended at 2026-08-14 16:55:25, duration 14.6 seconds tried 380 combinations 2026-08-14 16:55:25.787374: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1097.3p, best_keep 0kWh, best_cycle 38.58kWh, best_carbon 0kg, best_import 23.8kWh 2026-08-14 16:55:25.816009: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3.0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 16:55:59.884047: Tweak plan optimisation started metric 1038.97p, cost 1047.77p 2026-08-14 16:56:02.229299: Tweak optimisation finished metric 1038.97p, cost 1047.77p, metric_keep 0kWh, cycle 34.72kWh, carbon 0kg, import 19.99kWh, changed 8 window(s) 2026-08-14 16:56:02.278442: Swap charge optimisation started metric 1038.97p, cost 1047.77p, min_improvement_swap 0.1p 2026-08-14 16:56:04.760115: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0075 val_mae=0.0041 kWh val_bias=-0.0029 kWh (-4.1%) combined=0.0034 kWh ema_combined=0.0034 kWh 2026-08-14 16:56:16.547415: Swap charge optimisation finished metric 1038.97p, cost 1047.77p 2026-08-14 16:56:16.858044: Pruned 2 dead plan slot(s) in 13 trial(s), nominal metric 1034.53p -> 1034.53p, plan now metric 1039.04p, cost 1047.77p, cycle 34.72kWh, import 19.99kWh 2026-08-14 16:56:16.870979: Raw charge windows [ 14-08 16:30:00 - 14-08 17:00:00 @ 36.88p 0%, 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 16%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100% ] reserve 1.12 2026-08-14 16:56:16.871774: Unclipped charge windows [ 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 16%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 17:00:00 @ 28.68p 100% ] reserve 1.12 2026-08-14 16:56:16.872223: Unfiltered charge windows [ 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 16%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 17:00:00 @ 28.68p 100% ] reserve 1.12 2026-08-14 16:56:16.872596: Filtered charge windows [ 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 16%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 17:00:00 @ 28.68p 100% ] reserve 1.12 2026-08-14 16:56:16.914085: Previous plan best metric is 1038.31 (cost 1047.14) and new plan best metric is 1038.97 (cost 1047.77) 2026-08-14 16:56:16.914448: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 16:56:16.914622: Plan valid is now true after recompute was False 2026-08-14 16:56:16.942658: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1278.35p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:55:00, load 43.87kWh, PV 0.0kWh 2026-08-14 16:56:17.168072: Battery has 12.0 hours left - now at 11.38kWh 2026-08-14 16:56:17.230211: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1312.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:10:00, load 45.2kWh, PV 0.0kWh 2026-08-14 16:56:17.350943: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1177.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.2kWh, PV 0.0kWh 2026-08-14 16:56:17.508676: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1147.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:40:00, load 43.87kWh, PV 0.0kWh 2026-08-14 16:56:17.529259: Saving plan best values to HA entities 2026-08-14 16:56:17.899625: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 16:56:17.907646: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 16:56:17.915470: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.2kWh, house 2.79kWh, export 0.0kWh, metric 1147.33p, metric10 1177.54p 2026-08-14 16:56:18.029160: Marginal costs baseline metric (no standing charge): 1047.3617 2026-08-14 16:56:18.440863: Marginal energy costs matrix computed: min=24.87 max=35.73 2026-08-14 16:56:18.546602: Rate array import [{'start': 1015, 'end': 1020, 'rate': 'expensive', 'range': '(36.9p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 26.7p)'}] export [{'start': 1015, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 16:56:18.547682: - Your estimated bill for today is £7.22 and tomorrow is £3.71 2026-08-14 16:56:18.547742: - Import rates are expensive (36.9p) for the next 5 minutes and then very expensive (43.9p - 53.4p) for the next 2 hours. 2026-08-14 16:56:18.547767: - The battery is currently at 71% and is in eco mode for the next 9 hours. 2026-08-14 16:56:18.547789: - For the next 48 hours there will be no solar generation. 2026-08-14 16:56:18.547813: - You will run out of battery in 13 hours. 2026-08-14 16:56:18.547844: - Your next charge slot will be in 9 hours where import rates will be cheap (24.8p). 2026-08-14 16:56:18.547866: 2026-08-14 16:56:18.613133: Plan calculation took 67.88 seconds 2026-08-14 16:56:18.613469: Inverter 0: Type SK Sunsynk 2026-08-14 16:56:18.613616: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 16:56:18.614424: Reserve min: 7%, battery_min: 7% 2026-08-14 16:56:18.614517: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 16:56:18.614821: Inverter 0 SoC: 11.38kW 71%, current charge rate 5000W, current discharge rate 5250W, current battery power 1695W, current battery voltage 51.2V, grid power -54W, load power 1750W, PV Power 0W 2026-08-14 16:56:18.615051: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:56:18.615208: Inverter 0 scheduled charge enable is False 2026-08-14 16:56:18.615287: Inverter 0 charge windows currently [] 2026-08-14 16:56:18.615348: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 16:56:18.615580: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:56:18.615654: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:56:18.615741: Inverter 0 scheduled discharge enable is False 2026-08-14 16:56:18.616095: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:56:18.616176: Inverter 0 discharge windows currently [] 2026-08-14 16:56:18.616324: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:56:18.616388: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:56:18.616461: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:56:18.728165: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 71%, target 16% 2026-08-14 16:56:18.728460: Inverter 0 disabled charge window while waiting for schedule (now 08-14 16:55:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 16:56:18.728662: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:56:18.729095: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:56:18.729290: No export window planned 2026-08-14 16:56:18.729545: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 16:56:18.729626: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 16:56:18.730103: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 16:56:18.730489: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 16:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 16:56:18.730703: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 16:56:18.730933: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 16:56:18.731307: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:56:18.731519: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:56:18.731717: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:56:18.731900: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:56:18.732108: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:56:18.732306: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:56:18.732499: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 16:56:18.732745: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:56:18.732987: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:56:18.733182: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:56:18.733385: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:56:18.733600: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:56:18.733795: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:56:18.734009: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 16:56:18.734208: Inverter 0 count register writes 0 2026-08-14 16:56:18.808646: Total inverter register writes now 815 2026-08-14 16:56:18.860764: Info: Completed run status Demand 2026-08-14 16:56:18.875170: Info: record_status Demand 2026-08-14 16:56:18.898755: Saved current settings to /config/predbat_config.json 2026-08-14 16:56:18.898979: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 16:56:30.792087: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0091 val_mae=0.0042 kWh val_bias=-0.0010 kWh (-1.4%) combined=0.0036 kWh ema_combined=0.0035 kWh 2026-08-14 16:56:38.561417: TemperatureAPI: Using coordinates latitude 53.4, longitude -2.2 2026-08-14 16:56:38.790504: TemperatureAPI: Successfully fetched temperature data from Open-Meteo API 2026-08-14 16:56:40.443372: Info: HAHistory: Pruning history data started. 2026-08-14 16:56:40.446743: Info: HAHistory: Pruning history data completed. 2026-08-14 16:56:47.552045: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0098 val_mae=0.0043 kWh val_bias=+0.0024 kWh (+3.4%) combined=0.0028 kWh ema_combined=0.0033 kWh 2026-08-14 16:56:57.067087: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:56:57.067561: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:56:57.067702: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:56:57.068024: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:56:57.068158: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:56:57.068291: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:56:57.068396: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:57:03.103119: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0092 val_mae=0.0031 kWh val_bias=-0.0009 kWh (-1.3%) combined=0.0016 kWh ema_combined=0.0028 kWh 2026-08-14 16:57:19.261172: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0103 val_mae=0.0044 kWh val_bias=-0.0014 kWh (-2.0%) combined=0.0024 kWh ema_combined=0.0027 kWh 2026-08-14 16:57:34.377520: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0097 val_mae=0.0043 kWh val_bias=-0.0031 kWh (-4.4%) combined=0.0039 kWh ema_combined=0.0030 kWh 2026-08-14 16:57:49.674968: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0100 val_mae=0.0029 kWh val_bias=-0.0008 kWh (-1.1%) combined=0.0017 kWh ema_combined=0.0026 kWh 2026-08-14 16:58:06.038104: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0083 val_mae=0.0031 kWh val_bias=-0.0013 kWh (-1.9%) combined=0.0017 kWh ema_combined=0.0024 kWh 2026-08-14 16:58:20.587638: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0079 val_mae=0.0025 kWh val_bias=+0.0004 kWh (+0.5%) combined=0.0019 kWh ema_combined=0.0022 kWh 2026-08-14 16:58:34.687019: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0071 val_mae=0.0024 kWh val_bias=-0.0006 kWh (-0.8%) combined=0.0017 kWh ema_combined=0.0021 kWh 2026-08-14 16:58:49.219661: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0073 val_mae=0.0023 kWh val_bias=+0.0005 kWh (+0.7%) combined=0.0012 kWh ema_combined=0.0018 kWh 2026-08-14 16:58:57.461961: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 16:58:57.462332: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 16:58:57.462409: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 16:58:57.462665: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 16:58:57.462732: Note: Inverter does not support discharge freeze - disabled 2026-08-14 16:58:57.462769: Note: Inverter does not support charge freeze - disabled 2026-08-14 16:58:57.462904: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 16:59:05.153541: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0069 val_mae=0.0032 kWh val_bias=-0.0020 kWh (-2.8%) combined=0.0024 kWh ema_combined=0.0020 kWh 2026-08-14 16:59:19.072205: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0071 val_mae=0.0026 kWh val_bias=-0.0006 kWh (-0.9%) combined=0.0014 kWh ema_combined=0.0018 kWh 2026-08-14 16:59:31.819499: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0060 val_mae=0.0022 kWh val_bias=-0.0004 kWh (-0.6%) combined=0.0016 kWh ema_combined=0.0017 kWh 2026-08-14 16:59:47.740757: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0059 val_mae=0.0020 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0011 kWh ema_combined=0.0015 kWh 2026-08-14 17:00:00.856227: --------------- PredBat - update at 2026-08-14 17:00:00+01:00 with clock skew 0 minutes, minutes now 1020 2026-08-14 17:00:00.857688: Saved current settings to /config/predbat_config.json 2026-08-14 17:00:00.857979: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 75.0 minutes 2026-08-14 17:00:00.858158: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 17:00:00.858325: Autoupdate: Currently up to date 2026-08-14 17:00:01.486309: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 17:00:01.486465: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 17:00:01.486695: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 17:00:01.487388: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 17:00:01.487534: Predbat mode is set to Control charge & discharge 2026-08-14 17:00:01.834110: Found 21602 load_today datapoints going back 27 days 2026-08-14 17:00:01.834776: Using load_power data to fill gaps in load_today data 2026-08-14 17:00:03.185438: Processing 721 30-minute periods for power integration 2026-08-14 17:00:03.441502: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 17:00:03.441813: Car charging hold False, threshold 6.0kWh 2026-08-14 17:00:03.441877: Current data so far today: load 16.35kWh, import 28.7kWh, export 0.0kWh, PV 0kWh 2026-08-14 17:00:03.464564: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 17:00:03.465305: Standing charge is set to 49.98p 2026-08-14 17:00:03.588629: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 17:00:03.588741: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 17:00:03.589018: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 385.0 minutes 2026-08-14 17:00:03.589668: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 385.0 minutes 2026-08-14 17:00:03.595565: Loaded 95 datapoints of futurerate analysis 2026-08-14 17:00:03.955316: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13'] 2026-08-14 17:00:03.998383: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 17:00:03.998955: Import rates: min 13.77p, max 53.39p, average 26.7p 2026-08-14 17:00:04.037826: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 17:00:04.038060: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 17:00:04.039097: High export rate found rates in range 99p to -99p 2026-08-14 17:00:04.150044: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 17:00:04.150311: Car 0 charging is not planned as it is not plugged in 2026-08-14 17:00:04.165746: Battery level now 11.38kWh, -1hr ago 12.04kWh, at midnight 2.43kWh, battery value change in the last hour -7.89p, change today 105.77p, rate_forward 11.83p 2026-08-14 17:00:04.166357: Last hour: net energy 0.5kWh, import 0.5kWh, export 0.0kWh, car 0kWh, load 1.05kWh, net cost 18.53p, import 18.53p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 17:00:04.266586: Today's energy total net 28.7kWh, import 28.7kWh, export 0.0kWh, cost 722.1p, import 672.12p, export 0.0p, carbon 0.0kg 2026-08-14 17:00:04.266761: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 17:00:04.514123: Using weighted-bucket historical load forecast over 14 days 2026-08-14 17:00:04.546132: Today's load divergence 131.39%, in-day adjustment 134.78%, damping 0.95x, yesterday 146.81% today 129.82% blend 29.17% 2026-08-14 17:00:04.546373: Today's predicted so far 9.8kWh with 0.0kWh car/iBoost excluded, 17.37kWh import ignored, and 9.8kWh forecast extra. 2026-08-14 17:00:04.546422: Today's actual load so far 16.34kWh with 0.0kWh car/iBoost excluded, and 17.37kWh import ignored. 2026-08-14 17:00:04.626555: Inverter 0: Type SK Sunsynk 2026-08-14 17:00:04.626675: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 17:00:04.627471: Reserve min: 7%, battery_min: 7% 2026-08-14 17:00:04.627683: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 17:00:04.628694: Inverter 0 SoC: 11.24kW 70%, current charge rate 5000W, current discharge rate 5250W, current battery power 1644W, current battery voltage 51.2V, grid power -54W, load power 1702W, PV Power 0W 2026-08-14 17:00:04.629010: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:00:04.629158: Inverter 0 scheduled charge enable is False 2026-08-14 17:00:04.629220: Inverter 0 charge windows currently [] 2026-08-14 17:00:04.629269: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 17:00:04.629503: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:00:04.629565: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:00:04.629673: Inverter 0 scheduled discharge enable is False 2026-08-14 17:00:04.630011: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:00:04.630188: Inverter 0 discharge windows currently [] 2026-08-14 17:00:04.630340: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:00:04.630482: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:00:04.630620: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:00:04.811234: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 17:00:04.811385: Plan was last updated on 2026-08-14 16:55:00+01:00 and is now 5.0 minutes old 2026-08-14 17:00:04.811776: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 17:00:04.811841: Best export window [ ] 2026-08-14 17:00:04.813272: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 17:00:04.819135: Load divergence over 8.0 hours mean 435.62W, min 279.0W, max 1138.2W, std dev 150.81W, divergence 17.31% 2026-08-14 17:00:04.872357: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 17:00:04.872481: LoadML is_calculating True 2026-08-14 17:00:04.872508: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 17:00:04.918980: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1281.52p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:50:00, load 44.15kWh, PV 0.0kWh 2026-08-14 17:00:05.275040: Battery has 11.83 hours left - now at 11.24kWh 2026-08-14 17:00:05.347644: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1315.37p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:05:00, load 45.47kWh, PV 0.0kWh 2026-08-14 17:00:05.472678: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1186.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.47kWh, PV 0.0kWh 2026-08-14 17:00:05.727310: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1157.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:35:00, load 44.15kWh, PV 0.0kWh 2026-08-14 17:00:05.727580: Saving plan best values to HA entities 2026-08-14 17:00:06.136547: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 17:00:06.145532: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 17:00:06.161805: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.69kWh, house 2.87kWh, export 0.0kWh, metric 1157.0p, metric10 1186.12p 2026-08-14 17:00:06.335300: Marginal costs baseline metric (no standing charge): 1057.0345 2026-08-14 17:00:06.896456: Marginal energy costs matrix computed: min=24.85 max=36.09 2026-08-14 17:00:07.104594: Rate array import [{'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1020, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 17:00:07.118010: - Your estimated bill for today is £7.22 and tomorrow is £3.73 2026-08-14 17:00:07.133052: - Import rates are very expensive (43.9p - 53.4p) for the next 2 hours and then expensive (40.1p) for the next 30 minutes. 2026-08-14 17:00:07.133356: - The battery is currently at 70% and is in eco mode for the next 9 hours. 2026-08-14 17:00:07.133526: - For the next 48 hours there will be no solar generation. 2026-08-14 17:00:07.133654: - You will run out of battery in 13 hours. 2026-08-14 17:00:07.133860: - Your next charge slot will be in 9 hours where import rates will be cheap (24.8p). 2026-08-14 17:00:07.134033: 2026-08-14 17:00:07.233332: Plan calculation took 2.42 seconds 2026-08-14 17:00:07.239880: No high rate period found 2026-08-14 17:00:07.335910: Import threshold used for optimisation was 27.18p 2026-08-14 17:00:07.440870: Low import rate windows [0: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 1: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 2: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 3: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 4: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 5: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 6: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 7: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 8: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 9: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 10: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 11: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 12: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 13: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 14: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 15: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 16: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 17: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 18: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 19: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 20: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 21: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 22: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 23: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 24: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 25: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 26: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 27: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 28: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 29: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 30: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 31: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 32: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 33: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 34: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 35: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 36: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 37: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 38: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 39: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 40: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 41: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 42: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 43: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 44: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 45: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 46: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 47: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 48: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 49: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 50: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 51: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 52: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 53: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 54: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 55: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 56: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 57: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 58: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 59: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 60: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 61: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 62: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 63: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 64: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 65: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 66: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 67: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 68: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 69: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 70: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 71: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 72: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 73: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 74: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 75: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 76: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 77: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 78: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 79: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 80: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 81: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 82: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 83: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 84: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 85: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 86: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 87: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 88: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 89: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 90: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 91: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 92: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 93: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 94: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13] 2026-08-14 17:00:07.468098: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 70%, target 16% 2026-08-14 17:00:07.468318: Inverter 0 disabled charge window while waiting for schedule (now 08-14 17:00:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 17:00:07.468522: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:00:07.468865: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:00:07.469113: No export window planned 2026-08-14 17:00:07.469387: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 17:00:07.469506: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:00:07.469761: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:00:07.470247: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 17:00:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 17:00:07.470451: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 17:00:07.470692: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 17:00:07.470955: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:00:07.471149: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:00:07.471305: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:00:07.471482: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:00:07.471623: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:00:07.471800: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:00:07.471956: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:00:07.472473: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:00:07.472695: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:00:07.472872: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:00:07.473074: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:00:07.473381: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:00:07.473564: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:00:07.473792: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:00:07.473964: Inverter 0 count register writes 0 2026-08-14 17:00:07.532165: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 17:00:07.551161: Total inverter register writes now 815 2026-08-14 17:00:07.664157: Info: Completed run status Demand 2026-08-14 17:00:07.677513: Info: record_status Demand 2026-08-14 17:00:07.691430: Saved current settings to /config/predbat_config.json 2026-08-14 17:00:07.691798: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 17:00:07.819790: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0058 val_mae=0.0023 kWh val_bias=-0.0013 kWh (-1.8%) combined=0.0018 kWh ema_combined=0.0016 kWh 2026-08-14 17:00:35.154765: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0061 val_mae=0.0021 kWh val_bias=+0.0003 kWh (+0.4%) combined=0.0015 kWh ema_combined=0.0016 kWh 2026-08-14 17:00:41.830026: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:00:41.830363: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:00:41.830431: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:00:41.830663: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:00:41.830723: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:00:41.830763: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:00:41.830927: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:00:53.586755: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0061 val_mae=0.0021 kWh val_bias=+0.0010 kWh (+1.5%) combined=0.0019 kWh ema_combined=0.0017 kWh 2026-08-14 17:01:13.678369: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0050 val_mae=0.0024 kWh val_bias=-0.0012 kWh (-1.8%) combined=0.0016 kWh ema_combined=0.0017 kWh 2026-08-14 17:01:28.729437: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0050 val_mae=0.0019 kWh val_bias=+0.0005 kWh (+0.7%) combined=0.0011 kWh ema_combined=0.0015 kWh 2026-08-14 17:01:49.876986: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0050 val_mae=0.0018 kWh val_bias=-0.0004 kWh (-0.6%) combined=0.0011 kWh ema_combined=0.0014 kWh 2026-08-14 17:02:09.929397: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0049 val_mae=0.0019 kWh val_bias=-0.0008 kWh (-1.1%) combined=0.0013 kWh ema_combined=0.0013 kWh 2026-08-14 17:02:33.577569: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0048 val_mae=0.0016 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0011 kWh ema_combined=0.0013 kWh 2026-08-14 17:02:42.262047: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:02:42.262467: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:02:42.262524: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:02:42.262767: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:02:42.262893: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:02:42.262976: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:02:42.263043: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:03:01.702517: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0046 val_mae=0.0018 kWh val_bias=-0.0009 kWh (-1.3%) combined=0.0015 kWh ema_combined=0.0013 kWh 2026-08-14 17:03:16.720404: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0047 val_mae=0.0017 kWh val_bias=-0.0004 kWh (-0.6%) combined=0.0012 kWh ema_combined=0.0013 kWh 2026-08-14 17:03:38.277952: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0049 val_mae=0.0017 kWh val_bias=-0.0004 kWh (-0.5%) combined=0.0009 kWh ema_combined=0.0012 kWh 2026-08-14 17:04:00.950590: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0048 val_mae=0.0018 kWh val_bias=-0.0006 kWh (-0.8%) combined=0.0012 kWh ema_combined=0.0012 kWh 2026-08-14 17:04:19.192142: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0049 val_mae=0.0018 kWh val_bias=-0.0009 kWh (-1.3%) combined=0.0015 kWh ema_combined=0.0013 kWh 2026-08-14 17:04:37.895389: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0041 val_mae=0.0018 kWh val_bias=-0.0009 kWh (-1.2%) combined=0.0013 kWh ema_combined=0.0013 kWh 2026-08-14 17:04:54.709065: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0046 val_mae=0.0015 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0009 kWh ema_combined=0.0012 kWh 2026-08-14 17:04:54.717386: ML Predictor: Restored best weights from epoch with val_mae=0.0015 kWh val_bias=-0.0001 kWh (-0.1%) 2026-08-14 17:04:54.717752: ML Predictor: Training complete, final val_mae=0.0015 kWh val_bias=-0.0001 kWh (-0.1%) 2026-08-14 17:04:55.748794: ML Predictor: AR rollout over holdout: ar_mae=0.0017 kWh ar_bias=+0.0001 kWh (+0.1%) [drift vs teacher-forced: +0.0001 kWh] 2026-08-14 17:04:55.760225: ML Predictor: Curriculum pass 3/5 complete, val_mae=0.0015 kWh 2026-08-14 17:04:55.842250: ML Predictor: Curriculum pass 4/5: window=56.0 days (1344 hours of data) 2026-08-14 17:04:55.842551: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 17:04:56.487936: ML Predictor: Creating dataset with 1344 hours of training data, 48 hours validation 2026-08-14 17:04:56.714739: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:04:56.720279: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:04:56.725519: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:04:56.731036: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:04:56.736265: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:04:56.741449: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:04:56.746630: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:05:02.026314: --------------- PredBat - update at 2026-08-14 17:05:00+01:00 with clock skew 0 minutes, minutes now 1025 2026-08-14 17:05:02.064327: ML Predictor: Created 15840 training samples, 576 validation samples 2026-08-14 17:05:02.065483: Saved current settings to /config/predbat_config.json 2026-08-14 17:05:02.065690: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 80.0 minutes 2026-08-14 17:05:02.065842: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 17:05:02.065979: Autoupdate: Currently up to date 2026-08-14 17:05:02.093913: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 17:05:02.094088: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 17:05:02.094265: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 17:05:02.095034: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 17:05:02.095234: Predbat mode is set to Control charge & discharge 2026-08-14 17:05:02.113314: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0472) load(mean=0.0589 std=0.0473) pv(mean=0.0000 std=0.0100) temp(mean=19.5204 std=4.4281) import_rate(mean=24.2518 std=2.0164) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1905 std=0.5239) 2026-08-14 17:05:02.191555: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 17:05:02.223781: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 17:05:02.437768: ML Predictor: Baseline (pre-finetune) val_mae=0.0115 kWh val_bias=-0.0090 kWh 2026-08-14 17:05:02.482433: Found 21602 load_today datapoints going back 27 days 2026-08-14 17:05:02.484280: Using load_power data to fill gaps in load_today data 2026-08-14 17:05:03.720310: Processing 721 30-minute periods for power integration 2026-08-14 17:05:03.905094: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 17:05:03.905579: Car charging hold False, threshold 6.0kWh 2026-08-14 17:05:03.905635: Current data so far today: load 16.5kWh, import 28.7kWh, export 0.0kWh, PV 0kWh 2026-08-14 17:05:03.919898: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 17:05:03.920380: Standing charge is set to 49.98p 2026-08-14 17:05:04.004409: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 17:05:04.004544: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 17:05:04.004799: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 390.0 minutes 2026-08-14 17:05:04.005417: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 390.0 minutes 2026-08-14 17:05:04.016864: Loaded 95 datapoints of futurerate analysis 2026-08-14 17:05:04.398458: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13'] 2026-08-14 17:05:04.447360: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 17:05:04.447739: Import rates: min 13.77p, max 53.39p, average 26.69p 2026-08-14 17:05:04.495208: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 17:05:04.495412: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 17:05:04.496899: High export rate found rates in range 99p to -99p 2026-08-14 17:05:04.614560: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 17:05:04.614928: Car 0 charging is not planned as it is not plugged in 2026-08-14 17:05:04.634374: Battery level now 11.24kWh, -1hr ago 12.04kWh, at midnight 2.43kWh, battery value change in the last hour -9.5p, change today 104.16p, rate_forward 11.83p 2026-08-14 17:05:04.634974: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.0kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 17:05:04.719061: Today's energy total net 28.7kWh, import 28.7kWh, export 0.0kWh, cost 722.1p, import 672.12p, export 0.0p, carbon 0.0kg 2026-08-14 17:05:04.719350: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 17:05:04.958891: Using weighted-bucket historical load forecast over 14 days 2026-08-14 17:05:05.030060: Today's load divergence 131.91%, in-day adjustment 135.07%, damping 0.95x, yesterday 146.81% today 130.31% blend 28.82% 2026-08-14 17:05:05.030240: Today's predicted so far 9.87kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 9.87kWh forecast extra. 2026-08-14 17:05:05.030302: Today's actual load so far 16.57kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 17:05:05.085435: Inverter 0: Type SK Sunsynk 2026-08-14 17:05:05.085566: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 17:05:05.086805: Reserve min: 7%, battery_min: 7% 2026-08-14 17:05:05.086956: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 17:05:05.087333: Inverter 0 SoC: 11.11kW 69%, current charge rate 5000W, current discharge rate 5250W, current battery power 1721W, current battery voltage 51.2V, grid power -55W, load power 1780W, PV Power 0W 2026-08-14 17:05:05.087818: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:05:05.087990: Inverter 0 scheduled charge enable is False 2026-08-14 17:05:05.088050: Inverter 0 charge windows currently [] 2026-08-14 17:05:05.088095: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 17:05:05.088258: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:05:05.088312: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:05:05.088372: Inverter 0 scheduled discharge enable is False 2026-08-14 17:05:05.088577: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:05:05.088632: Inverter 0 discharge windows currently [] 2026-08-14 17:05:05.088669: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:05:05.088697: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:05:05.088728: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:05:05.267063: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 17:05:05.267226: Plan was last updated on 2026-08-14 16:55:00+01:00 and is now 10.0 minutes old 2026-08-14 17:05:05.267679: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 17:05:05.267744: Best export window [ ] 2026-08-14 17:05:05.269238: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 17:05:05.275399: Load divergence over 8.0 hours mean 437.21W, min 267.0W, max 1243.8W, std dev 171.43W, divergence 19.61% 2026-08-14 17:05:05.389354: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 17:05:05.389644: LoadML is_calculating True 2026-08-14 17:05:05.389694: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 17:05:05.434913: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1284.49p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:40:00, load 44.33kWh, PV 0.0kWh 2026-08-14 17:05:05.735541: Battery has 11.58 hours left - now at 11.11kWh 2026-08-14 17:05:05.860689: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1318.35p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:55:00, load 45.66kWh, PV 0.0kWh 2026-08-14 17:05:06.026755: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1194.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.66kWh, PV 0.0kWh 2026-08-14 17:05:06.196264: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1166.61p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 44.33kWh, PV 0.0kWh 2026-08-14 17:05:06.209123: Saving plan best values to HA entities 2026-08-14 17:05:06.636981: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 17:05:06.658005: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 17:05:06.674248: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.21kWh, house 2.92kWh, export 0.0kWh, metric 1166.61p, metric10 1194.75p 2026-08-14 17:05:06.925151: Marginal costs baseline metric (no standing charge): 1066.6392 2026-08-14 17:05:07.360699: Marginal energy costs matrix computed: min=24.92 max=36.37 2026-08-14 17:05:07.514955: Rate array import [{'start': 1025, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1025, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 17:05:07.515986: - Your estimated bill for today is £7.22 and tomorrow is £3.75 2026-08-14 17:05:07.516045: - Import rates are very expensive (43.9p - 53.4p) for the next 1 hours and then expensive (40.1p) for the next 30 minutes. 2026-08-14 17:05:07.516073: - The battery is currently at 69% and is in eco mode for the next 9 hours. 2026-08-14 17:05:07.516098: - For the next 48 hours there will be no solar generation. 2026-08-14 17:05:07.516146: - You will run out of battery in 13 hours. 2026-08-14 17:05:07.516171: - Your next charge slot will be in 9 hours where import rates will be cheap (24.8p). 2026-08-14 17:05:07.516195: 2026-08-14 17:05:07.617626: Plan calculation took 2.35 seconds 2026-08-14 17:05:07.623108: No high rate period found 2026-08-14 17:05:07.784062: Import threshold used for optimisation was 27.18p 2026-08-14 17:05:07.905559: Low import rate windows [0: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 1: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 2: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 3: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 4: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 5: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 6: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 7: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 8: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 9: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 10: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 11: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 12: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 13: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 14: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 15: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 16: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 17: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 18: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 19: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 20: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 21: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 22: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 23: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 24: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 25: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 26: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 27: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 28: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 29: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 30: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 31: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 32: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 33: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 34: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 35: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 36: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 37: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 38: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 39: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 40: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 41: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 42: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 43: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 44: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 45: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 46: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 47: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 48: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 49: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 50: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 51: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 52: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 53: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 54: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 55: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 56: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 57: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 58: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 59: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 60: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 61: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 62: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 63: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 64: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 65: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 66: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 67: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 68: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 69: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 70: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 71: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 72: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 73: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 74: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 75: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 76: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 77: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 78: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 79: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 80: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 81: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 82: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 83: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 84: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 85: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 86: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 87: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 88: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 89: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 90: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 91: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 92: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 93: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 94: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 95: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46] 2026-08-14 17:05:07.919560: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 69%, target 16% 2026-08-14 17:05:07.919755: Inverter 0 disabled charge window while waiting for schedule (now 08-14 17:05:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 17:05:07.919856: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:05:07.920201: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:05:07.920323: No export window planned 2026-08-14 17:05:07.920449: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 17:05:07.920493: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:05:07.920664: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:05:07.920846: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 17:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 17:05:07.920907: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 17:05:07.921090: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 17:05:07.921218: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:05:07.921293: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:05:07.921350: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:05:07.921533: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:05:07.921614: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:05:07.921766: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:05:07.921840: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:05:07.922070: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:05:07.922148: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:05:07.922241: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:05:07.922415: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:05:07.922581: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:05:07.922753: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:05:07.922899: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:05:07.923093: Inverter 0 count register writes 0 2026-08-14 17:05:07.953392: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 17:05:07.953792: Recompute is saving previous plan... 2026-08-14 17:05:07.958754: Best charge window [ 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0% ] 2026-08-14 17:05:07.959004: Best export window [ ] 2026-08-14 17:05:07.960410: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 17:05:07.965312: Load divergence over 8.0 hours mean 437.21W, min 267.0W, max 1243.8W, std dev 171.43W, divergence 19.61% 2026-08-14 17:05:07.990664: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 17:05:07.990986: LoadML is_calculating True 2026-08-14 17:05:07.991121: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 17:05:08.001749: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 17:05:08.003473: Optimise levels pass started at 2026-08-14 17:05:08 2026-08-14 17:05:08.003553: Optimise all windows, total charge 95 export 1 2026-08-14 17:05:14.193326: >> Region optimisation pass width 960 gives best_metric 1101.9p, best_cost 1109.26p, best_cycle 38.4kWh, best_import 23.92kWh 2026-08-14 17:05:15.002680: >> Region optimisation pass width 480 gives best_metric 1101.9p, best_cost 1109.26p, best_cycle 38.4kWh, best_import 23.92kWh 2026-08-14 17:05:16.260910: >> Region optimisation pass width 240 gives best_metric 1101.9p, best_cost 1109.26p, best_cycle 38.4kWh, best_import 23.92kWh 2026-08-14 17:05:19.338789: >> Region optimisation pass width 120 gives best_metric 1101.9p, best_cost 1109.26p, best_cycle 38.4kWh, best_import 23.92kWh 2026-08-14 17:05:19.339412: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 84 2026-08-14 17:05:19.339614: Optimise levels pass ended at 2026-08-14 17:05:19, duration 11.3 seconds tried 322 combinations 2026-08-14 17:05:19.339794: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1101.9p, best_keep 0kWh, best_cycle 38.4kWh, best_carbon 0kg, best_import 23.92kWh 2026-08-14 17:05:19.367623: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 17:05:54.309684: Tweak plan optimisation started metric 1042.25p, cost 1051.16p 2026-08-14 17:05:56.562491: Tweak optimisation finished metric 1042.25p, cost 1051.16p, metric_keep 0kWh, cycle 34.46kWh, carbon 0kg, import 20.12kWh, changed 8 window(s) 2026-08-14 17:05:56.587192: Swap charge optimisation started metric 1042.25p, cost 1051.16p, min_improvement_swap 0.1p 2026-08-14 17:06:01.497794: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0106 val_mae=0.0077 kWh val_bias=-0.0034 kWh (-3.8%) combined=0.0055 kWh ema_combined=0.0055 kWh 2026-08-14 17:06:10.640634: Swap charge optimisation finished metric 1042.25p, cost 1051.16p 2026-08-14 17:06:10.855578: Pruned 1 dead plan slot(s) in 13 trial(s), nominal metric 1037.92p -> 1037.92p, plan now metric 1042.28p, cost 1051.16p, cycle 34.46kWh, import 20.12kWh 2026-08-14 17:06:10.868162: Raw charge windows [ 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 13%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 13%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100% ] reserve 1.12 2026-08-14 17:06:10.868774: Unclipped charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 17:30:00 @ 33.57p 100% ] reserve 1.12 2026-08-14 17:06:10.869115: Unfiltered charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 17:30:00 @ 33.57p 100% ] reserve 1.12 2026-08-14 17:06:10.869354: Filtered charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 17:30:00 @ 33.57p 100% ] reserve 1.12 2026-08-14 17:06:10.910803: Previous plan best metric is 1041.69 (cost 1050.51) and new plan best metric is 1042.25 (cost 1051.16) 2026-08-14 17:06:10.911629: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 17:06:10.911906: Plan valid is now true after recompute was False 2026-08-14 17:06:10.933966: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1281.8p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:40:00, load 44.16kWh, PV 0.0kWh 2026-08-14 17:06:11.120840: Battery has 11.58 hours left - now at 11.11kWh 2026-08-14 17:06:11.182617: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1315.53p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:55:00, load 45.48kWh, PV 0.0kWh 2026-08-14 17:06:11.282282: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1181.2p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.48kWh, PV 0.0kWh 2026-08-14 17:06:11.447901: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1151.04p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 44.16kWh, PV 0.0kWh 2026-08-14 17:06:11.448228: Saving plan best values to HA entities 2026-08-14 17:06:11.819812: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 17:06:11.833316: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 17:06:11.854515: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.21kWh, house 2.92kWh, export 0.0kWh, metric 1151.04p, metric10 1181.2p 2026-08-14 17:06:11.986386: Marginal costs baseline metric (no standing charge): 1051.0745 2026-08-14 17:06:12.489233: Marginal energy costs matrix computed: min=24.92 max=36.37 2026-08-14 17:06:12.606612: Rate array import [{'start': 1025, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 26.7p)'}] export [{'start': 1025, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 17:06:12.607647: - Your estimated bill for today is £7.22 and tomorrow is £3.75 2026-08-14 17:06:12.607707: - Import rates are very expensive (43.9p - 53.4p) for the next 1 hours and then expensive (40.1p) for the next 30 minutes. 2026-08-14 17:06:12.607736: - The battery is currently at 69% and is in eco mode for the next 9 hours. 2026-08-14 17:06:12.607760: - For the next 48 hours there will be no solar generation. 2026-08-14 17:06:12.607789: - You will run out of battery in 13 hours. 2026-08-14 17:06:12.607813: - Your next charge slot will be in 9 hours where import rates will be cheap (24.8p). 2026-08-14 17:06:12.607843: 2026-08-14 17:06:12.674998: Plan calculation took 64.72 seconds 2026-08-14 17:06:12.675289: Inverter 0: Type SK Sunsynk 2026-08-14 17:06:12.675343: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 17:06:12.676120: Reserve min: 7%, battery_min: 7% 2026-08-14 17:06:12.676218: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 17:06:12.676544: Inverter 0 SoC: 11.11kW 69%, current charge rate 5000W, current discharge rate 5250W, current battery power 1705W, current battery voltage 51.2V, grid power -54W, load power 1764W, PV Power 0W 2026-08-14 17:06:12.676731: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:06:12.676837: Inverter 0 scheduled charge enable is False 2026-08-14 17:06:12.676880: Inverter 0 charge windows currently [] 2026-08-14 17:06:12.676914: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 17:06:12.677111: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:06:12.677162: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:06:12.677208: Inverter 0 scheduled discharge enable is False 2026-08-14 17:06:12.677372: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:06:12.677416: Inverter 0 discharge windows currently [] 2026-08-14 17:06:12.677444: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:06:12.677468: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:06:12.677493: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:06:12.764215: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 69%, target 16% 2026-08-14 17:06:12.764398: Inverter 0 disabled charge window while waiting for schedule (now 08-14 17:05:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 17:06:12.764577: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:06:12.764937: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:06:12.765132: No export window planned 2026-08-14 17:06:12.765325: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 17:06:12.765485: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:06:12.765763: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:06:12.766036: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 17:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 17:06:12.766107: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 17:06:12.766261: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 17:06:12.766417: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:06:12.766477: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:06:12.766571: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:06:12.766657: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:06:12.766751: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:06:12.766879: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:06:12.766948: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:06:12.767077: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:06:12.767242: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:06:12.767394: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:06:12.767544: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:06:12.767661: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:06:12.767712: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:06:12.767836: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:06:12.767883: Inverter 0 count register writes 0 2026-08-14 17:06:12.801093: Total inverter register writes now 815 2026-08-14 17:06:12.854909: Info: Completed run status Demand 2026-08-14 17:06:12.863432: Info: record_status Demand 2026-08-14 17:06:12.873629: Saved current settings to /config/predbat_config.json 2026-08-14 17:06:12.873894: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 17:06:25.603782: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0119 val_mae=0.0066 kWh val_bias=+0.0011 kWh (+1.3%) combined=0.0041 kWh ema_combined=0.0051 kWh 2026-08-14 17:06:41.484823: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0129 val_mae=0.0075 kWh val_bias=-0.0015 kWh (-1.7%) combined=0.0047 kWh ema_combined=0.0050 kWh 2026-08-14 17:06:57.050072: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:06:57.050373: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:06:57.050426: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:06:57.050752: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:06:57.050811: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:06:57.050895: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:06:57.051005: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:06:58.153183: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0130 val_mae=0.0069 kWh val_bias=-0.0030 kWh (-3.4%) combined=0.0048 kWh ema_combined=0.0049 kWh 2026-08-14 17:07:15.305364: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0126 val_mae=0.0081 kWh val_bias=-0.0044 kWh (-4.9%) combined=0.0056 kWh ema_combined=0.0051 kWh 2026-08-14 17:07:29.928315: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0109 val_mae=0.0076 kWh val_bias=-0.0006 kWh (-0.7%) combined=0.0039 kWh ema_combined=0.0048 kWh 2026-08-14 17:07:44.674751: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0126 val_mae=0.0070 kWh val_bias=-0.0013 kWh (-1.4%) combined=0.0036 kWh ema_combined=0.0044 kWh 2026-08-14 17:07:58.598060: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0115 val_mae=0.0063 kWh val_bias=-0.0018 kWh (-2.0%) combined=0.0035 kWh ema_combined=0.0041 kWh 2026-08-14 17:08:14.197645: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0117 val_mae=0.0062 kWh val_bias=+0.0007 kWh (+0.8%) combined=0.0039 kWh ema_combined=0.0041 kWh 2026-08-14 17:08:29.105896: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0097 val_mae=0.0057 kWh val_bias=-0.0012 kWh (-1.3%) combined=0.0037 kWh ema_combined=0.0040 kWh 2026-08-14 17:08:44.011618: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0117 val_mae=0.0074 kWh val_bias=-0.0030 kWh (-3.4%) combined=0.0039 kWh ema_combined=0.0039 kWh 2026-08-14 17:08:57.415003: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:08:57.415300: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:08:57.415353: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:08:57.415523: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:08:57.415570: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:08:57.415598: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:08:57.415716: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:08:59.507757: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0096 val_mae=0.0058 kWh val_bias=-0.0008 kWh (-0.9%) combined=0.0030 kWh ema_combined=0.0037 kWh 2026-08-14 17:09:13.875026: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0084 val_mae=0.0060 kWh val_bias=-0.0027 kWh (-3.0%) combined=0.0034 kWh ema_combined=0.0036 kWh 2026-08-14 17:09:29.998007: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0081 val_mae=0.0067 kWh val_bias=-0.0039 kWh (-4.4%) combined=0.0047 kWh ema_combined=0.0039 kWh 2026-08-14 17:09:45.356734: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0080 val_mae=0.0054 kWh val_bias=-0.0018 kWh (-2.0%) combined=0.0032 kWh ema_combined=0.0037 kWh 2026-08-14 17:09:59.856171: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0077 val_mae=0.0050 kWh val_bias=+0.0007 kWh (+0.8%) combined=0.0029 kWh ema_combined=0.0035 kWh 2026-08-14 17:10:00.721148: --------------- PredBat - update at 2026-08-14 17:10:00+01:00 with clock skew 0 minutes, minutes now 1030 2026-08-14 17:10:00.722523: Saved current settings to /config/predbat_config.json 2026-08-14 17:10:00.722682: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 85.0 minutes 2026-08-14 17:10:00.722777: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 17:10:00.722870: Autoupdate: Currently up to date 2026-08-14 17:10:01.568565: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 17:10:01.568735: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 17:10:01.569008: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 17:10:01.569581: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 17:10:01.569715: Predbat mode is set to Control charge & discharge 2026-08-14 17:10:01.958542: Found 21602 load_today datapoints going back 28 days 2026-08-14 17:10:01.958798: Using load_power data to fill gaps in load_today data 2026-08-14 17:10:03.118308: Processing 721 30-minute periods for power integration 2026-08-14 17:10:03.326100: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 17:10:03.326245: Car charging hold False, threshold 6.0kWh 2026-08-14 17:10:03.326292: Current data so far today: load 16.65kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 17:10:03.350783: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 17:10:03.351503: Standing charge is set to 49.98p 2026-08-14 17:10:03.518042: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 17:10:03.519576: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 17:10:03.519988: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 395.0 minutes 2026-08-14 17:10:03.520653: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 395.0 minutes 2026-08-14 17:10:03.527826: Loaded 95 datapoints of futurerate analysis 2026-08-14 17:10:03.762048: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13'] 2026-08-14 17:10:03.830890: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 17:10:03.849972: Import rates: min 13.77p, max 53.39p, average 26.68p 2026-08-14 17:10:03.984454: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 17:10:03.984799: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 17:10:03.986908: High export rate found rates in range 99p to -99p 2026-08-14 17:10:04.108525: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 17:10:04.108752: Car 0 charging is not planned as it is not plugged in 2026-08-14 17:10:04.123435: Battery level now 11.11kWh, -1hr ago 12.09kWh, at midnight 2.43kWh, battery value change in the last hour -11.54p, change today 102.65p, rate_forward 11.83p 2026-08-14 17:10:04.123760: Last hour: net energy 0.09kWh, import 0.09kWh, export 0.0kWh, car 0kWh, load 1.1kWh, net cost 3.46p, import 3.46p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 17:10:04.208720: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 17:10:04.208867: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 17:10:04.325874: Using weighted-bucket historical load forecast over 14 days 2026-08-14 17:10:04.371113: Today's load divergence 132.23%, in-day adjustment 135.23%, damping 0.95x, yesterday 146.81% today 130.61% blend 28.47% 2026-08-14 17:10:04.371594: Today's predicted so far 9.87kWh with 0.0kWh car/iBoost excluded, 17.18kWh import ignored, and 9.87kWh forecast extra. 2026-08-14 17:10:04.371631: Today's actual load so far 16.67kWh with 0.0kWh car/iBoost excluded, and 17.18kWh import ignored. 2026-08-14 17:10:04.442935: Inverter 0: Type SK Sunsynk 2026-08-14 17:10:04.443045: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 17:10:04.443775: Reserve min: 7%, battery_min: 7% 2026-08-14 17:10:04.443871: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 17:10:04.444131: Inverter 0 SoC: 10.97kW 69%, current charge rate 5000W, current discharge rate 5250W, current battery power 1664W, current battery voltage 51.2V, grid power -53W, load power 1722W, PV Power 0W 2026-08-14 17:10:04.444316: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:10:04.444438: Inverter 0 scheduled charge enable is False 2026-08-14 17:10:04.444494: Inverter 0 charge windows currently [] 2026-08-14 17:10:04.444535: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 17:10:04.444687: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:10:04.444743: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:10:04.444898: Inverter 0 scheduled discharge enable is False 2026-08-14 17:10:04.445205: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:10:04.445273: Inverter 0 discharge windows currently [] 2026-08-14 17:10:04.445406: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:10:04.445468: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:10:04.445564: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:10:04.594847: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 17:10:04.594974: Plan was last updated on 2026-08-14 17:05:00+01:00 and is now 5.0 minutes old 2026-08-14 17:10:04.595324: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 17:10:04.595473: Best export window [ ] 2026-08-14 17:10:04.596364: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 17:10:04.599972: Load divergence over 8.0 hours mean 438.74W, min 274.8W, max 1206.0W, std dev 167.82W, divergence 19.13% 2026-08-14 17:10:04.645069: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 17:10:04.645250: LoadML is_calculating True 2026-08-14 17:10:04.645380: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 17:10:04.730625: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1289.68p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:30:00, load 44.37kWh, PV 0.0kWh 2026-08-14 17:10:04.958695: Battery has 11.33 hours left - now at 10.97kWh 2026-08-14 17:10:05.077859: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1323.28p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:40:00, load 45.69kWh, PV 0.0kWh 2026-08-14 17:10:05.218395: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1194.64p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.69kWh, PV 0.0kWh 2026-08-14 17:10:05.446182: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1165.52p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 44.37kWh, PV 0.0kWh 2026-08-14 17:10:05.447167: Saving plan best values to HA entities 2026-08-14 17:10:05.749436: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 17:10:05.758250: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 17:10:05.767348: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.83kWh, house 2.93kWh, export 0.0kWh, metric 1165.52p, metric10 1194.64p 2026-08-14 17:10:05.899608: Marginal costs baseline metric (no standing charge): 1065.5566 2026-08-14 17:10:06.333766: Marginal energy costs matrix computed: min=24.97 max=36.72 2026-08-14 17:10:06.497142: Rate array import [{'start': 1030, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1030, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 17:10:06.499382: - Your estimated bill for today is £7.26 and tomorrow is £3.78 2026-08-14 17:10:06.499535: - Import rates are very expensive (43.9p - 53.4p) for the next 1 and three quarters hours and then expensive (40.1p) for the next 30 minutes. 2026-08-14 17:10:06.499591: - The battery is currently at 69% and is in eco mode for the next 9 hours. 2026-08-14 17:10:06.499677: - For the next 48 hours there will be no solar generation. 2026-08-14 17:10:06.499723: - You will run out of battery in 13 hours. 2026-08-14 17:10:06.499785: - Your next charge slot will be in 9 hours where import rates will be cheap (24.8p). 2026-08-14 17:10:06.499886: 2026-08-14 17:10:06.619005: Plan calculation took 2.02 seconds 2026-08-14 17:10:06.635828: No high rate period found 2026-08-14 17:10:06.757625: Import threshold used for optimisation was 25.6p 2026-08-14 17:10:06.940123: Low import rate windows [0: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 1: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 2: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 3: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 4: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 5: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 6: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 7: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 8: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 9: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 10: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 11: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 12: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 13: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 14: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 15: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 16: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 17: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 18: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 19: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 20: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 21: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 22: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 23: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 24: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 25: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 26: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 27: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 28: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 29: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 30: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 31: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 32: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 33: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 34: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 35: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 36: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 37: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 38: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 39: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 40: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 41: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 42: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 43: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 44: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 45: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 46: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 47: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 48: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 49: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 50: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 51: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 52: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 53: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 54: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 55: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 56: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 57: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 58: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 59: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 60: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 61: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 62: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 63: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 64: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 65: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 66: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 67: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 68: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 69: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 70: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 71: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 72: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 73: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 74: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 75: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 76: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 77: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 78: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 79: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 80: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 81: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 82: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 83: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 84: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 85: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 86: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 87: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 88: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 89: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 90: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 91: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 92: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 93: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 94: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 95: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46] 2026-08-14 17:10:06.961135: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 69%, target 16% 2026-08-14 17:10:06.961371: Inverter 0 disabled charge window while waiting for schedule (now 08-14 17:10:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 17:10:06.961561: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:10:06.962006: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:10:06.962186: No export window planned 2026-08-14 17:10:06.962384: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 17:10:06.962439: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:10:06.962708: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:10:06.962985: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 17:10:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 17:10:06.963060: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 17:10:06.963204: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 17:10:06.963388: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:10:06.963451: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:10:06.963569: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:10:06.963629: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:10:06.963710: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:10:06.963861: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:10:06.964008: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:10:06.964212: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:10:06.964341: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:10:06.964496: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:10:06.964618: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:10:06.964757: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:10:06.964877: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:10:06.965076: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:10:06.965196: Inverter 0 count register writes 0 2026-08-14 17:10:06.990752: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 17:10:06.996642: Total inverter register writes now 815 2026-08-14 17:10:07.045643: Info: Completed run status Demand 2026-08-14 17:10:07.065724: Info: record_status Demand 2026-08-14 17:10:07.100822: Saved current settings to /config/predbat_config.json 2026-08-14 17:10:07.101095: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 17:10:20.022843: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0070 val_mae=0.0054 kWh val_bias=-0.0025 kWh (-2.8%) combined=0.0039 kWh ema_combined=0.0036 kWh 2026-08-14 17:10:34.926272: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0071 val_mae=0.0056 kWh val_bias=-0.0014 kWh (-1.6%) combined=0.0031 kWh ema_combined=0.0034 kWh 2026-08-14 17:10:42.443174: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:10:42.443558: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:10:42.443628: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:10:42.443798: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:10:42.443845: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:10:42.443872: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:10:42.444020: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:10:50.045712: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0068 val_mae=0.0058 kWh val_bias=-0.0032 kWh (-3.6%) combined=0.0042 kWh ema_combined=0.0037 kWh 2026-08-14 17:11:04.151238: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0071 val_mae=0.0049 kWh val_bias=-0.0018 kWh (-2.1%) combined=0.0031 kWh ema_combined=0.0035 kWh 2026-08-14 17:11:23.966734: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0063 val_mae=0.0050 kWh val_bias=-0.0025 kWh (-2.8%) combined=0.0035 kWh ema_combined=0.0035 kWh 2026-08-14 17:11:39.091144: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0061 val_mae=0.0044 kWh val_bias=-0.0012 kWh (-1.4%) combined=0.0026 kWh ema_combined=0.0032 kWh 2026-08-14 17:11:53.980421: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0063 val_mae=0.0044 kWh val_bias=-0.0015 kWh (-1.7%) combined=0.0027 kWh ema_combined=0.0031 kWh 2026-08-14 17:12:09.703477: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0067 val_mae=0.0041 kWh val_bias=-0.0005 kWh (-0.6%) combined=0.0024 kWh ema_combined=0.0029 kWh 2026-08-14 17:12:23.850773: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0062 val_mae=0.0040 kWh val_bias=-0.0005 kWh (-0.6%) combined=0.0023 kWh ema_combined=0.0027 kWh 2026-08-14 17:12:38.221303: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0058 val_mae=0.0045 kWh val_bias=-0.0021 kWh (-2.4%) combined=0.0031 kWh ema_combined=0.0028 kWh 2026-08-14 17:12:52.698128: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0062 val_mae=0.0047 kWh val_bias=-0.0019 kWh (-2.2%) combined=0.0027 kWh ema_combined=0.0028 kWh 2026-08-14 17:12:56.897352: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:12:56.897791: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:12:56.897855: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:12:56.898153: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:12:56.898985: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:12:56.899048: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:12:56.899139: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:13:09.465905: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0058 val_mae=0.0042 kWh val_bias=-0.0015 kWh (-1.7%) combined=0.0024 kWh ema_combined=0.0027 kWh 2026-08-14 17:13:29.710549: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0057 val_mae=0.0044 kWh val_bias=-0.0019 kWh (-2.1%) combined=0.0029 kWh ema_combined=0.0027 kWh 2026-08-14 17:13:44.576579: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0058 val_mae=0.0042 kWh val_bias=-0.0015 kWh (-1.7%) combined=0.0027 kWh ema_combined=0.0027 kWh 2026-08-14 17:13:44.577887: ML Predictor: Restored best weights from epoch with val_mae=0.0042 kWh val_bias=-0.0015 kWh (-1.7%) 2026-08-14 17:13:44.578049: ML Predictor: Training complete, final val_mae=0.0042 kWh val_bias=-0.0015 kWh (-1.7%) 2026-08-14 17:13:45.649868: ML Predictor: AR rollout over holdout: ar_mae=0.0044 kWh ar_bias=-0.0015 kWh (-1.7%) [drift vs teacher-forced: +0.0002 kWh] 2026-08-14 17:13:45.658632: ML Predictor: Curriculum pass 4/5 complete, val_mae=0.0042 kWh 2026-08-14 17:13:45.658888: ML Predictor: Curriculum final pass 5/5: full dataset (56.2 days) 2026-08-14 17:13:45.659060: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 17:13:46.360161: ML Predictor: Creating dataset with 1348 hours of training data, 48 hours validation 2026-08-14 17:13:51.900585: ML Predictor: Created 15889 training samples, 576 validation samples 2026-08-14 17:13:51.948721: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0472) load(mean=0.0590 std=0.0474) pv(mean=0.0000 std=0.0100) temp(mean=19.5419 std=4.4442) import_rate(mean=24.2640 std=2.0821) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1908 std=0.5242) 2026-08-14 17:13:52.026976: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 17:13:52.041184: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 17:13:52.065298: ML Predictor: Baseline (pre-finetune) val_mae=0.0066 kWh val_bias=-0.0011 kWh 2026-08-14 17:14:05.715054: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0119 val_mae=0.0092 kWh val_bias=+0.0021 kWh (+2.3%) combined=0.0066 kWh ema_combined=0.0066 kWh 2026-08-14 17:14:20.716341: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0116 val_mae=0.0078 kWh val_bias=+0.0011 kWh (+1.2%) combined=0.0048 kWh ema_combined=0.0061 kWh 2026-08-14 17:14:34.581610: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0120 val_mae=0.0082 kWh val_bias=-0.0010 kWh (-1.2%) combined=0.0052 kWh ema_combined=0.0058 kWh 2026-08-14 17:14:50.359977: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0143 val_mae=0.0094 kWh val_bias=-0.0047 kWh (-5.3%) combined=0.0063 kWh ema_combined=0.0059 kWh 2026-08-14 17:14:56.927259: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:14:56.927578: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:14:56.927636: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:14:56.927810: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:14:56.927870: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:14:56.927898: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:14:56.927948: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:15:00.178126: --------------- PredBat - update at 2026-08-14 17:15:00+01:00 with clock skew 0 minutes, minutes now 1035 2026-08-14 17:15:00.179104: Saved current settings to /config/predbat_config.json 2026-08-14 17:15:00.179233: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 90.0 minutes 2026-08-14 17:15:00.179315: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 17:15:00.179491: Autoupdate: Currently up to date 2026-08-14 17:15:00.223944: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 17:15:00.224092: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 17:15:00.224283: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 17:15:00.224851: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 17:15:00.225054: Predbat mode is set to Control charge & discharge 2026-08-14 17:15:00.535576: Found 21602 load_today datapoints going back 28 days 2026-08-14 17:15:00.535773: Using load_power data to fill gaps in load_today data 2026-08-14 17:15:01.753701: Processing 721 30-minute periods for power integration 2026-08-14 17:15:02.018903: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 17:15:02.019523: Car charging hold False, threshold 6.0kWh 2026-08-14 17:15:02.019591: Current data so far today: load 16.8kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 17:15:02.038359: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 17:15:02.038898: Standing charge is set to 49.98p 2026-08-14 17:15:02.120342: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 17:15:02.121742: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 17:15:02.122055: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 400.0 minutes 2026-08-14 17:15:02.122768: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 400.0 minutes 2026-08-14 17:15:02.134851: Loaded 95 datapoints of futurerate analysis 2026-08-14 17:15:02.406515: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13'] 2026-08-14 17:15:02.451933: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 17:15:02.454018: Import rates: min 13.77p, max 53.39p, average 26.67p 2026-08-14 17:15:02.519794: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 17:15:02.519988: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 17:15:02.521783: High export rate found rates in range 99p to -99p 2026-08-14 17:15:02.744568: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 17:15:02.744765: Car 0 charging is not planned as it is not plugged in 2026-08-14 17:15:02.775061: Battery level now 10.97kWh, -1hr ago 12.0kWh, at midnight 2.43kWh, battery value change in the last hour -12.2p, change today 100.95p, rate_forward 11.83p 2026-08-14 17:15:02.775627: Last hour: net energy 0.08kWh, import 0.08kWh, export 0.0kWh, car 0kWh, load 1.2kWh, net cost 3.15p, import 3.15p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 17:15:02.926867: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 17:15:02.927088: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 17:15:03.032275: Using weighted-bucket historical load forecast over 14 days 2026-08-14 17:15:03.061785: Today's load divergence 132.53%, in-day adjustment 135.38%, damping 0.95x, yesterday 146.81% today 130.9% blend 28.12% 2026-08-14 17:15:03.061964: Today's predicted so far 9.87kWh with 0.0kWh car/iBoost excluded, 17.19kWh import ignored, and 9.87kWh forecast extra. 2026-08-14 17:15:03.061996: Today's actual load so far 16.77kWh with 0.0kWh car/iBoost excluded, and 17.19kWh import ignored. 2026-08-14 17:15:03.113447: Inverter 0: Type SK Sunsynk 2026-08-14 17:15:03.113656: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 17:15:03.114299: Reserve min: 7%, battery_min: 7% 2026-08-14 17:15:03.114379: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 17:15:03.114643: Inverter 0 SoC: 10.97kW 69%, current charge rate 5000W, current discharge rate 5250W, current battery power 1638W, current battery voltage 51.2V, grid power -55W, load power 1698W, PV Power 0W 2026-08-14 17:15:03.114794: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:15:03.114882: Inverter 0 scheduled charge enable is False 2026-08-14 17:15:03.114933: Inverter 0 charge windows currently [] 2026-08-14 17:15:03.114963: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 17:15:03.115070: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:15:03.115107: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:15:03.115144: Inverter 0 scheduled discharge enable is False 2026-08-14 17:15:03.115267: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:15:03.115305: Inverter 0 discharge windows currently [] 2026-08-14 17:15:03.115329: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:15:03.115423: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:15:03.115462: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:15:03.186314: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 17:15:03.186437: Plan was last updated on 2026-08-14 17:05:00+01:00 and is now 10.0 minutes old 2026-08-14 17:15:03.186732: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 17:15:03.186774: Best export window [ ] 2026-08-14 17:15:03.187811: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 17:15:03.191754: Load divergence over 8.0 hours mean 440.28W, min 279.0W, max 1164.0W, std dev 165.8W, divergence 18.83% 2026-08-14 17:15:03.214517: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 17:15:03.214703: LoadML is_calculating True 2026-08-14 17:15:03.214737: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 17:15:03.244584: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1290.18p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:35:00, load 44.58kWh, PV 0.0kWh 2026-08-14 17:15:03.464275: Battery has 11.33 hours left - now at 10.97kWh 2026-08-14 17:15:03.547954: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1323.85p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:45:00, load 45.91kWh, PV 0.0kWh 2026-08-14 17:15:03.746547: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1200.52p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.91kWh, PV 0.0kWh 2026-08-14 17:15:03.860168: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1172.48p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:25:00, load 44.58kWh, PV 0.0kWh 2026-08-14 17:15:03.860273: Saving plan best values to HA entities 2026-08-14 17:15:04.160081: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 17:15:04.169072: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 17:15:04.178449: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.31kWh, house 2.92kWh, export 0.0kWh, metric 1172.48p, metric10 1200.52p 2026-08-14 17:15:04.335394: Marginal costs baseline metric (no standing charge): 1072.5139 2026-08-14 17:15:04.797200: Marginal energy costs matrix computed: min=25.03 max=37.1 2026-08-14 17:15:04.980757: Rate array import [{'start': 1035, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1035, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 17:15:04.988188: - Your estimated bill for today is £7.26 and tomorrow is £3.77 2026-08-14 17:15:04.988286: - Import rates are very expensive (43.9p - 53.4p) for the next 1 and three quarters hours and then expensive (40.1p) for the next 30 minutes. 2026-08-14 17:15:04.988318: - The battery is currently at 69% and is in eco mode for the next 9 hours. 2026-08-14 17:15:04.988431: - For the next 48 hours there will be no solar generation. 2026-08-14 17:15:04.988476: - You will run out of battery in 13 hours. 2026-08-14 17:15:04.988502: - Your next charge slot will be in 9 hours where import rates will be cheap (24.8p). 2026-08-14 17:15:04.988638: 2026-08-14 17:15:05.061387: Plan calculation took 1.87 seconds 2026-08-14 17:15:05.065400: No high rate period found 2026-08-14 17:15:05.151600: Import threshold used for optimisation was 25.6p 2026-08-14 17:15:05.257600: Low import rate windows [0: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 1: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 2: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 3: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 4: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 5: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 6: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 7: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 8: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 9: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 10: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 11: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 12: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 13: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 14: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 15: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 16: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 17: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 18: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 19: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 20: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 21: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 22: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 23: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 24: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 25: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 26: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 27: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 28: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 29: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 30: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 31: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 32: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 33: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 34: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 35: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 36: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 37: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 38: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 39: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 40: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 41: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 42: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 43: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 44: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 45: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 46: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 47: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 48: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 49: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 50: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 51: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 52: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 53: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 54: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 55: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 56: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 57: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 58: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 59: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 60: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 61: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 62: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 63: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 64: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 65: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 66: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 67: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 68: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 69: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 70: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 71: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 72: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 73: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 74: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 75: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 76: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 77: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 78: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 79: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 80: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 81: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 82: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 83: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 84: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 85: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 86: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 87: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 88: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 89: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 90: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 91: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 92: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 93: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 94: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 95: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46] 2026-08-14 17:15:05.300882: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 69%, target 16% 2026-08-14 17:15:05.301141: Inverter 0 disabled charge window while waiting for schedule (now 08-14 17:15:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 17:15:05.301227: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:15:05.301455: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:15:05.301546: No export window planned 2026-08-14 17:15:05.301675: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 17:15:05.301720: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:15:05.301891: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:15:05.302095: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 17:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 17:15:05.302157: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 17:15:05.302319: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 17:15:05.302487: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:15:05.302549: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:15:05.302681: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:15:05.302776: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:15:05.302870: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:15:05.302983: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:15:05.303039: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:15:05.303205: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:15:05.303264: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:15:05.303385: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:15:05.303437: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:15:05.303552: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:15:05.303604: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:15:05.303720: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:15:05.303766: Inverter 0 count register writes 0 2026-08-14 17:15:05.338249: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 17:15:05.339017: Recompute is saving previous plan... 2026-08-14 17:15:05.341862: Best charge window [ 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0% ] 2026-08-14 17:15:05.342011: Best export window [ ] 2026-08-14 17:15:05.343057: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 17:15:05.345637: Load divergence over 8.0 hours mean 440.28W, min 279.0W, max 1164.0W, std dev 165.8W, divergence 18.83% 2026-08-14 17:15:05.359981: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 17:15:05.360079: LoadML is_calculating True 2026-08-14 17:15:05.360124: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 17:15:05.367679: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 17:15:05.368686: Optimise levels pass started at 2026-08-14 17:15:05 2026-08-14 17:15:05.368748: Optimise all windows, total charge 95 export 1 2026-08-14 17:15:11.595478: >> Region optimisation pass width 960 gives best_metric 1108.86p, best_cost 1118.65p, best_cycle 38.55kWh, best_import 24.27kWh 2026-08-14 17:15:12.623896: >> Region optimisation pass width 480 gives best_metric 1108.86p, best_cost 1118.65p, best_cycle 38.55kWh, best_import 24.27kWh 2026-08-14 17:15:13.853137: >> Region optimisation pass width 240 gives best_metric 1108.86p, best_cost 1118.65p, best_cycle 38.55kWh, best_import 24.27kWh 2026-08-14 17:15:16.640188: >> Region optimisation pass width 120 gives best_metric 1108.86p, best_cost 1118.65p, best_cycle 38.55kWh, best_import 24.27kWh 2026-08-14 17:15:16.641164: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 84 2026-08-14 17:15:16.641511: Optimise levels pass ended at 2026-08-14 17:15:16, duration 11.3 seconds tried 322 combinations 2026-08-14 17:15:16.641715: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1108.86p, best_keep 0kWh, best_cycle 38.55kWh, best_carbon 0kg, best_import 24.27kWh 2026-08-14 17:15:16.669686: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 17:15:26.071863: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0118 val_mae=0.0083 kWh val_bias=-0.0031 kWh (-3.5%) combined=0.0050 kWh ema_combined=0.0056 kWh 2026-08-14 17:15:51.227431: Tweak plan optimisation started metric 1047.59p, cost 1056.51p 2026-08-14 17:15:53.586749: Tweak optimisation finished metric 1047.59p, cost 1056.51p, metric_keep 0kWh, cycle 34.32kWh, carbon 0kg, import 20.19kWh, changed 8 window(s) 2026-08-14 17:15:53.609718: Swap charge optimisation started metric 1047.59p, cost 1056.51p, min_improvement_swap 0.1p 2026-08-14 17:16:07.412317: Swap charge optimisation finished metric 1047.59p, cost 1056.51p 2026-08-14 17:16:07.627155: Pruned 1 dead plan slot(s) in 13 trial(s), nominal metric 1043.27p -> 1043.27p, plan now metric 1047.63p, cost 1056.51p, cycle 34.32kWh, import 20.19kWh 2026-08-14 17:16:07.644803: Raw charge windows [ 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 13%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 13%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100% ] reserve 1.12 2026-08-14 17:16:07.645807: Unclipped charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 17:30:00 @ 33.57p 100% ] reserve 1.12 2026-08-14 17:16:07.646509: Unfiltered charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 17:30:00 @ 33.57p 100% ] reserve 1.12 2026-08-14 17:16:07.647087: Filtered charge windows [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 17:30:00 @ 33.57p 100% ] reserve 1.12 2026-08-14 17:16:07.707964: Previous plan best metric is 1047.14 (cost 1055.95) and new plan best metric is 1047.59 (cost 1056.51) 2026-08-14 17:16:07.708531: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 17:16:07.708811: Plan valid is now true after recompute was False 2026-08-14 17:16:07.744673: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1287.26p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:35:00, load 44.39kWh, PV 0.0kWh 2026-08-14 17:16:07.955523: Battery has 11.33 hours left - now at 10.97kWh 2026-08-14 17:16:08.048790: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1320.79p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:45:00, load 45.71kWh, PV 0.0kWh 2026-08-14 17:16:08.200526: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1186.73p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.71kWh, PV 0.0kWh 2026-08-14 17:16:08.386077: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1156.68p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:25:00, load 44.39kWh, PV 0.0kWh 2026-08-14 17:16:08.386331: Saving plan best values to HA entities 2026-08-14 17:16:08.727930: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 17:16:08.737431: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 17:16:08.746101: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.29kWh, house 2.92kWh, export 0.0kWh, metric 1156.68p, metric10 1186.73p 2026-08-14 17:16:08.866899: Marginal costs baseline metric (no standing charge): 1056.7127 2026-08-14 17:16:09.308700: Marginal energy costs matrix computed: min=25.03 max=37.1 2026-08-14 17:16:09.422905: Rate array import [{'start': 1035, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 26.7p)'}] export [{'start': 1035, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 17:16:09.423874: - Your estimated bill for today is £7.26 and tomorrow is £3.77 2026-08-14 17:16:09.424104: - Import rates are very expensive (43.9p - 53.4p) for the next 1 and three quarters hours and then expensive (40.1p) for the next 30 minutes. 2026-08-14 17:16:09.424154: - The battery is currently at 69% and is in eco mode for the next 9 hours. 2026-08-14 17:16:09.424176: - For the next 48 hours there will be no solar generation. 2026-08-14 17:16:09.424194: - You will run out of battery in 13 hours. 2026-08-14 17:16:09.424211: - Your next charge slot will be in 9 hours where import rates will be cheap (24.8p). 2026-08-14 17:16:09.424229: 2026-08-14 17:16:09.548371: Plan calculation took 64.21 seconds 2026-08-14 17:16:09.548694: Inverter 0: Type SK Sunsynk 2026-08-14 17:16:09.548744: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 17:16:09.549276: Reserve min: 7%, battery_min: 7% 2026-08-14 17:16:09.549350: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 17:16:09.549577: Inverter 0 SoC: 10.84kW 68%, current charge rate 5000W, current discharge rate 5250W, current battery power 1691W, current battery voltage 51.2V, grid power -55W, load power 1748W, PV Power 0W 2026-08-14 17:16:09.549725: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:16:09.549805: Inverter 0 scheduled charge enable is False 2026-08-14 17:16:09.549836: Inverter 0 charge windows currently [] 2026-08-14 17:16:09.549860: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 17:16:09.549970: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:16:09.550007: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:16:09.550038: Inverter 0 scheduled discharge enable is False 2026-08-14 17:16:09.550153: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:16:09.550185: Inverter 0 discharge windows currently [] 2026-08-14 17:16:09.550203: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:16:09.550219: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:16:09.550241: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:16:09.672848: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 68%, target 16% 2026-08-14 17:16:09.673078: Inverter 0 disabled charge window while waiting for schedule (now 08-14 17:15:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 17:16:09.673158: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:16:09.673368: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:16:09.673468: No export window planned 2026-08-14 17:16:09.673678: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 17:16:09.673724: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:16:09.674012: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:16:09.676386: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 17:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 17:16:09.676455: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 17:16:09.676516: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 17:16:09.676606: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:16:09.676656: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:16:09.676682: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:16:09.676711: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:16:09.676739: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:16:09.676759: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:16:09.676779: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:16:09.676835: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:16:09.676865: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:16:09.678205: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:16:09.678290: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:16:09.678333: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:16:09.678381: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:16:09.678415: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:16:09.678444: Inverter 0 count register writes 0 2026-08-14 17:16:09.751895: Total inverter register writes now 815 2026-08-14 17:16:09.836008: Info: Completed run status Demand 2026-08-14 17:16:09.868346: Info: record_status Demand 2026-08-14 17:16:09.878164: Saved current settings to /config/predbat_config.json 2026-08-14 17:16:09.879431: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 17:16:14.049158: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0144 val_mae=0.0082 kWh val_bias=-0.0042 kWh (-4.7%) combined=0.0063 kWh ema_combined=0.0059 kWh 2026-08-14 17:16:28.556655: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0127 val_mae=0.0086 kWh val_bias=-0.0050 kWh (-5.6%) combined=0.0061 kWh ema_combined=0.0059 kWh 2026-08-14 17:16:41.734506: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0112 val_mae=0.0069 kWh val_bias=-0.0005 kWh (-0.6%) combined=0.0042 kWh ema_combined=0.0054 kWh 2026-08-14 17:16:41.991654: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:16:41.992396: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:16:41.992557: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:16:41.992869: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:16:41.992929: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:16:41.993011: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:16:41.993029: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:16:57.323588: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0098 val_mae=0.0061 kWh val_bias=-0.0005 kWh (-0.6%) combined=0.0035 kWh ema_combined=0.0048 kWh 2026-08-14 17:17:14.831475: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0092 val_mae=0.0067 kWh val_bias=-0.0010 kWh (-1.1%) combined=0.0040 kWh ema_combined=0.0046 kWh 2026-08-14 17:17:14.831744: ML Predictor: Early stopping at epoch 10 2026-08-14 17:17:14.832737: ML Predictor: Restored best weights from epoch with val_mae=0.0066 kWh val_bias=-0.0011 kWh (-1.2%) 2026-08-14 17:17:14.833085: ML Predictor: Training complete, final val_mae=0.0066 kWh val_bias=-0.0011 kWh (-1.2%) 2026-08-14 17:17:15.803214: ML Predictor: AR rollout over holdout: ar_mae=0.0069 kWh ar_bias=-0.0010 kWh (-1.2%) [drift vs teacher-forced: +0.0003 kWh] 2026-08-14 17:17:15.810203: ML Predictor: Curriculum training complete, final val_mae=0.0066 kWh 2026-08-14 17:17:15.819170: ML Component: Training successful, val_mae=0.0066 kWh 2026-08-14 17:17:15.946207: ML Predictor: Model saved to /config/predbat_ml_model.npz 2026-08-14 17:17:15.950229: ML Component: Generating predictions load data age 56.0 days, 16178 data points 2026-08-14 17:17:16.060984: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0529 max_dow {0: 0.10500312496256084, 1: 0.10763750054407865, 2: 0.11822499983031302, 3: 0.1251781244263053, 4: 0.1736281253574416, 5: 0.10149375002831221, 6: 0.10796875073947013} 2026-08-14 17:17:16.624605: ML Component: Generated 576 predictions (total 40.48 kWh over 48h) 2026-08-14 17:17:16.661606: ML Component: Prediction cycle completed 2026-08-14 17:17:16.764490: ML Component: Saved 16178 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 17:18:42.369133: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:18:42.369371: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:18:42.369413: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:18:42.369569: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:18:42.369609: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:18:42.369630: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:18:42.369648: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:20:00.566865: --------------- PredBat - update at 2026-08-14 17:20:00+01:00 with clock skew 0 minutes, minutes now 1040 2026-08-14 17:20:00.567684: Saved current settings to /config/predbat_config.json 2026-08-14 17:20:00.567811: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 95.0 minutes 2026-08-14 17:20:00.567897: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 17:20:00.567989: Autoupdate: Currently up to date 2026-08-14 17:20:00.960528: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 17:20:00.960702: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 17:20:00.960894: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 17:20:00.961538: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 17:20:00.961661: Predbat mode is set to Control charge & discharge 2026-08-14 17:20:01.169674: Found 21602 load_today datapoints going back 28 days 2026-08-14 17:20:01.170191: Using load_power data to fill gaps in load_today data 2026-08-14 17:20:01.850051: Processing 721 30-minute periods for power integration 2026-08-14 17:20:01.993381: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 17:20:01.993518: Car charging hold False, threshold 6.0kWh 2026-08-14 17:20:01.993557: Current data so far today: load 16.95kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 17:20:02.007045: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 17:20:02.007387: Standing charge is set to 49.98p 2026-08-14 17:20:02.058292: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 17:20:02.058416: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 17:20:02.058675: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 405.0 minutes 2026-08-14 17:20:02.059261: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 405.0 minutes 2026-08-14 17:20:02.068362: Loaded 95 datapoints of futurerate analysis 2026-08-14 17:20:02.227760: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13'] 2026-08-14 17:20:02.264554: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 17:20:02.264826: Import rates: min 13.77p, max 53.39p, average 26.66p 2026-08-14 17:20:02.299832: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 17:20:02.299960: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 17:20:02.301102: High export rate found rates in range 99p to -99p 2026-08-14 17:20:02.381737: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 17:20:02.381858: Car 0 charging is not planned as it is not plugged in 2026-08-14 17:20:02.393542: Battery level now 10.97kWh, -1hr ago 12.0kWh, at midnight 2.43kWh, battery value change in the last hour -12.2p, change today 100.95p, rate_forward 11.83p 2026-08-14 17:20:02.393852: Last hour: net energy 0.07kWh, import 0.07kWh, export 0.0kWh, car 0kWh, load 1.32kWh, net cost 2.84p, import 2.84p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 17:20:02.449782: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 17:20:02.449937: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 17:20:02.527842: Using weighted-bucket historical load forecast over 14 days 2026-08-14 17:20:02.559726: Today's load divergence 132.75%, in-day adjustment 135.47%, damping 0.95x, yesterday 146.81% today 131.11% blend 27.78% 2026-08-14 17:20:02.559856: Today's predicted so far 9.9kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 9.9kWh forecast extra. 2026-08-14 17:20:02.559890: Today's actual load so far 16.86kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 17:20:02.595440: Inverter 0: Type SK Sunsynk 2026-08-14 17:20:02.595530: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 17:20:02.596122: Reserve min: 7%, battery_min: 7% 2026-08-14 17:20:02.596229: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 17:20:02.596511: Inverter 0 SoC: 10.84kW 68%, current charge rate 5000W, current discharge rate 5250W, current battery power 1651W, current battery voltage 51.2V, grid power -54W, load power 1709W, PV Power 0W 2026-08-14 17:20:02.596670: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:20:02.596760: Inverter 0 scheduled charge enable is False 2026-08-14 17:20:02.596794: Inverter 0 charge windows currently [] 2026-08-14 17:20:02.596821: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 17:20:02.596972: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:20:02.597016: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:20:02.597057: Inverter 0 scheduled discharge enable is False 2026-08-14 17:20:02.597257: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:20:02.597305: Inverter 0 discharge windows currently [] 2026-08-14 17:20:02.597330: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:20:02.597352: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:20:02.597370: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:20:02.659557: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 17:20:02.659675: Plan was last updated on 2026-08-14 17:15:00+01:00 and is now 5.0 minutes old 2026-08-14 17:20:02.659981: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 17:20:02.660027: Best export window [ ] 2026-08-14 17:20:02.660806: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 17:20:02.664011: Load divergence over 8.0 hours mean 440.32W, min 309.6W, max 1182.6W, std dev 155.1W, divergence 17.61% 2026-08-14 17:20:02.685473: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 17:20:02.685573: LoadML is_calculating False 2026-08-14 17:20:02.685629: Creating pool of 12 processes to match your CPU count 2026-08-14 17:20:02.816584: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1291.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:25:00, load 44.61kWh, PV 0.0kWh 2026-08-14 17:20:02.942659: Battery has 11.08 hours left - now at 10.84kWh 2026-08-14 17:20:02.993291: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1324.52p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:35:00, load 45.92kWh, PV 0.0kWh 2026-08-14 17:20:03.067804: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1196.04p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.92kWh, PV 0.0kWh 2026-08-14 17:20:03.140224: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1167.03p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 44.61kWh, PV 0.0kWh 2026-08-14 17:20:03.140321: Saving plan best values to HA entities 2026-08-14 17:20:03.342638: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 17:20:03.347809: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 17:20:03.353788: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.9kWh, house 2.92kWh, export 0.0kWh, metric 1167.03p, metric10 1196.04p 2026-08-14 17:20:03.430171: Marginal costs baseline metric (no standing charge): 1067.062 2026-08-14 17:20:03.646656: Marginal energy costs matrix computed: min=25.14 max=37.42 2026-08-14 17:20:03.724588: Rate array import [{'start': 1040, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1040, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 17:20:03.725229: - Your estimated bill for today is £7.26 and tomorrow is £3.79 2026-08-14 17:20:03.725273: - Import rates are very expensive (43.9p - 53.4p) for the next 1 and three quarters hours and then expensive (40.1p) for the next 30 minutes. 2026-08-14 17:20:03.725292: - The battery is currently at 68% and is in eco mode for the next 9 hours. 2026-08-14 17:20:03.725307: - For the next 48 hours there will be no solar generation. 2026-08-14 17:20:03.725320: - You will run out of battery in 13 hours. 2026-08-14 17:20:03.725334: - Your next charge slot will be in 9 hours where import rates will be cheap (24.8p). 2026-08-14 17:20:03.725347: 2026-08-14 17:20:03.790185: Plan calculation took 1.13 seconds 2026-08-14 17:20:03.794362: No high rate period found 2026-08-14 17:20:03.853962: Import threshold used for optimisation was 25.6p 2026-08-14 17:20:03.906232: Low import rate windows [0: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 1: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 2: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 3: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 4: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 5: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 6: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 7: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 8: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 9: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 10: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 11: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 12: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 13: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 14: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 15: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 16: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 17: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 18: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 19: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 20: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 21: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 22: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 23: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 24: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 25: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 26: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 27: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 28: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 29: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 30: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 31: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 32: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 33: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 34: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 35: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 36: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 37: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 38: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 39: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 40: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 41: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 42: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 43: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 44: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 45: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 46: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 47: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 48: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 49: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 50: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 51: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 52: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 53: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 54: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 55: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 56: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 57: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 58: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 59: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 60: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 61: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 62: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 63: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 64: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 65: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 66: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 67: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 68: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 69: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 70: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 71: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 72: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 73: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 74: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 75: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 76: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 77: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 78: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 79: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 80: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 81: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 82: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 83: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 84: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 85: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 86: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 87: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 88: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 89: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 90: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 91: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 92: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 93: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 94: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 95: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46] 2026-08-14 17:20:03.914276: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 68%, target 16% 2026-08-14 17:20:03.914423: Inverter 0 disabled charge window while waiting for schedule (now 08-14 17:20:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 17:20:03.914540: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:20:03.914799: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:20:03.914886: No export window planned 2026-08-14 17:20:03.915018: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 17:20:03.915076: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:20:03.915216: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:20:03.915392: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 17:20:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 17:20:03.915453: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 17:20:03.915517: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 17:20:03.915598: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:20:03.915631: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:20:03.915664: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:20:03.915689: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:20:03.915718: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:20:03.915742: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:20:03.915766: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:20:03.915833: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:20:03.915869: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:20:03.915895: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:20:03.915934: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:20:03.915965: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:20:03.915990: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:20:03.916018: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:20:03.916039: Inverter 0 count register writes 0 2026-08-14 17:20:03.932054: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 17:20:03.936812: Total inverter register writes now 815 2026-08-14 17:20:03.971052: Info: Completed run status Demand 2026-08-14 17:20:03.992441: Info: record_status Demand 2026-08-14 17:20:03.999506: Saved current settings to /config/predbat_config.json 2026-08-14 17:20:03.999761: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 17:20:42.105890: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:20:42.106158: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:20:42.106196: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:20:42.106326: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:20:42.106364: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:20:42.106383: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:20:42.106397: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:22:42.334340: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:22:42.334674: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:22:42.334771: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:22:42.335054: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:22:42.335110: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:22:42.335152: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:22:42.335188: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:24:56.599952: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:24:56.600229: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:24:56.600280: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:24:56.600447: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:24:56.600496: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:24:56.600518: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:24:56.600537: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:25:00.721963: --------------- PredBat - update at 2026-08-14 17:25:00+01:00 with clock skew 0 minutes, minutes now 1045 2026-08-14 17:25:00.722931: Saved current settings to /config/predbat_config.json 2026-08-14 17:25:00.723095: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 100.0 minutes 2026-08-14 17:25:00.723241: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 17:25:00.723360: Autoupdate: Currently up to date 2026-08-14 17:25:00.952435: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 17:25:00.952584: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 17:25:00.952745: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 17:25:00.953268: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 17:25:00.953377: Predbat mode is set to Control charge & discharge 2026-08-14 17:25:01.112879: Found 21602 load_today datapoints going back 28 days 2026-08-14 17:25:01.113038: Using load_power data to fill gaps in load_today data 2026-08-14 17:25:01.807142: Processing 721 30-minute periods for power integration 2026-08-14 17:25:01.980748: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 17:25:01.980905: Car charging hold False, threshold 6.0kWh 2026-08-14 17:25:01.980980: Current data so far today: load 17.1kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 17:25:01.998069: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 17:25:01.998945: Standing charge is set to 49.98p 2026-08-14 17:25:02.045004: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 17:25:02.045110: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 17:25:02.045313: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 410.0 minutes 2026-08-14 17:25:02.045713: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 410.0 minutes 2026-08-14 17:25:02.051791: Loaded 95 datapoints of futurerate analysis 2026-08-14 17:25:02.188826: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13'] 2026-08-14 17:25:02.225946: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 17:25:02.226294: Import rates: min 13.77p, max 53.39p, average 26.65p 2026-08-14 17:25:02.260629: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 17:25:02.260746: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 17:25:02.261798: High export rate found rates in range 99p to -99p 2026-08-14 17:25:02.345718: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 17:25:02.345876: Car 0 charging is not planned as it is not plugged in 2026-08-14 17:25:02.359155: Battery level now 10.84kWh, -1hr ago 11.88kWh, at midnight 2.43kWh, battery value change in the last hour -12.3p, change today 99.43p, rate_forward 11.83p 2026-08-14 17:25:02.359549: Last hour: net energy 0.07kWh, import 0.07kWh, export 0.0kWh, car 0kWh, load 1.45kWh, net cost 2.53p, import 2.53p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 17:25:02.432519: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 17:25:02.432695: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 17:25:02.509841: Using weighted-bucket historical load forecast over 14 days 2026-08-14 17:25:02.534596: Today's load divergence 132.99%, in-day adjustment 135.58%, damping 0.95x, yesterday 146.81% today 131.34% blend 27.43% 2026-08-14 17:25:02.534683: Today's predicted so far 9.92kWh with 0.0kWh car/iBoost excluded, 17.38kWh import ignored, and 9.92kWh forecast extra. 2026-08-14 17:25:02.534710: Today's actual load so far 16.96kWh with 0.0kWh car/iBoost excluded, and 17.38kWh import ignored. 2026-08-14 17:25:02.572201: Inverter 0: Type SK Sunsynk 2026-08-14 17:25:02.572300: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 17:25:02.572851: Reserve min: 7%, battery_min: 7% 2026-08-14 17:25:02.573010: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 17:25:02.573400: Inverter 0 SoC: 10.7kW 67%, current charge rate 5000W, current discharge rate 5250W, current battery power 1878W, current battery voltage 51.2V, grid power -54W, load power 1937W, PV Power 0W 2026-08-14 17:25:02.573604: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:25:02.573697: Inverter 0 scheduled charge enable is False 2026-08-14 17:25:02.573727: Inverter 0 charge windows currently [] 2026-08-14 17:25:02.573758: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 17:25:02.573890: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:25:02.573930: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:25:02.573967: Inverter 0 scheduled discharge enable is False 2026-08-14 17:25:02.574102: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:25:02.574143: Inverter 0 discharge windows currently [] 2026-08-14 17:25:02.574166: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:25:02.574194: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:25:02.574228: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:25:02.633298: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 17:25:02.633430: Plan was last updated on 2026-08-14 17:15:00+01:00 and is now 10.0 minutes old 2026-08-14 17:25:02.633710: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 17:25:02.633754: Best export window [ ] 2026-08-14 17:25:02.634602: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 17:25:02.637932: Load divergence over 8.0 hours mean 440.45W, min 287.4W, max 1057.8W, std dev 145.77W, divergence 16.55% 2026-08-14 17:25:02.655755: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 17:25:02.655878: LoadML is_calculating False 2026-08-14 17:25:02.655937: Creating pool of 12 processes to match your CPU count 2026-08-14 17:25:02.767283: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1295.15p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:15:00, load 44.82kWh, PV 0.0kWh 2026-08-14 17:25:02.913731: Battery has 10.83 hours left - now at 10.7kWh 2026-08-14 17:25:02.962435: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1328.4p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:25:00, load 46.14kWh, PV 0.0kWh 2026-08-14 17:25:03.056187: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1205.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 46.14kWh, PV 0.0kWh 2026-08-14 17:25:03.143132: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1177.64p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 44.82kWh, PV 0.0kWh 2026-08-14 17:25:03.143232: Saving plan best values to HA entities 2026-08-14 17:25:03.341709: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 17:25:03.347436: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 17:25:03.352895: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.52kWh, house 2.91kWh, export 0.0kWh, metric 1177.64p, metric10 1205.62p 2026-08-14 17:25:03.429005: Marginal costs baseline metric (no standing charge): 1077.6724 2026-08-14 17:25:03.737715: Marginal energy costs matrix computed: min=25.24 max=37.69 2026-08-14 17:25:03.819301: Rate array import [{'start': 1045, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1045, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 17:25:03.820166: - Your estimated bill for today is £7.26 and tomorrow is £3.82 2026-08-14 17:25:03.820234: - Import rates are very expensive (43.9p - 53.4p) for the next 1 and a half hours and then expensive (40.1p) for the next 30 minutes. 2026-08-14 17:25:03.820277: - The battery is currently at 67% and is in eco mode for the next 9 hours. 2026-08-14 17:25:03.820314: - For the next 48 hours there will be no solar generation. 2026-08-14 17:25:03.820355: - You will run out of battery in 13 hours. 2026-08-14 17:25:03.820390: - Your next charge slot will be in 9 hours where import rates will be cheap (24.8p). 2026-08-14 17:25:03.820409: 2026-08-14 17:25:03.888729: Plan calculation took 1.26 seconds 2026-08-14 17:25:03.893632: No high rate period found 2026-08-14 17:25:03.946964: Import threshold used for optimisation was 25.6p 2026-08-14 17:25:04.001582: Low import rate windows [0: 08-14 17:00:00 - 08-14 17:30:00 @ 43.94, 1: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 2: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 3: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 4: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 5: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 6: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 7: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 8: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 9: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 10: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 11: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 12: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 13: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 14: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 15: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 16: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 17: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 18: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 19: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 20: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 21: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 22: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 23: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 24: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 25: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 26: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 27: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 28: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 29: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 30: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 31: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 32: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 33: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 34: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 35: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 36: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 37: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 38: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 39: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 40: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 41: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 42: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 43: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 44: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 45: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 46: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 47: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 48: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 49: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 50: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 51: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 52: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 53: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 54: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 55: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 56: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 57: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 58: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 59: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 60: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 61: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 62: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 63: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 64: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 65: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 66: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 67: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 68: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 69: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 70: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 71: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 72: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 73: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 74: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 75: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 76: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 77: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 78: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 79: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 80: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 81: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 82: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 83: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 84: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 85: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 86: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 87: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 88: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 89: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 90: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 91: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 92: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 93: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 94: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 95: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46] 2026-08-14 17:25:04.010446: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 67%, target 16% 2026-08-14 17:25:04.010622: Inverter 0 disabled charge window while waiting for schedule (now 08-14 17:25:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 17:25:04.010766: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:25:04.011107: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:25:04.011220: No export window planned 2026-08-14 17:25:04.011372: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 17:25:04.011423: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:25:04.011635: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:25:04.011900: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 17:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 17:25:04.011969: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 17:25:04.012027: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 17:25:04.012102: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:25:04.012144: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:25:04.012193: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:25:04.012262: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:25:04.012302: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:25:04.012339: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:25:04.012386: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:25:04.012472: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:25:04.012526: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:25:04.012575: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:25:04.012621: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:25:04.012649: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:25:04.012674: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:25:04.012698: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:25:04.012716: Inverter 0 count register writes 0 2026-08-14 17:25:04.030599: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 17:25:04.030818: Recompute is saving previous plan... 2026-08-14 17:25:04.034573: Best charge window [ 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0% ] 2026-08-14 17:25:04.034657: Best export window [ ] 2026-08-14 17:25:04.035493: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 17:25:04.039268: Load divergence over 8.0 hours mean 440.45W, min 287.4W, max 1057.8W, std dev 145.77W, divergence 16.55% 2026-08-14 17:25:04.057007: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 17:25:04.057145: LoadML is_calculating False 2026-08-14 17:25:04.057215: Creating pool of 12 processes to match your CPU count 2026-08-14 17:25:04.146487: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 17:25:04.148480: Optimise levels pass started at 2026-08-14 17:25:04 2026-08-14 17:25:04.148559: Optimise all windows, total charge 95 export 1 2026-08-14 17:25:05.338981: >> Region optimisation pass width 960 gives best_metric 1114.85p, best_cost 1123.52p, best_cycle 38.43kWh, best_import 24.45kWh 2026-08-14 17:25:05.706118: >> Region optimisation pass width 480 gives best_metric 1114.85p, best_cost 1123.52p, best_cycle 38.43kWh, best_import 24.45kWh 2026-08-14 17:25:06.307293: >> Region optimisation pass width 240 gives best_metric 1114.85p, best_cost 1123.52p, best_cycle 38.43kWh, best_import 24.45kWh 2026-08-14 17:25:07.540326: >> Region optimisation pass width 120 gives best_metric 1114.85p, best_cost 1123.52p, best_cycle 38.43kWh, best_import 24.45kWh 2026-08-14 17:25:07.540932: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 84 2026-08-14 17:25:07.541057: Optimise levels pass ended at 2026-08-14 17:25:07, duration 3.4 seconds tried 322 combinations 2026-08-14 17:25:07.541127: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1114.85p, best_keep 0kWh, best_cycle 38.43kWh, best_carbon 0kg, best_import 24.45kWh 2026-08-14 17:25:07.561134: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 17:25:14.133721: Tweak plan optimisation started metric 1052.28p, cost 1061.19p 2026-08-14 17:25:14.443736: Tweak optimisation finished metric 1052.28p, cost 1061.19p, metric_keep 0kWh, cycle 34.07kWh, carbon 0kg, import 20.37kWh, changed 8 window(s) 2026-08-14 17:25:14.463727: Swap charge optimisation started metric 1052.28p, cost 1061.19p, min_improvement_swap 0.1p 2026-08-14 17:25:22.301200: Swap charge optimisation finished metric 1052.28p, cost 1061.19p 2026-08-14 17:25:22.413481: Raw charge windows [ 14-08 17:00:00 - 14-08 17:30:00 @ 43.94p 0%, 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 13%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 13%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 13%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100% ] reserve 1.12 2026-08-14 17:25:22.414053: Unclipped charge windows [ 15-08 02:00:00 - 15-08 04:00:00 @ 24.88p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 17:30:00 @ 33.57p 100% ] reserve 1.12 2026-08-14 17:25:22.414293: Unfiltered charge windows [ 15-08 02:00:00 - 15-08 04:00:00 @ 24.88p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 17:30:00 @ 33.57p 100% ] reserve 1.12 2026-08-14 17:25:22.414508: Filtered charge windows [ 15-08 02:00:00 - 15-08 04:00:00 @ 24.88p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 17:30:00 @ 33.57p 100% ] reserve 1.12 2026-08-14 17:25:22.443825: Previous plan best metric is 1052.14 (cost 1060.89) and new plan best metric is 1052.28 (cost 1061.19) 2026-08-14 17:25:22.444019: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 17:25:22.444230: Plan valid is now true after recompute was False 2026-08-14 17:25:22.466660: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1292.31p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:15:00, load 44.63kWh, PV 0.0kWh 2026-08-14 17:25:22.582388: Battery has 10.83 hours left - now at 10.7kWh 2026-08-14 17:25:22.623412: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1325.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:25:00, load 45.95kWh, PV 0.0kWh 2026-08-14 17:25:22.690279: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1191.91p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 45.95kWh, PV 0.0kWh 2026-08-14 17:25:22.759288: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1161.92p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 44.63kWh, PV 0.0kWh 2026-08-14 17:25:22.759543: Saving plan best values to HA entities 2026-08-14 17:25:22.903673: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 17:25:22.908559: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 17:25:22.913563: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.5kWh, house 2.91kWh, export 0.0kWh, metric 1161.92p, metric10 1191.91p 2026-08-14 17:25:22.985067: Marginal costs baseline metric (no standing charge): 1061.9516 2026-08-14 17:25:23.239980: Marginal energy costs matrix computed: min=25.24 max=37.69 2026-08-14 17:25:23.315390: Rate array import [{'start': 1045, 'end': 1140, 'rate': 'very expensive', 'range': '(43.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 26.7p)'}] export [{'start': 1045, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 17:25:23.316062: - Your estimated bill for today is £7.26 and tomorrow is £3.82 2026-08-14 17:25:23.316117: - Import rates are very expensive (43.9p - 53.4p) for the next 1 and a half hours and then expensive (40.1p) for the next 30 minutes. 2026-08-14 17:25:23.316142: - The battery is currently at 67% and is in eco mode for the next 9 hours. 2026-08-14 17:25:23.316221: - For the next 48 hours there will be no solar generation. 2026-08-14 17:25:23.316355: - You will run out of battery in 13 hours. 2026-08-14 17:25:23.316465: - Your next charge slot will be in 9 hours where import rates will be cheap (24.8p). 2026-08-14 17:25:23.316501: 2026-08-14 17:25:23.377749: Plan calculation took 19.35 seconds 2026-08-14 17:25:23.378132: Inverter 0: Type SK Sunsynk 2026-08-14 17:25:23.378182: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 17:25:23.378833: Reserve min: 7%, battery_min: 7% 2026-08-14 17:25:23.378932: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 17:25:23.379229: Inverter 0 SoC: 10.56kW 66%, current charge rate 5000W, current discharge rate 5250W, current battery power 1869W, current battery voltage 51.2V, grid power -55W, load power 1931W, PV Power 0W 2026-08-14 17:25:23.379464: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:25:23.379596: Inverter 0 scheduled charge enable is False 2026-08-14 17:25:23.379638: Inverter 0 charge windows currently [] 2026-08-14 17:25:23.379668: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 17:25:23.379788: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:25:23.379824: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:25:23.379875: Inverter 0 scheduled discharge enable is False 2026-08-14 17:25:23.380006: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:25:23.380044: Inverter 0 discharge windows currently [] 2026-08-14 17:25:23.380065: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:25:23.380083: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:25:23.380100: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:25:23.439135: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 66%, target 16% 2026-08-14 17:25:23.439276: Inverter 0 disabled charge window while waiting for schedule (now 08-14 17:25:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 17:25:23.439338: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:25:23.439488: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:25:23.439559: No export window planned 2026-08-14 17:25:23.439650: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 17:25:23.439679: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:25:23.439787: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:25:23.439940: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 17:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 17:25:23.439987: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 17:25:23.440030: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 17:25:23.440106: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:25:23.440134: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:25:23.440156: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:25:23.440176: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:25:23.440196: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:25:23.440215: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:25:23.440234: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:25:23.440284: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:25:23.440307: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:25:23.440326: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:25:23.440346: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:25:23.440365: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:25:23.440404: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:25:23.440435: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:25:23.440452: Inverter 0 count register writes 0 2026-08-14 17:25:23.459360: Total inverter register writes now 815 2026-08-14 17:25:23.491475: Info: Completed run status Demand 2026-08-14 17:25:23.498067: Info: record_status Demand 2026-08-14 17:25:23.505175: Saved current settings to /config/predbat_config.json 2026-08-14 17:25:23.505515: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 17:25:56.612289: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:25:56.612599: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:25:56.612655: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:25:56.612841: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:25:56.613003: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:25:56.613050: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:25:56.613073: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:27:56.857542: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:27:56.857785: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:27:56.857824: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:27:56.858067: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:27:56.858110: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:27:56.858132: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:27:56.858150: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:29:17.481695: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 17:29:18.499159: Processing 1345 30-minute periods for power integration 2026-08-14 17:29:18.583705: ML Component: Car charging hold False, car energy reported load False 2026-08-14 17:29:18.663622: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 17:29:18.776481: ML Temperature data points: 49356 2026-08-14 17:29:19.054348: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 17:29:19.091906: ML Component: Data fetch completed, load data age 56.0 days, 16186 data points 2026-08-14 17:29:19.092037: ML Component: No training needed, model age is 0.13 hours 2026-08-14 17:29:19.092109: ML Component: Generating predictions load data age 56.0 days, 16186 data points 2026-08-14 17:29:19.237679: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.1556 max_dow {0: 0.10282812496256083, 1: 0.11130937486607581, 2: 0.11949062483031303, 3: 0.1146749994263053, 4: 0.1683562503574416, 5: 0.10359687502831222, 6: 0.10919687573947012} 2026-08-14 17:29:19.827408: ML Component: Generated 576 predictions (total 40.88 kWh over 48h) 2026-08-14 17:29:19.880059: ML Component: Prediction cycle completed 2026-08-14 17:29:19.994036: ML Component: Saved 16186 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 17:29:57.109520: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:29:57.109891: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:29:57.109950: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:29:57.110203: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:29:57.110259: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:29:57.110320: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:29:57.110379: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:30:00.193899: --------------- PredBat - update at 2026-08-14 17:30:00+01:00 with clock skew 0 minutes, minutes now 1050 2026-08-14 17:30:00.194896: Saved current settings to /config/predbat_config.json 2026-08-14 17:30:00.195042: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 105.0 minutes 2026-08-14 17:30:00.195174: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 17:30:00.195285: Autoupdate: Currently up to date 2026-08-14 17:30:00.214837: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 17:30:00.214993: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 17:30:00.215219: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 17:30:00.215773: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 17:30:00.215959: Predbat mode is set to Control charge & discharge 2026-08-14 17:30:00.399411: Found 21602 load_today datapoints going back 28 days 2026-08-14 17:30:00.399667: Using load_power data to fill gaps in load_today data 2026-08-14 17:30:01.279738: Processing 721 30-minute periods for power integration 2026-08-14 17:30:01.472097: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 17:30:01.472267: Car charging hold False, threshold 6.0kWh 2026-08-14 17:30:01.472324: Current data so far today: load 17.25kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 17:30:01.489861: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 17:30:01.490489: Standing charge is set to 49.98p 2026-08-14 17:30:01.565552: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 17:30:01.565665: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 17:30:01.565910: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 415.0 minutes 2026-08-14 17:30:01.566321: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 415.0 minutes 2026-08-14 17:30:01.574011: Loaded 95 datapoints of futurerate analysis 2026-08-14 17:30:01.743494: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13'] 2026-08-14 17:30:01.793170: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 17:30:01.793484: Import rates: min 13.77p, max 53.39p, average 26.64p 2026-08-14 17:30:01.837099: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 17:30:01.837234: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 17:30:01.838450: High export rate found rates in range 99p to -99p 2026-08-14 17:30:01.945586: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 17:30:01.945729: Car 0 charging is not planned as it is not plugged in 2026-08-14 17:30:01.968686: Battery level now 10.7kWh, -1hr ago 11.84kWh, at midnight 2.43kWh, battery value change in the last hour -13.43p, change today 97.82p, rate_forward 11.83p 2026-08-14 17:30:01.969258: Last hour: net energy 0.06kWh, import 0.06kWh, export 0.0kWh, car 0kWh, load 1.57kWh, net cost 2.22p, import 2.22p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 17:30:02.066171: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 17:30:02.066386: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 17:30:02.168235: Using weighted-bucket historical load forecast over 14 days 2026-08-14 17:30:02.191410: Today's load divergence 133.57%, in-day adjustment 135.93%, damping 0.95x, yesterday 146.81% today 131.89% blend 27.08% 2026-08-14 17:30:02.191852: Today's predicted so far 10.01kWh with 0.0kWh car/iBoost excluded, 17.37kWh import ignored, and 10.01kWh forecast extra. 2026-08-14 17:30:02.191895: Today's actual load so far 17.23kWh with 0.0kWh car/iBoost excluded, and 17.37kWh import ignored. 2026-08-14 17:30:02.236180: Inverter 0: Type SK Sunsynk 2026-08-14 17:30:02.236327: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 17:30:02.237337: Reserve min: 7%, battery_min: 7% 2026-08-14 17:30:02.237474: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 17:30:02.237924: Inverter 0 SoC: 10.56kW 66%, current charge rate 5000W, current discharge rate 5250W, current battery power 1688W, current battery voltage 51.2V, grid power -54W, load power 1747W, PV Power 0W 2026-08-14 17:30:02.238192: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:30:02.238343: Inverter 0 scheduled charge enable is False 2026-08-14 17:30:02.238387: Inverter 0 charge windows currently [] 2026-08-14 17:30:02.238447: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 17:30:02.238643: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:30:02.238707: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:30:02.238759: Inverter 0 scheduled discharge enable is False 2026-08-14 17:30:02.239053: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:30:02.239121: Inverter 0 discharge windows currently [] 2026-08-14 17:30:02.239150: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:30:02.239170: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:30:02.239193: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:30:02.306270: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 17:30:02.306388: Plan was last updated on 2026-08-14 17:25:00+01:00 and is now 5.0 minutes old 2026-08-14 17:30:02.306689: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 17:30:02.306739: Best export window [ ] 2026-08-14 17:30:02.307455: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 17:30:02.310016: Load divergence over 8.0 hours mean 440.49W, min 279.0W, max 1138.2W, std dev 149.2W, divergence 16.94% 2026-08-14 17:30:02.324850: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 17:30:02.324992: LoadML is_calculating False 2026-08-14 17:30:02.325067: Creating pool of 12 processes to match your CPU count 2026-08-14 17:30:02.437349: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1295.74p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:05:00, load 44.81kWh, PV 0.0kWh 2026-08-14 17:30:02.588384: Battery has 10.58 hours left - now at 10.56kWh 2026-08-14 17:30:02.635281: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1328.63p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:20:00, load 46.12kWh, PV 0.0kWh 2026-08-14 17:30:02.724418: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1200.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 46.12kWh, PV 0.0kWh 2026-08-14 17:30:02.839456: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1171.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 44.81kWh, PV 0.0kWh 2026-08-14 17:30:02.839562: Saving plan best values to HA entities 2026-08-14 17:30:03.056560: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 17:30:03.063252: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 17:30:03.072092: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.09kWh, house 2.92kWh, export 0.0kWh, metric 1171.9p, metric10 1200.75p 2026-08-14 17:30:03.208598: Marginal costs baseline metric (no standing charge): 1071.9361 2026-08-14 17:30:03.506525: Marginal energy costs matrix computed: min=25.35 max=38.01 2026-08-14 17:30:03.599222: Rate array import [{'start': 1050, 'end': 1140, 'rate': 'very expensive', 'range': '(45.7p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1050, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 17:30:03.600018: - Your estimated bill for today is £7.26 and tomorrow is £3.84 2026-08-14 17:30:03.600066: - Import rates are very expensive (45.7p - 53.4p) for the next 1 and a half hours and then expensive (40.1p) for the next 30 minutes. 2026-08-14 17:30:03.600089: - The battery is currently at 66% and is in eco mode for the next 9 hours. 2026-08-14 17:30:03.600107: - For the next 48 hours there will be no solar generation. 2026-08-14 17:30:03.600124: - You will run out of battery in 13 hours. 2026-08-14 17:30:03.600141: - Your next charge slot will be in 9 hours where import rates will be cheap (24.8p). 2026-08-14 17:30:03.600171: 2026-08-14 17:30:03.677023: Plan calculation took 1.37 seconds 2026-08-14 17:30:03.681621: No high rate period found 2026-08-14 17:30:03.740430: Import threshold used for optimisation was 25.6p 2026-08-14 17:30:03.802390: Low import rate windows [0: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 1: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 2: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 3: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 4: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 5: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 6: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 7: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 8: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 9: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 10: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 11: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 12: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 13: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 14: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 15: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 16: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 17: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 18: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 19: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 20: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 21: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 22: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 23: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 24: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 25: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 26: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 27: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 28: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 29: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 30: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 31: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 32: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 33: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 34: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 35: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 36: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 37: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 38: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 39: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 40: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 41: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 42: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 43: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 44: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 45: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 46: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 47: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 48: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 49: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 50: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 51: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 52: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 53: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 54: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 55: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 56: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 57: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 58: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 59: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 60: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 61: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 62: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 63: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 64: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 65: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 66: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 67: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 68: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 69: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 70: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 71: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 72: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 73: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 74: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 75: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 76: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 77: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 78: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 79: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 80: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 81: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 82: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 83: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 84: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 85: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 86: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 87: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 88: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 89: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 90: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 91: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 92: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 93: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 94: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46] 2026-08-14 17:30:03.811086: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 66%, target 16% 2026-08-14 17:30:03.811215: Inverter 0 disabled charge window while waiting for schedule (now 08-14 17:30:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 17:30:03.811313: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:30:03.811529: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:30:03.811602: No export window planned 2026-08-14 17:30:03.811713: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 17:30:03.811745: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:30:03.811873: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:30:03.812033: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 17:30:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 17:30:03.812088: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 17:30:03.812139: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 17:30:03.812211: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:30:03.812245: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:30:03.812267: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:30:03.812291: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:30:03.812311: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:30:03.812353: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:30:03.812400: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:30:03.812500: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:30:03.812556: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:30:03.812605: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:30:03.812680: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:30:03.812733: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:30:03.812760: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:30:03.812780: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:30:03.812798: Inverter 0 count register writes 0 2026-08-14 17:30:03.828418: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 17:30:03.834011: Total inverter register writes now 815 2026-08-14 17:30:03.873281: Info: Completed run status Demand 2026-08-14 17:30:03.880437: Info: record_status Demand 2026-08-14 17:30:03.887964: Saved current settings to /config/predbat_config.json 2026-08-14 17:30:03.888296: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 17:30:42.006428: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:30:42.006723: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:30:42.006788: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:30:42.006995: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:30:42.007048: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:30:42.007076: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:30:42.007098: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:32:42.247799: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:32:42.248339: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:32:42.248376: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:32:42.248509: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:32:42.248549: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:32:42.248570: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:32:42.248588: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:34:42.476294: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:34:42.476640: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:34:42.476732: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:34:42.476994: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:34:42.477079: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:34:42.477122: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:34:42.477157: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:35:00.600762: --------------- PredBat - update at 2026-08-14 17:35:00+01:00 with clock skew 0 minutes, minutes now 1055 2026-08-14 17:35:00.601568: Saved current settings to /config/predbat_config.json 2026-08-14 17:35:00.601710: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 110.0 minutes 2026-08-14 17:35:00.601836: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 17:35:00.601932: Autoupdate: Currently up to date 2026-08-14 17:35:00.946564: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 17:35:00.946709: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 17:35:00.946987: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 17:35:00.947591: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 17:35:00.947721: Predbat mode is set to Control charge & discharge 2026-08-14 17:35:01.136879: Found 21602 load_today datapoints going back 28 days 2026-08-14 17:35:01.137064: Using load_power data to fill gaps in load_today data 2026-08-14 17:35:01.991270: Processing 721 30-minute periods for power integration 2026-08-14 17:35:02.174820: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 17:35:02.174946: Car charging hold False, threshold 6.0kWh 2026-08-14 17:35:02.174984: Current data so far today: load 17.4kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 17:35:02.190059: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 17:35:02.190576: Standing charge is set to 49.98p 2026-08-14 17:35:02.234611: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 17:35:02.234713: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 17:35:02.234947: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 420.0 minutes 2026-08-14 17:35:02.235330: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 420.0 minutes 2026-08-14 17:35:02.240209: Loaded 95 datapoints of futurerate analysis 2026-08-14 17:35:02.366244: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13'] 2026-08-14 17:35:02.414154: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 17:35:02.414593: Import rates: min 13.77p, max 53.39p, average 26.63p 2026-08-14 17:35:02.458362: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 17:35:02.458495: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 17:35:02.460014: High export rate found rates in range 99p to -99p 2026-08-14 17:35:02.560634: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 17:35:02.560784: Car 0 charging is not planned as it is not plugged in 2026-08-14 17:35:02.574372: Battery level now 10.56kWh, -1hr ago 11.84kWh, at midnight 2.43kWh, battery value change in the last hour -15.14p, change today 96.12p, rate_forward 11.83p 2026-08-14 17:35:02.574813: Last hour: net energy 0.05kWh, import 0.05kWh, export 0.0kWh, car 0kWh, load 1.7kWh, net cost 1.91p, import 1.91p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 17:35:02.660515: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 17:35:02.660714: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 17:35:02.755316: Using weighted-bucket historical load forecast over 14 days 2026-08-14 17:35:02.784624: Today's load divergence 134.22%, in-day adjustment 136.33%, damping 0.95x, yesterday 146.81% today 132.51% blend 26.74% 2026-08-14 17:35:02.784736: Today's predicted so far 10.07kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 10.07kWh forecast extra. 2026-08-14 17:35:02.784782: Today's actual load so far 17.51kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 17:35:02.825413: Inverter 0: Type SK Sunsynk 2026-08-14 17:35:02.825528: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 17:35:02.826332: Reserve min: 7%, battery_min: 7% 2026-08-14 17:35:02.826434: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 17:35:02.826769: Inverter 0 SoC: 10.42kW 65%, current charge rate 5000W, current discharge rate 5250W, current battery power 550W, current battery voltage 51.2V, grid power -62W, load power 607W, PV Power 0W 2026-08-14 17:35:02.826944: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:35:02.827059: Inverter 0 scheduled charge enable is False 2026-08-14 17:35:02.827123: Inverter 0 charge windows currently [] 2026-08-14 17:35:02.827173: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 17:35:02.827299: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:35:02.827335: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:35:02.827374: Inverter 0 scheduled discharge enable is False 2026-08-14 17:35:02.827501: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:35:02.827538: Inverter 0 discharge windows currently [] 2026-08-14 17:35:02.827563: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:35:02.827603: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:35:02.827674: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:35:02.897430: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 17:35:02.897527: Plan was last updated on 2026-08-14 17:25:00+01:00 and is now 10.0 minutes old 2026-08-14 17:35:02.897864: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 17:35:02.897910: Best export window [ ] 2026-08-14 17:35:02.898607: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 17:35:02.902095: Load divergence over 8.0 hours mean 440.53W, min 267.0W, max 1243.8W, std dev 170.23W, divergence 19.32% 2026-08-14 17:35:02.920024: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 17:35:02.920270: LoadML is_calculating False 2026-08-14 17:35:02.920938: Creating pool of 12 processes to match your CPU count 2026-08-14 17:35:03.022436: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1299.43p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:55:00, load 45.0kWh, PV 0.0kWh 2026-08-14 17:35:03.158961: Battery has 10.33 hours left - now at 10.42kWh 2026-08-14 17:35:03.200194: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1332.2p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:10:00, load 46.32kWh, PV 0.0kWh 2026-08-14 17:35:03.288677: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1210.14p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 46.32kWh, PV 0.0kWh 2026-08-14 17:35:03.372665: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1182.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 45.0kWh, PV 0.0kWh 2026-08-14 17:35:03.372774: Saving plan best values to HA entities 2026-08-14 17:35:03.561740: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 17:35:03.569134: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 17:35:03.578927: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.7kWh, house 2.92kWh, export 0.0kWh, metric 1182.32p, metric10 1210.14p 2026-08-14 17:35:03.697224: Marginal costs baseline metric (no standing charge): 1082.3526 2026-08-14 17:35:04.097923: Marginal energy costs matrix computed: min=25.51 max=38.5 2026-08-14 17:35:04.231018: Rate array import [{'start': 1055, 'end': 1140, 'rate': 'very expensive', 'range': '(45.7p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1055, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 17:35:04.232200: - Your estimated bill for today is £7.26 and tomorrow is £3.87 2026-08-14 17:35:04.232289: - Import rates are very expensive (45.7p - 53.4p) for the next 1 and a half hours and then expensive (40.1p) for the next 30 minutes. 2026-08-14 17:35:04.232315: - The battery is currently at 65% and is in eco mode for the next 8 hours. 2026-08-14 17:35:04.232335: - For the next 48 hours there will be no solar generation. 2026-08-14 17:35:04.232352: - You will run out of battery in 12 hours. 2026-08-14 17:35:04.232369: - Your next charge slot will be in 8 hours where import rates will be cheap (24.8p). 2026-08-14 17:35:04.232386: 2026-08-14 17:35:04.331827: Plan calculation took 1.43 seconds 2026-08-14 17:35:04.336148: No high rate period found 2026-08-14 17:35:04.426039: Import threshold used for optimisation was 25.6p 2026-08-14 17:35:04.495715: Low import rate windows [0: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 1: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 2: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 3: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 4: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 5: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 6: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 7: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 8: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 9: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 10: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 11: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 12: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 13: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 14: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 15: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 16: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 17: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 18: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 19: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 20: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 21: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 22: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 23: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 24: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 25: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 26: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 27: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 28: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 29: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 30: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 31: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 32: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 33: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 34: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 35: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 36: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 37: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 38: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 39: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 40: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 41: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 42: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 43: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 44: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 45: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 46: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 47: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 48: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 49: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 50: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 51: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 52: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 53: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 54: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 55: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 56: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 57: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 58: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 59: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 60: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 61: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 62: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 63: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 64: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 65: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 66: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 67: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 68: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 69: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 70: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 71: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 72: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 73: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 74: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 75: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 76: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 77: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 78: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 79: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 80: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 81: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 82: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 83: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 84: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 85: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 86: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 87: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 88: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 89: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 90: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 91: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 92: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 93: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 94: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 95: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44] 2026-08-14 17:35:04.507826: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 65%, target 16% 2026-08-14 17:35:04.508014: Inverter 0 disabled charge window while waiting for schedule (now 08-14 17:35:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 17:35:04.508159: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:35:04.508581: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:35:04.508716: No export window planned 2026-08-14 17:35:04.509092: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 17:35:04.509161: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:35:04.509363: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:35:04.509941: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 17:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 17:35:04.510049: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 17:35:04.510140: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 17:35:04.510258: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:35:04.510312: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:35:04.510352: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:35:04.510395: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:35:04.510434: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:35:04.510469: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:35:04.510509: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:35:04.510608: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:35:04.510659: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:35:04.510706: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:35:04.510762: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:35:04.510807: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:35:04.510848: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:35:04.510882: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:35:04.510909: Inverter 0 count register writes 0 2026-08-14 17:35:04.536648: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 17:35:04.536872: Recompute is saving previous plan... 2026-08-14 17:35:04.539536: Best charge window [ 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0% ] 2026-08-14 17:35:04.539682: Best export window [ ] 2026-08-14 17:35:04.540426: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 17:35:04.542951: Load divergence over 8.0 hours mean 440.53W, min 267.0W, max 1243.8W, std dev 170.23W, divergence 19.32% 2026-08-14 17:35:04.557652: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 17:35:04.557790: LoadML is_calculating False 2026-08-14 17:35:04.557866: Creating pool of 12 processes to match your CPU count 2026-08-14 17:35:04.658216: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 17:35:04.660215: Optimise levels pass started at 2026-08-14 17:35:04 2026-08-14 17:35:04.660307: Optimise all windows, total charge 95 export 1 2026-08-14 17:35:05.842169: >> Region optimisation pass width 960 gives best_metric 1120.05p, best_cost 1127.9p, best_cycle 38.2kWh, best_import 24.61kWh 2026-08-14 17:35:06.240101: >> Region optimisation pass width 480 gives best_metric 1120.05p, best_cost 1127.9p, best_cycle 38.2kWh, best_import 24.61kWh 2026-08-14 17:35:06.774929: >> Region optimisation pass width 240 gives best_metric 1120.05p, best_cost 1127.9p, best_cycle 38.2kWh, best_import 24.61kWh 2026-08-14 17:35:07.998287: >> Region optimisation pass width 120 gives best_metric 1120.05p, best_cost 1127.9p, best_cycle 38.2kWh, best_import 24.61kWh 2026-08-14 17:35:07.998580: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 83 2026-08-14 17:35:07.998668: Optimise levels pass ended at 2026-08-14 17:35:07, duration 3.3 seconds tried 331 combinations 2026-08-14 17:35:07.998895: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1120.05p, best_keep 0kWh, best_cycle 38.2kWh, best_carbon 0kg, best_import 24.61kWh 2026-08-14 17:35:08.014925: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 17:35:14.545804: Tweak plan optimisation started metric 1056.6p, cost 1065.51p 2026-08-14 17:35:14.878280: Tweak optimisation finished metric 1056.6p, cost 1065.51p, metric_keep 0kWh, cycle 33.79kWh, carbon 0kg, import 20.54kWh, changed 8 window(s) 2026-08-14 17:35:14.902865: Swap charge optimisation started metric 1056.6p, cost 1065.51p, min_improvement_swap 0.1p 2026-08-14 17:35:24.075510: Swap charge optimisation finished metric 1056.6p, cost 1065.51p 2026-08-14 17:35:24.203476: Raw charge windows [ 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 13%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 13%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 13%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100% ] reserve 1.12 2026-08-14 17:35:24.204118: Unclipped charge windows [ 15-08 02:00:00 - 15-08 04:00:00 @ 24.88p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:00:00 @ 37.0p 100% ] reserve 1.12 2026-08-14 17:35:24.204412: Unfiltered charge windows [ 15-08 02:00:00 - 15-08 04:00:00 @ 24.88p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:00:00 @ 37.0p 100% ] reserve 1.12 2026-08-14 17:35:24.204661: Filtered charge windows [ 15-08 02:00:00 - 15-08 04:00:00 @ 24.88p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:00:00 @ 37.0p 100% ] reserve 1.12 2026-08-14 17:35:24.243500: Previous plan best metric is 1056.85 (cost 1065.58) and new plan best metric is 1056.6 (cost 1065.51) 2026-08-14 17:35:24.243701: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 17:35:24.243912: Plan valid is now true after recompute was False 2026-08-14 17:35:24.274467: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1296.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:55:00, load 44.83kWh, PV 0.0kWh 2026-08-14 17:35:24.386087: Battery has 10.33 hours left - now at 10.42kWh 2026-08-14 17:35:24.439305: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1329.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:10:00, load 46.14kWh, PV 0.0kWh 2026-08-14 17:35:24.527702: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1196.59p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 46.14kWh, PV 0.0kWh 2026-08-14 17:35:24.600260: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1166.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 44.83kWh, PV 0.0kWh 2026-08-14 17:35:24.600345: Saving plan best values to HA entities 2026-08-14 17:35:24.736138: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 17:35:24.741048: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 17:35:24.745768: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.69kWh, house 2.92kWh, export 0.0kWh, metric 1166.75p, metric10 1196.59p 2026-08-14 17:35:24.821455: Marginal costs baseline metric (no standing charge): 1066.7879 2026-08-14 17:35:25.038260: Marginal energy costs matrix computed: min=25.51 max=38.5 2026-08-14 17:35:25.103808: Rate array import [{'start': 1055, 'end': 1140, 'rate': 'very expensive', 'range': '(45.7p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 26.7p)'}] export [{'start': 1055, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 17:35:25.104410: - Your estimated bill for today is £7.26 and tomorrow is £3.87 2026-08-14 17:35:25.104452: - Import rates are very expensive (45.7p - 53.4p) for the next 1 and a half hours and then expensive (40.1p) for the next 30 minutes. 2026-08-14 17:35:25.104470: - The battery is currently at 65% and is in eco mode for the next 8 hours. 2026-08-14 17:35:25.104484: - For the next 48 hours there will be no solar generation. 2026-08-14 17:35:25.104498: - You will run out of battery in 12 hours. 2026-08-14 17:35:25.104512: - Your next charge slot will be in 8 hours where import rates will be cheap (24.8p). 2026-08-14 17:35:25.104526: 2026-08-14 17:35:25.166524: Plan calculation took 20.63 seconds 2026-08-14 17:35:25.166890: Inverter 0: Type SK Sunsynk 2026-08-14 17:35:25.166956: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 17:35:25.167516: Reserve min: 7%, battery_min: 7% 2026-08-14 17:35:25.167596: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 17:35:25.167857: Inverter 0 SoC: 10.28kW 64%, current charge rate 5000W, current discharge rate 5250W, current battery power 538W, current battery voltage 51.2V, grid power -55W, load power 606W, PV Power 0W 2026-08-14 17:35:25.168093: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:35:25.168212: Inverter 0 scheduled charge enable is False 2026-08-14 17:35:25.168255: Inverter 0 charge windows currently [] 2026-08-14 17:35:25.168286: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 17:35:25.168430: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:35:25.168466: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:35:25.168506: Inverter 0 scheduled discharge enable is False 2026-08-14 17:35:25.168661: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:35:25.168697: Inverter 0 discharge windows currently [] 2026-08-14 17:35:25.168717: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:35:25.168764: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:35:25.168797: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:35:25.223966: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 64%, target 16% 2026-08-14 17:35:25.224095: Inverter 0 disabled charge window while waiting for schedule (now 08-14 17:35:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 17:35:25.224174: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:35:25.224377: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:35:25.224454: No export window planned 2026-08-14 17:35:25.224604: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 17:35:25.224641: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:35:25.224813: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:35:25.225014: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 17:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 17:35:25.225068: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 17:35:25.225134: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 17:35:25.225267: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:35:25.225320: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:35:25.225359: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:35:25.225404: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:35:25.225458: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:35:25.225512: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:35:25.225563: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:35:25.225660: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:35:25.225710: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:35:25.225774: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:35:25.225828: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:35:25.225879: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:35:25.225931: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:35:25.225983: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:35:25.226026: Inverter 0 count register writes 0 2026-08-14 17:35:25.245502: Total inverter register writes now 815 2026-08-14 17:35:25.274260: Info: Completed run status Demand 2026-08-14 17:35:25.280558: Info: record_status Demand 2026-08-14 17:35:25.294147: Saved current settings to /config/predbat_config.json 2026-08-14 17:35:25.294445: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 17:35:57.392250: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:35:57.392546: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:35:57.392599: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:35:57.392772: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:35:57.392821: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:35:57.392860: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:35:57.392909: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:38:11.664771: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:38:11.665222: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:38:11.665301: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:38:11.665540: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:38:11.665605: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:38:11.665647: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:38:11.665682: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:40:00.945513: --------------- PredBat - update at 2026-08-14 17:40:00+01:00 with clock skew 0 minutes, minutes now 1060 2026-08-14 17:40:00.946583: Saved current settings to /config/predbat_config.json 2026-08-14 17:40:00.946771: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 115.0 minutes 2026-08-14 17:40:00.946945: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 17:40:00.947041: Autoupdate: Currently up to date 2026-08-14 17:40:01.209962: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 17:40:01.210131: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 17:40:01.210385: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 17:40:01.211055: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 17:40:01.211197: Predbat mode is set to Control charge & discharge 2026-08-14 17:40:01.531410: Found 21602 load_today datapoints going back 28 days 2026-08-14 17:40:01.531779: Using load_power data to fill gaps in load_today data 2026-08-14 17:40:02.515871: Processing 721 30-minute periods for power integration 2026-08-14 17:40:02.735140: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 17:40:02.735597: Car charging hold False, threshold 6.0kWh 2026-08-14 17:40:02.735673: Current data so far today: load 17.55kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 17:40:02.761441: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 17:40:02.762125: Standing charge is set to 49.98p 2026-08-14 17:40:02.839224: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 17:40:02.839331: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 17:40:02.839543: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 425.0 minutes 2026-08-14 17:40:02.840073: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 425.0 minutes 2026-08-14 17:40:02.847939: Loaded 95 datapoints of futurerate analysis 2026-08-14 17:40:03.051303: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13'] 2026-08-14 17:40:03.102705: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 17:40:03.103329: Import rates: min 13.77p, max 53.39p, average 26.62p 2026-08-14 17:40:03.168402: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 17:40:03.168584: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 17:40:03.170077: High export rate found rates in range 99p to -99p 2026-08-14 17:40:03.277843: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 17:40:03.277968: Car 0 charging is not planned as it is not plugged in 2026-08-14 17:40:03.291338: Battery level now 10.42kWh, -1hr ago 11.82kWh, at midnight 2.43kWh, battery value change in the last hour -16.56p, change today 94.42p, rate_forward 11.83p 2026-08-14 17:40:03.291646: Last hour: net energy 0.04kWh, import 0.04kWh, export 0.0kWh, car 0kWh, load 1.75kWh, net cost 1.61p, import 1.61p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 17:40:03.363127: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 17:40:03.363305: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 17:40:03.468108: Using weighted-bucket historical load forecast over 14 days 2026-08-14 17:40:03.500078: Today's load divergence 134.48%, in-day adjustment 136.47%, damping 0.95x, yesterday 146.81% today 132.76% blend 26.39% 2026-08-14 17:40:03.500182: Today's predicted so far 10.09kWh with 0.0kWh car/iBoost excluded, 17.18kWh import ignored, and 10.09kWh forecast extra. 2026-08-14 17:40:03.500216: Today's actual load so far 17.61kWh with 0.0kWh car/iBoost excluded, and 17.18kWh import ignored. 2026-08-14 17:40:03.545196: Inverter 0: Type SK Sunsynk 2026-08-14 17:40:03.545322: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 17:40:03.546323: Reserve min: 7%, battery_min: 7% 2026-08-14 17:40:03.546449: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 17:40:03.546914: Inverter 0 SoC: 10.24kW 64%, current charge rate 5000W, current discharge rate 5250W, current battery power 916W, current battery voltage 51.2V, grid power -55W, load power 974W, PV Power 0W 2026-08-14 17:40:03.547142: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:40:03.547266: Inverter 0 scheduled charge enable is False 2026-08-14 17:40:03.547327: Inverter 0 charge windows currently [] 2026-08-14 17:40:03.547371: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 17:40:03.547588: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:40:03.547658: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:40:03.547729: Inverter 0 scheduled discharge enable is False 2026-08-14 17:40:03.548007: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:40:03.548070: Inverter 0 discharge windows currently [] 2026-08-14 17:40:03.548109: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:40:03.548146: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:40:03.548176: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:40:03.644135: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 17:40:03.644274: Plan was last updated on 2026-08-14 17:35:00+01:00 and is now 5.0 minutes old 2026-08-14 17:40:03.644700: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 17:40:03.644785: Best export window [ ] 2026-08-14 17:40:03.645828: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 17:40:03.649406: Load divergence over 8.0 hours mean 442.02W, min 274.8W, max 1206.0W, std dev 166.57W, divergence 18.84% 2026-08-14 17:40:03.670148: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 17:40:03.670285: LoadML is_calculating False 2026-08-14 17:40:03.670367: Creating pool of 12 processes to match your CPU count 2026-08-14 17:40:03.796287: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1300.91p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:40:00, load 45.02kWh, PV 0.0kWh 2026-08-14 17:40:03.951048: Battery has 10.0 hours left - now at 10.24kWh 2026-08-14 17:40:04.007403: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1333.63p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:00:00, load 46.33kWh, PV 0.0kWh 2026-08-14 17:40:04.105958: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1206.5p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 46.33kWh, PV 0.0kWh 2026-08-14 17:40:04.206244: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1177.74p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 45.02kWh, PV 0.0kWh 2026-08-14 17:40:04.206343: Saving plan best values to HA entities 2026-08-14 17:40:04.410948: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 17:40:04.417528: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 17:40:04.424238: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.32kWh, house 2.93kWh, export 0.0kWh, metric 1177.74p, metric10 1206.5p 2026-08-14 17:40:04.512293: Marginal costs baseline metric (no standing charge): 1077.7731 2026-08-14 17:40:04.856633: Marginal energy costs matrix computed: min=25.64 max=38.83 2026-08-14 17:40:04.963415: Rate array import [{'start': 1060, 'end': 1140, 'rate': 'very expensive', 'range': '(45.7p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1060, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 17:40:04.964193: - Your estimated bill for today is £7.26 and tomorrow is £3.90 2026-08-14 17:40:04.964265: - Import rates are very expensive (45.7p - 53.4p) for the next 1 and a quarter hours and then expensive (40.1p) for the next 30 minutes. 2026-08-14 17:40:04.964291: - The battery is currently at 64% and is in eco mode for the next 8 hours. 2026-08-14 17:40:04.964309: - For the next 48 hours there will be no solar generation. 2026-08-14 17:40:04.964327: - You will run out of battery in 12 hours. 2026-08-14 17:40:04.964349: - Your next charge slot will be in 8 hours where import rates will be cheap (24.8p). 2026-08-14 17:40:04.964370: 2026-08-14 17:40:05.048683: Plan calculation took 1.40 seconds 2026-08-14 17:40:05.054432: No high rate period found 2026-08-14 17:40:05.106996: Import threshold used for optimisation was 25.6p 2026-08-14 17:40:05.174955: Low import rate windows [0: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 1: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 2: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 3: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 4: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 5: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 6: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 7: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 8: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 9: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 10: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 11: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 12: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 13: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 14: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 15: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 16: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 17: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 18: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 19: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 20: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 21: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 22: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 23: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 24: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 25: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 26: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 27: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 28: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 29: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 30: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 31: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 32: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 33: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 34: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 35: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 36: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 37: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 38: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 39: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 40: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 41: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 42: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 43: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 44: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 45: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 46: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 47: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 48: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 49: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 50: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 51: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 52: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 53: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 54: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 55: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 56: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 57: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 58: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 59: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 60: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 61: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 62: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 63: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 64: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 65: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 66: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 67: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 68: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 69: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 70: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 71: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 72: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 73: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 74: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 75: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 76: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 77: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 78: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 79: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 80: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 81: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 82: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 83: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 84: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 85: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 86: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 87: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 88: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 89: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 90: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 91: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 92: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 93: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 94: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 95: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44] 2026-08-14 17:40:05.185174: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 64%, target 16% 2026-08-14 17:40:05.185404: Inverter 0 disabled charge window while waiting for schedule (now 08-14 17:40:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 17:40:05.185544: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:40:05.185849: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:40:05.185948: No export window planned 2026-08-14 17:40:05.186078: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 17:40:05.186117: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:40:05.186259: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:40:05.186518: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 17:40:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 17:40:05.186595: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 17:40:05.186690: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 17:40:05.186866: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:40:05.186952: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:40:05.187015: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:40:05.187090: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:40:05.187143: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:40:05.187180: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:40:05.187206: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:40:05.187276: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:40:05.187316: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:40:05.187343: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:40:05.187368: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:40:05.187391: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:40:05.187440: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:40:05.187466: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:40:05.187486: Inverter 0 count register writes 0 2026-08-14 17:40:05.205956: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 17:40:05.214192: Total inverter register writes now 815 2026-08-14 17:40:05.257524: Info: Completed run status Demand 2026-08-14 17:40:05.304453: Info: record_status Demand 2026-08-14 17:40:05.312199: Saved current settings to /config/predbat_config.json 2026-08-14 17:40:05.312550: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 17:40:42.432471: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:40:42.432813: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:40:42.432873: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:40:42.433058: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:40:42.433109: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:40:42.433133: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:40:42.433151: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:42:56.703760: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:42:56.704058: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:42:56.704103: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:42:56.704274: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:42:56.704342: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:42:56.704366: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:42:56.704393: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:44:56.941589: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:44:56.942183: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:44:56.942241: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:44:56.942386: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:44:56.942429: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:44:56.942451: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:44:56.942468: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:45:00.028344: --------------- PredBat - update at 2026-08-14 17:45:00+01:00 with clock skew 0 minutes, minutes now 1065 2026-08-14 17:45:00.029225: Saved current settings to /config/predbat_config.json 2026-08-14 17:45:00.029377: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 120.0 minutes 2026-08-14 17:45:00.029481: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 17:45:00.029573: Autoupdate: Currently up to date 2026-08-14 17:45:00.083610: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 17:45:00.083741: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 17:45:00.084037: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 17:45:00.084853: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 17:45:00.085034: Predbat mode is set to Control charge & discharge 2026-08-14 17:45:00.277413: Found 21602 load_today datapoints going back 28 days 2026-08-14 17:45:00.277598: Using load_power data to fill gaps in load_today data 2026-08-14 17:45:01.106947: Processing 721 30-minute periods for power integration 2026-08-14 17:45:01.297605: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 17:45:01.297973: Car charging hold False, threshold 6.0kWh 2026-08-14 17:45:01.299008: Current data so far today: load 17.7kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 17:45:01.326041: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 17:45:01.326621: Standing charge is set to 49.98p 2026-08-14 17:45:01.381479: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 17:45:01.381586: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 17:45:01.381902: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 430.0 minutes 2026-08-14 17:45:01.382334: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 430.0 minutes 2026-08-14 17:45:01.388439: Loaded 95 datapoints of futurerate analysis 2026-08-14 17:45:01.550516: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13'] 2026-08-14 17:45:01.597848: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 17:45:01.598321: Import rates: min 13.77p, max 53.39p, average 26.61p 2026-08-14 17:45:01.646699: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 17:45:01.646854: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 17:45:01.648599: High export rate found rates in range 99p to -99p 2026-08-14 17:45:01.782138: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 17:45:01.782292: Car 0 charging is not planned as it is not plugged in 2026-08-14 17:45:01.801825: Battery level now 10.24kWh, -1hr ago 11.68kWh, at midnight 2.43kWh, battery value change in the last hour -17.03p, change today 92.34p, rate_forward 11.83p 2026-08-14 17:45:01.802482: Last hour: net energy 0.03kWh, import 0.03kWh, export 0.0kWh, car 0kWh, load 1.8kWh, net cost 1.3p, import 1.3p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 17:45:01.881335: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 17:45:01.881564: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 17:45:01.979631: Using weighted-bucket historical load forecast over 14 days 2026-08-14 17:45:02.007472: Today's load divergence 134.72%, in-day adjustment 136.59%, damping 0.95x, yesterday 146.81% today 132.99% blend 26.04% 2026-08-14 17:45:02.007563: Today's predicted so far 10.1kWh with 0.0kWh car/iBoost excluded, 17.19kWh import ignored, and 10.1kWh forecast extra. 2026-08-14 17:45:02.007591: Today's actual load so far 17.7kWh with 0.0kWh car/iBoost excluded, and 17.19kWh import ignored. 2026-08-14 17:45:02.052064: Inverter 0: Type SK Sunsynk 2026-08-14 17:45:02.052167: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 17:45:02.052831: Reserve min: 7%, battery_min: 7% 2026-08-14 17:45:02.052974: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 17:45:02.053354: Inverter 0 SoC: 10.09kW 63%, current charge rate 5000W, current discharge rate 5250W, current battery power 554W, current battery voltage 51.2V, grid power -54W, load power 613W, PV Power 0W 2026-08-14 17:45:02.053573: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:45:02.053690: Inverter 0 scheduled charge enable is False 2026-08-14 17:45:02.053741: Inverter 0 charge windows currently [] 2026-08-14 17:45:02.053799: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 17:45:02.053977: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:45:02.054022: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:45:02.054069: Inverter 0 scheduled discharge enable is False 2026-08-14 17:45:02.054278: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:45:02.054323: Inverter 0 discharge windows currently [] 2026-08-14 17:45:02.054346: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:45:02.054366: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:45:02.054402: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:45:02.117445: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 17:45:02.117559: Plan was last updated on 2026-08-14 17:35:00+01:00 and is now 10.0 minutes old 2026-08-14 17:45:02.117958: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 17:45:02.118024: Best export window [ ] 2026-08-14 17:45:02.118857: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 17:45:02.122148: Load divergence over 8.0 hours mean 443.58W, min 279.0W, max 1164.0W, std dev 164.48W, divergence 18.54% 2026-08-14 17:45:02.139592: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 17:45:02.139690: LoadML is_calculating False 2026-08-14 17:45:02.139750: Creating pool of 12 processes to match your CPU count 2026-08-14 17:45:02.270401: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1304.34p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:30:00, load 45.21kWh, PV 0.0kWh 2026-08-14 17:45:02.423368: Battery has 9.75 hours left - now at 10.09kWh 2026-08-14 17:45:02.471693: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1337.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 46.52kWh, PV 0.0kWh 2026-08-14 17:45:02.560645: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1215.73p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 46.52kWh, PV 0.0kWh 2026-08-14 17:45:02.657392: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1188.04p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:25:00, load 45.21kWh, PV 0.0kWh 2026-08-14 17:45:02.657487: Saving plan best values to HA entities 2026-08-14 17:45:02.898248: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 17:45:02.906433: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 17:45:02.912744: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.94kWh, house 2.92kWh, export 0.0kWh, metric 1188.04p, metric10 1215.73p 2026-08-14 17:45:03.003674: Marginal costs baseline metric (no standing charge): 1088.0736 2026-08-14 17:45:03.227273: Marginal energy costs matrix computed: min=25.75 max=39.13 2026-08-14 17:45:03.322174: Rate array import [{'start': 1065, 'end': 1140, 'rate': 'very expensive', 'range': '(45.7p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1065, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 17:45:03.323048: - Your estimated bill for today is £7.26 and tomorrow is £3.93 2026-08-14 17:45:03.323111: - Import rates are very expensive (45.7p - 53.4p) for the next 1 and a quarter hours and then expensive (40.1p) for the next 30 minutes. 2026-08-14 17:45:03.323141: - The battery is currently at 63% and is in eco mode for the next 8 hours. 2026-08-14 17:45:03.323179: - For the next 48 hours there will be no solar generation. 2026-08-14 17:45:03.323213: - You will run out of battery in 12 hours. 2026-08-14 17:45:03.323240: - Your next charge slot will be in 8 hours where import rates will be cheap (24.8p). 2026-08-14 17:45:03.323265: 2026-08-14 17:45:03.391196: Plan calculation took 1.27 seconds 2026-08-14 17:45:03.394965: No high rate period found 2026-08-14 17:45:03.449142: Import threshold used for optimisation was 25.6p 2026-08-14 17:45:03.510541: Low import rate windows [0: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 1: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 2: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 3: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 4: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 5: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 6: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 7: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 8: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 9: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 10: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 11: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 12: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 13: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 14: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 15: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 16: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 17: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 18: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 19: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 20: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 21: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 22: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 23: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 24: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 25: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 26: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 27: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 28: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 29: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 30: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 31: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 32: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 33: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 34: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 35: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 36: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 37: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 38: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 39: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 40: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 41: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 42: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 43: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 44: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 45: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 46: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 47: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 48: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 49: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 50: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 51: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 52: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 53: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 54: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 55: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 56: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 57: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 58: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 59: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 60: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 61: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 62: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 63: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 64: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 65: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 66: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 67: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 68: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 69: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 70: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 71: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 72: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 73: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 74: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 75: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 76: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 77: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 78: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 79: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 80: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 81: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 82: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 83: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 84: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 85: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 86: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 87: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 88: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 89: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 90: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 91: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 92: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 93: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 94: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 95: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44] 2026-08-14 17:45:03.519728: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 63%, target 16% 2026-08-14 17:45:03.519898: Inverter 0 disabled charge window while waiting for schedule (now 08-14 17:45:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 17:45:03.520010: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:45:03.520279: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:45:03.520367: No export window planned 2026-08-14 17:45:03.520497: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 17:45:03.520535: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:45:03.520673: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:45:03.520875: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 17:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 17:45:03.520984: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 17:45:03.521066: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 17:45:03.521164: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:45:03.521205: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:45:03.521238: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:45:03.521263: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:45:03.521293: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:45:03.521318: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:45:03.521345: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:45:03.521407: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:45:03.521444: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:45:03.521469: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:45:03.521493: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:45:03.521516: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:45:03.521545: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:45:03.521568: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:45:03.521592: Inverter 0 count register writes 0 2026-08-14 17:45:03.539109: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 17:45:03.539289: Recompute is saving previous plan... 2026-08-14 17:45:03.542519: Best charge window [ 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0% ] 2026-08-14 17:45:03.542600: Best export window [ ] 2026-08-14 17:45:03.543442: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 17:45:03.546686: Load divergence over 8.0 hours mean 443.58W, min 279.0W, max 1164.0W, std dev 164.48W, divergence 18.54% 2026-08-14 17:45:03.564377: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 17:45:03.564508: LoadML is_calculating False 2026-08-14 17:45:03.564576: Creating pool of 12 processes to match your CPU count 2026-08-14 17:45:03.656647: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 17:45:03.658753: Optimise levels pass started at 2026-08-14 17:45:03 2026-08-14 17:45:03.658837: Optimise all windows, total charge 95 export 1 2026-08-14 17:45:04.863398: >> Region optimisation pass width 960 gives best_metric 1126.69p, best_cost 1136.5p, best_cycle 38.21kWh, best_import 25.09kWh 2026-08-14 17:45:05.267005: >> Region optimisation pass width 480 gives best_metric 1126.69p, best_cost 1136.5p, best_cycle 38.21kWh, best_import 25.09kWh 2026-08-14 17:45:05.829344: >> Region optimisation pass width 240 gives best_metric 1126.69p, best_cost 1136.5p, best_cycle 38.21kWh, best_import 25.09kWh 2026-08-14 17:45:07.103354: >> Region optimisation pass width 120 gives best_metric 1126.69p, best_cost 1136.5p, best_cycle 38.21kWh, best_import 25.09kWh 2026-08-14 17:45:07.103691: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 83 2026-08-14 17:45:07.103814: Optimise levels pass ended at 2026-08-14 17:45:07, duration 3.4 seconds tried 331 combinations 2026-08-14 17:45:07.103899: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1126.69p, best_keep 0kWh, best_cycle 38.21kWh, best_carbon 0kg, best_import 25.09kWh 2026-08-14 17:45:07.125575: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 17:45:13.163214: Tweak plan optimisation started metric 1062.85p, cost 1071.83p 2026-08-14 17:45:13.533899: Tweak optimisation finished metric 1062.85p, cost 1071.83p, metric_keep 0kWh, cycle 33.47kWh, carbon 0kg, import 20.73kWh, changed 8 window(s) 2026-08-14 17:45:13.554027: Swap charge optimisation started metric 1062.85p, cost 1071.83p, min_improvement_swap 0.1p 2026-08-14 17:45:19.593757: Swap charge optimisation finished metric 1062.85p, cost 1071.83p 2026-08-14 17:45:19.677422: Raw charge windows [ 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100% ] reserve 1.12 2026-08-14 17:45:19.677949: Unclipped charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:00:00 @ 37.0p 100% ] reserve 1.12 2026-08-14 17:45:19.678175: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:00:00 @ 37.0p 100% ] reserve 1.12 2026-08-14 17:45:19.678342: Filtered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:00:00 @ 37.0p 100% ] reserve 1.12 2026-08-14 17:45:19.708624: Previous plan best metric is 1062.5 (cost 1071.25) and new plan best metric is 1062.85 (cost 1071.83) 2026-08-14 17:45:19.708860: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 17:45:19.709060: Plan valid is now true after recompute was False 2026-08-14 17:45:19.732036: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1301.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:30:00, load 45.02kWh, PV 0.0kWh 2026-08-14 17:45:19.845742: Battery has 9.75 hours left - now at 10.09kWh 2026-08-14 17:45:19.900361: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1334.04p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 46.32kWh, PV 0.0kWh 2026-08-14 17:45:19.977999: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1201.94p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 46.32kWh, PV 0.0kWh 2026-08-14 17:45:20.058734: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1172.24p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:25:00, load 45.02kWh, PV 0.0kWh 2026-08-14 17:45:20.058833: Saving plan best values to HA entities 2026-08-14 17:45:20.211214: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 17:45:20.218972: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 17:45:20.226362: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.92kWh, house 2.92kWh, export 0.0kWh, metric 1172.24p, metric10 1201.94p 2026-08-14 17:45:20.373851: Marginal costs baseline metric (no standing charge): 1072.2724 2026-08-14 17:45:20.661831: Marginal energy costs matrix computed: min=25.75 max=39.13 2026-08-14 17:45:20.740365: Rate array import [{'start': 1065, 'end': 1140, 'rate': 'very expensive', 'range': '(45.7p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 26.7p)'}] export [{'start': 1065, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 17:45:20.741595: - Your estimated bill for today is £7.26 and tomorrow is £3.93 2026-08-14 17:45:20.741659: - Import rates are very expensive (45.7p - 53.4p) for the next 1 and a quarter hours and then expensive (40.1p) for the next 30 minutes. 2026-08-14 17:45:20.741683: - The battery is currently at 63% and is in eco mode for the next 8 hours. 2026-08-14 17:45:20.741701: - For the next 48 hours there will be no solar generation. 2026-08-14 17:45:20.741719: - You will run out of battery in 12 hours. 2026-08-14 17:45:20.741736: - Your next charge slot will be in 8 hours where import rates will be cheap (24.8p). 2026-08-14 17:45:20.741753: 2026-08-14 17:45:20.804329: Plan calculation took 17.27 seconds 2026-08-14 17:45:20.804676: Inverter 0: Type SK Sunsynk 2026-08-14 17:45:20.804723: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 17:45:20.805578: Reserve min: 7%, battery_min: 7% 2026-08-14 17:45:20.805669: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 17:45:20.806046: Inverter 0 SoC: 10.09kW 63%, current charge rate 5000W, current discharge rate 5250W, current battery power 554W, current battery voltage 51.2V, grid power -54W, load power 613W, PV Power 0W 2026-08-14 17:45:20.806317: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:45:20.806439: Inverter 0 scheduled charge enable is False 2026-08-14 17:45:20.806480: Inverter 0 charge windows currently [] 2026-08-14 17:45:20.806508: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 17:45:20.806618: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:45:20.806652: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:45:20.806686: Inverter 0 scheduled discharge enable is False 2026-08-14 17:45:20.806818: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:45:20.806866: Inverter 0 discharge windows currently [] 2026-08-14 17:45:20.806903: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:45:20.806942: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:45:20.806961: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:45:20.869758: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 63%, target 16% 2026-08-14 17:45:20.869934: Inverter 0 disabled charge window while waiting for schedule (now 08-14 17:45:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 17:45:20.870007: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:45:20.870204: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:45:20.870288: No export window planned 2026-08-14 17:45:20.870405: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 17:45:20.870441: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:45:20.870580: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:45:20.870746: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 17:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 17:45:20.870814: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 17:45:20.870872: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 17:45:20.870965: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:45:20.871000: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:45:20.871059: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:45:20.871087: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:45:20.871122: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:45:20.871146: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:45:20.871173: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:45:20.871230: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:45:20.871265: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:45:20.871290: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:45:20.871315: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:45:20.871338: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:45:20.871361: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:45:20.871384: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:45:20.871409: Inverter 0 count register writes 0 2026-08-14 17:45:20.895503: Total inverter register writes now 815 2026-08-14 17:45:20.933673: Info: Completed run status Demand 2026-08-14 17:45:20.941693: Info: record_status Demand 2026-08-14 17:45:20.949700: Saved current settings to /config/predbat_config.json 2026-08-14 17:45:20.950052: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 17:45:57.068988: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:45:57.069358: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:45:57.069438: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:45:57.069664: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:45:57.069714: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:45:57.069736: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:45:57.069758: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:47:57.293626: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:47:57.293899: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:47:57.293945: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:47:57.294083: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:47:57.294123: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:47:57.294144: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:47:57.294162: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:50:00.564889: --------------- PredBat - update at 2026-08-14 17:50:00+01:00 with clock skew 0 minutes, minutes now 1070 2026-08-14 17:50:00.566265: Saved current settings to /config/predbat_config.json 2026-08-14 17:50:01.020397: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 17:50:01.020527: Autoupdate: Currently up to date 2026-08-14 17:50:01.170579: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 17:50:01.170713: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 17:50:01.170957: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 17:50:01.171524: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 17:50:01.171663: Predbat mode is set to Control charge & discharge 2026-08-14 17:50:01.372082: Found 21602 load_today datapoints going back 28 days 2026-08-14 17:50:01.372395: Using load_power data to fill gaps in load_today data 2026-08-14 17:50:02.205015: Processing 721 30-minute periods for power integration 2026-08-14 17:50:02.391171: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 17:50:02.391348: Car charging hold False, threshold 6.0kWh 2026-08-14 17:50:02.391412: Current data so far today: load 17.55kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 17:50:02.408765: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 17:50:02.409421: Standing charge is set to 49.98p 2026-08-14 17:50:02.457095: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 17:50:02.457216: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 17:50:02.457479: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 435.0 minutes 2026-08-14 17:50:02.457963: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 435.0 minutes 2026-08-14 17:50:02.464218: Loaded 95 datapoints of futurerate analysis 2026-08-14 17:50:02.605350: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13'] 2026-08-14 17:50:02.642399: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 17:50:02.642850: Import rates: min 13.77p, max 53.39p, average 26.6p 2026-08-14 17:50:02.681325: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 17:50:02.681477: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 17:50:02.682781: High export rate found rates in range 99p to -99p 2026-08-14 17:50:02.776178: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 17:50:02.776326: Car 0 charging is not planned as it is not plugged in 2026-08-14 17:50:02.795298: Battery level now 10.09kWh, -1hr ago 11.68kWh, at midnight 2.43kWh, battery value change in the last hour -18.83p, change today 90.54p, rate_forward 11.83p 2026-08-14 17:50:02.795744: Last hour: net energy 0.02kWh, import 0.02kWh, export 0.0kWh, car 0kWh, load 1.5kWh, net cost 0.99p, import 0.99p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 17:50:02.873817: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 17:50:02.873972: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 17:50:02.955068: Using weighted-bucket historical load forecast over 14 days 2026-08-14 17:50:02.984078: Today's load divergence 134.13%, in-day adjustment 136.12%, damping 0.95x, yesterday 146.81% today 132.42% blend 25.69% 2026-08-14 17:50:02.984166: Today's predicted so far 10.14kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 10.14kWh forecast extra. 2026-08-14 17:50:02.984193: Today's actual load so far 17.54kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 17:50:03.021339: Inverter 0: Type SK Sunsynk 2026-08-14 17:50:03.021431: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 17:50:03.021957: Reserve min: 7%, battery_min: 7% 2026-08-14 17:50:03.022035: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 17:50:03.022299: Inverter 0 SoC: 10.08kW 63%, current charge rate 5000W, current discharge rate 5250W, current battery power 544W, current battery voltage 51.2V, grid power -54W, load power 553W, PV Power 0W 2026-08-14 17:50:03.022444: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:50:03.022539: Inverter 0 scheduled charge enable is False 2026-08-14 17:50:03.022568: Inverter 0 charge windows currently [] 2026-08-14 17:50:03.022590: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 17:50:03.022684: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:50:03.022735: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:50:03.022777: Inverter 0 scheduled discharge enable is False 2026-08-14 17:50:03.022899: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:50:03.022930: Inverter 0 discharge windows currently [] 2026-08-14 17:50:03.022949: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:50:03.022965: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:50:03.022979: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:50:03.090468: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 17:50:03.090579: Plan was last updated on 2026-08-14 17:45:00+01:00 and is now 5.0 minutes old 2026-08-14 17:50:03.090909: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 17:50:03.090964: Best export window [ ] 2026-08-14 17:50:03.091626: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 17:50:03.094284: Load divergence over 8.0 hours mean 443.61W, min 309.6W, max 1182.6W, std dev 153.7W, divergence 17.32% 2026-08-14 17:50:03.110369: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 17:50:03.110482: LoadML is_calculating False 2026-08-14 17:50:03.110545: Creating pool of 12 processes to match your CPU count 2026-08-14 17:50:03.231671: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1301.37p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:40:00, load 44.89kWh, PV 0.0kWh 2026-08-14 17:50:03.447083: Battery has 9.83 hours left - now at 10.08kWh 2026-08-14 17:50:03.527544: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1333.96p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:55:00, load 46.2kWh, PV 0.0kWh 2026-08-14 17:50:03.663907: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1206.85p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 46.2kWh, PV 0.0kWh 2026-08-14 17:50:03.823512: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1178.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 44.89kWh, PV 0.0kWh 2026-08-14 17:50:03.823611: Saving plan best values to HA entities 2026-08-14 17:50:04.031026: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 17:50:04.039558: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 17:50:04.047017: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.35kWh, house 2.92kWh, export 0.0kWh, metric 1178.25p, metric10 1206.85p 2026-08-14 17:50:04.125474: Marginal costs baseline metric (no standing charge): 1078.2835 2026-08-14 17:50:04.349595: Marginal energy costs matrix computed: min=25.67 max=39.41 2026-08-14 17:50:04.443705: Rate array import [{'start': 1070, 'end': 1140, 'rate': 'very expensive', 'range': '(45.7p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1070, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 17:50:04.444496: - Your estimated bill for today is £7.26 and tomorrow is £3.91 2026-08-14 17:50:04.444544: - Import rates are very expensive (45.7p - 53.4p) for the next 1 and a quarter hours and then expensive (40.1p) for the next 30 minutes. 2026-08-14 17:50:04.444567: - The battery is currently at 63% and is in eco mode for the next 8 hours. 2026-08-14 17:50:04.444586: - For the next 48 hours there will be no solar generation. 2026-08-14 17:50:04.444604: - You will run out of battery in 12 hours. 2026-08-14 17:50:04.444646: - Your next charge slot will be in 8 hours where import rates will be cheap (24.8p). 2026-08-14 17:50:04.444666: 2026-08-14 17:50:04.520438: Plan calculation took 1.43 seconds 2026-08-14 17:50:04.524222: No high rate period found 2026-08-14 17:50:04.572931: Import threshold used for optimisation was 17.0p 2026-08-14 17:50:04.630135: Low import rate windows [0: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 1: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 2: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 3: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 4: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 5: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 6: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 7: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 8: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 9: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 10: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 11: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 12: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 13: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 14: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 15: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 16: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 17: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 18: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 19: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 20: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 21: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 22: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 23: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 24: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 25: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 26: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 27: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 28: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 29: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 30: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 31: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 32: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 33: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 34: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 35: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 36: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 37: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 38: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 39: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 40: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 41: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 42: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 43: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 44: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 45: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 46: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 47: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 48: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 49: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 50: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 51: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 52: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 53: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 54: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 55: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 56: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 57: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 58: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 59: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 60: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 61: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 62: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 63: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 64: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 65: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 66: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 67: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 68: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 69: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 70: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 71: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 72: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 73: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 74: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 75: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 76: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 77: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 78: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 79: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 80: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 81: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 82: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 83: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 84: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 85: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 86: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 87: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 88: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 89: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 90: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 91: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 92: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 93: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 94: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 95: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44] 2026-08-14 17:50:04.639020: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 63%, target 16% 2026-08-14 17:50:04.639186: Inverter 0 disabled charge window while waiting for schedule (now 08-14 17:50:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 17:50:04.639301: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:50:04.639586: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:50:04.639679: No export window planned 2026-08-14 17:50:04.639910: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 17:50:04.639974: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:50:04.640151: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:50:04.640355: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 17:50:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 17:50:04.640438: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 17:50:04.640507: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 17:50:04.640609: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:50:04.640652: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:50:04.640741: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:50:04.640804: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:50:04.640836: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:50:04.640862: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:50:04.640886: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:50:04.641003: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:50:04.641052: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:50:04.641078: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:50:04.641103: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:50:04.641128: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:50:04.641151: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:50:04.641174: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:50:04.641200: Inverter 0 count register writes 0 2026-08-14 17:50:04.663220: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 17:50:04.669437: Total inverter register writes now 815 2026-08-14 17:50:04.708044: Info: Completed run status Demand 2026-08-14 17:50:04.715412: Info: record_status Demand 2026-08-14 17:50:04.724167: Saved current settings to /config/predbat_config.json 2026-08-14 17:50:04.724486: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 17:50:41.838942: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:50:41.839205: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:50:41.839254: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:50:41.839411: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:50:41.839467: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:50:41.839491: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:50:41.839509: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:52:42.062908: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:52:42.063151: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:52:42.063194: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:52:42.063328: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:52:42.063387: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:52:42.063408: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:52:42.063426: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:54:42.298296: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:54:42.298530: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:54:42.298560: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:54:42.298690: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:54:42.298724: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:54:42.298742: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:54:42.298756: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:55:00.417289: --------------- PredBat - update at 2026-08-14 17:55:00+01:00 with clock skew 0 minutes, minutes now 1075 2026-08-14 17:55:00.418235: Saved current settings to /config/predbat_config.json 2026-08-14 17:55:00.418423: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 5.0 minutes 2026-08-14 17:55:00.418535: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 17:55:00.418624: Autoupdate: Currently up to date 2026-08-14 17:55:00.441521: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 17:55:00.441705: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 17:55:00.441982: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 17:55:00.442865: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 17:55:00.443027: Predbat mode is set to Control charge & discharge 2026-08-14 17:55:01.207015: Found 21602 load_today datapoints going back 28 days 2026-08-14 17:55:01.207172: Using load_power data to fill gaps in load_today data 2026-08-14 17:55:01.961734: Processing 721 30-minute periods for power integration 2026-08-14 17:55:02.116001: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 17:55:02.116153: Car charging hold False, threshold 6.0kWh 2026-08-14 17:55:02.116202: Current data so far today: load 17.6kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 17:55:02.130378: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 17:55:02.131047: Standing charge is set to 49.98p 2026-08-14 17:55:02.169054: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 17:55:02.169152: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 17:55:02.169356: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 440.0 minutes 2026-08-14 17:55:02.169736: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 440.0 minutes 2026-08-14 17:55:02.174643: Loaded 95 datapoints of futurerate analysis 2026-08-14 17:55:02.293403: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13'] 2026-08-14 17:55:02.329335: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 17:55:02.329704: Import rates: min 13.77p, max 53.39p, average 26.59p 2026-08-14 17:55:02.364038: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 17:55:02.364158: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 17:55:02.365284: High export rate found rates in range 99p to -99p 2026-08-14 17:55:02.448404: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 17:55:02.448527: Car 0 charging is not planned as it is not plugged in 2026-08-14 17:55:02.460992: Battery level now 10.08kWh, -1hr ago 11.38kWh, at midnight 2.43kWh, battery value change in the last hour -15.33p, change today 90.45p, rate_forward 11.83p 2026-08-14 17:55:02.461372: Last hour: net energy 0.02kWh, import 0.02kWh, export 0.0kWh, car 0kWh, load 1.4kWh, net cost 0.69p, import 0.69p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 17:55:02.523065: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 17:55:02.523278: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 17:55:02.626071: Using weighted-bucket historical load forecast over 14 days 2026-08-14 17:55:02.661129: Today's load divergence 134.02%, in-day adjustment 135.99%, damping 0.95x, yesterday 146.81% today 132.32% blend 25.35% 2026-08-14 17:55:02.661276: Today's predicted so far 10.17kWh with 0.0kWh car/iBoost excluded, 17.38kWh import ignored, and 10.17kWh forecast extra. 2026-08-14 17:55:02.661318: Today's actual load so far 17.54kWh with 0.0kWh car/iBoost excluded, and 17.38kWh import ignored. 2026-08-14 17:55:02.706240: Inverter 0: Type SK Sunsynk 2026-08-14 17:55:02.706345: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 17:55:02.706921: Reserve min: 7%, battery_min: 7% 2026-08-14 17:55:02.707032: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 17:55:02.707321: Inverter 0 SoC: 10.08kW 63%, current charge rate 5000W, current discharge rate 5250W, current battery power 503W, current battery voltage 51.2V, grid power -54W, load power 566W, PV Power 0W 2026-08-14 17:55:02.707525: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:55:02.707638: Inverter 0 scheduled charge enable is False 2026-08-14 17:55:02.707697: Inverter 0 charge windows currently [] 2026-08-14 17:55:02.707745: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 17:55:02.707877: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:55:02.707915: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:55:02.707948: Inverter 0 scheduled discharge enable is False 2026-08-14 17:55:02.708052: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:55:02.708083: Inverter 0 discharge windows currently [] 2026-08-14 17:55:02.708102: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:55:02.708117: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:55:02.708131: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:55:02.799747: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 17:55:02.799982: Plan was last updated on 2026-08-14 17:45:00+01:00 and is now 10.0 minutes old 2026-08-14 17:55:02.800779: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 17:55:02.800845: Best export window [ ] 2026-08-14 17:55:02.803215: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 17:55:02.807713: Load divergence over 8.0 hours mean 443.64W, min 287.4W, max 1057.8W, std dev 144.3W, divergence 16.26% 2026-08-14 17:55:02.826482: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 17:55:02.826620: LoadML is_calculating False 2026-08-14 17:55:02.826722: Creating pool of 12 processes to match your CPU count 2026-08-14 17:55:02.955728: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1301.3p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:45:00, load 44.97kWh, PV 0.0kWh 2026-08-14 17:55:03.092553: Battery has 9.83 hours left - now at 10.08kWh 2026-08-14 17:55:03.136153: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1333.88p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:05:00, load 46.28kWh, PV 0.0kWh 2026-08-14 17:55:03.223149: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1211.87p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 46.28kWh, PV 0.0kWh 2026-08-14 17:55:03.312519: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1184.35p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 44.97kWh, PV 0.0kWh 2026-08-14 17:55:03.312624: Saving plan best values to HA entities 2026-08-14 17:55:03.496319: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 17:55:03.501180: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 17:55:03.507314: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.79kWh, house 2.91kWh, export 0.0kWh, metric 1184.35p, metric10 1211.87p 2026-08-14 17:55:03.599019: Marginal costs baseline metric (no standing charge): 1084.3871 2026-08-14 17:55:03.852731: Marginal energy costs matrix computed: min=25.59 max=39.69 2026-08-14 17:55:03.961463: Rate array import [{'start': 1075, 'end': 1140, 'rate': 'very expensive', 'range': '(45.7p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1075, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 17:55:03.962353: - Your estimated bill for today is £7.26 and tomorrow is £3.89 2026-08-14 17:55:03.962410: - Import rates are very expensive (45.7p - 53.4p) for the next 1 hour and then expensive (40.1p) for the next 30 minutes. 2026-08-14 17:55:03.962434: - The battery is currently at 63% and is in eco mode for the next 8 hours. 2026-08-14 17:55:03.962453: - For the next 48 hours there will be no solar generation. 2026-08-14 17:55:03.962476: - You will run out of battery in 12 hours. 2026-08-14 17:55:03.962493: - Your next charge slot will be in 8 hours where import rates will be cheap (24.8p). 2026-08-14 17:55:03.962510: 2026-08-14 17:55:04.049051: Plan calculation took 1.25 seconds 2026-08-14 17:55:04.052726: No high rate period found 2026-08-14 17:55:04.112507: Import threshold used for optimisation was 17.0p 2026-08-14 17:55:04.170623: Low import rate windows [0: 08-14 17:30:00 - 08-14 18:00:00 @ 45.69, 1: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 2: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 3: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 4: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 5: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 6: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 7: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 8: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 9: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 10: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 11: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 12: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 13: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 14: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 15: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 16: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 17: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 18: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 19: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 20: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 21: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 22: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 23: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 24: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 25: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 26: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 27: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 28: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 29: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 30: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 31: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 32: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 33: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 34: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 35: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 36: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 37: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 38: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 39: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 40: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 41: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 42: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 43: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 44: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 45: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 46: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 47: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 48: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 49: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 50: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 51: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 52: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 53: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 54: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 55: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 56: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 57: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 58: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 59: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 60: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 61: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 62: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 63: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 64: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 65: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 66: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 67: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 68: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 69: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 70: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 71: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 72: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 73: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 74: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 75: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 76: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 77: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 78: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 79: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 80: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 81: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 82: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 83: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 84: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 85: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 86: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 87: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 88: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 89: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 90: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 91: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 92: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 93: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 94: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 95: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44] 2026-08-14 17:55:04.179729: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 63%, target 16% 2026-08-14 17:55:04.179895: Inverter 0 disabled charge window while waiting for schedule (now 08-14 17:55:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 17:55:04.180023: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:55:04.180317: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:55:04.180409: No export window planned 2026-08-14 17:55:04.180521: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 17:55:04.180557: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:55:04.180708: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:55:04.180894: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 17:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 17:55:04.180986: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 17:55:04.181063: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 17:55:04.181153: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:55:04.181188: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:55:04.181216: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:55:04.181240: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:55:04.181264: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:55:04.181287: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:55:04.181311: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:55:04.181377: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:55:04.181406: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:55:04.181429: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:55:04.181453: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:55:04.181475: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:55:04.181498: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:55:04.181520: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:55:04.181543: Inverter 0 count register writes 0 2026-08-14 17:55:04.205102: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 17:55:04.205298: Recompute is saving previous plan... 2026-08-14 17:55:04.208448: Best charge window [ 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0% ] 2026-08-14 17:55:04.208525: Best export window [ ] 2026-08-14 17:55:04.209470: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 17:55:04.212680: Load divergence over 8.0 hours mean 443.64W, min 287.4W, max 1057.8W, std dev 144.3W, divergence 16.26% 2026-08-14 17:55:04.229680: Calculating data from yesterday for savings calculation 2026-08-14 17:55:04.242402: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 17:55:04.295451: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 17:55:04.311245: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 870.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 17:55:04.333597: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 17:55:04.378859: Yesterday: Predbat disabled was £8.57 (adjusted £8.43) vs £6.21 (adjusted £5.91), saving £2.35 (adjusted £2.52) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 13.25kWh 2026-08-14 17:55:04.451488: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 901.12p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 17:55:04.451624: Yesterday: No Battery/PV system cost predicted was £9.01 (adjusted £9.01) vs £6.21 (adjusted £5.91), saving £2.8 (adjusted £3.1) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 17:55:04.462065: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 17:55:04.462169: LoadML is_calculating False 2026-08-14 17:55:04.462233: Creating pool of 12 processes to match your CPU count 2026-08-14 17:55:04.544380: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 17:55:04.546771: Optimise levels pass started at 2026-08-14 17:55:04 2026-08-14 17:55:04.546840: Optimise all windows, total charge 95 export 1 2026-08-14 17:55:05.736089: >> Region optimisation pass width 960 gives best_metric 1125.06p, best_cost 1133.36p, best_cycle 38.36kWh, best_import 24.95kWh 2026-08-14 17:55:06.128309: >> Region optimisation pass width 480 gives best_metric 1125.06p, best_cost 1133.36p, best_cycle 38.36kWh, best_import 24.95kWh 2026-08-14 17:55:06.710563: >> Region optimisation pass width 240 gives best_metric 1125.06p, best_cost 1133.36p, best_cycle 38.36kWh, best_import 24.95kWh 2026-08-14 17:55:07.963798: >> Region optimisation pass width 120 gives best_metric 1125.06p, best_cost 1133.36p, best_cycle 38.36kWh, best_import 24.95kWh 2026-08-14 17:55:07.964152: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 83 2026-08-14 17:55:07.964228: Optimise levels pass ended at 2026-08-14 17:55:07, duration 3.4 seconds tried 331 combinations 2026-08-14 17:55:07.964304: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1125.06p, best_keep 0kWh, best_cycle 38.36kWh, best_carbon 0kg, best_import 24.95kWh 2026-08-14 17:55:07.981945: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 17:55:14.343788: Tweak plan optimisation started metric 1058.66p, cost 1067.61p 2026-08-14 17:55:14.674462: Tweak optimisation finished metric 1058.66p, cost 1067.61p, metric_keep 0kWh, cycle 33.46kWh, carbon 0kg, import 20.61kWh, changed 8 window(s) 2026-08-14 17:55:14.693510: Swap charge optimisation started metric 1058.66p, cost 1067.61p, min_improvement_swap 0.1p 2026-08-14 17:55:22.762573: Swap charge optimisation finished metric 1058.66p, cost 1067.61p 2026-08-14 17:55:22.897167: Raw charge windows [ 14-08 17:30:00 - 14-08 18:00:00 @ 45.69p 0%, 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 13%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 13%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 13%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100% ] reserve 1.12 2026-08-14 17:55:22.897812: Unclipped charge windows [ 15-08 02:00:00 - 15-08 03:30:00 @ 25.14p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:00:00 @ 37.0p 100% ] reserve 1.12 2026-08-14 17:55:22.898115: Unfiltered charge windows [ 15-08 02:00:00 - 15-08 03:30:00 @ 25.14p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:00:00 @ 37.0p 100% ] reserve 1.12 2026-08-14 17:55:22.898729: Filtered charge windows [ 15-08 02:00:00 - 15-08 03:30:00 @ 25.14p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:00:00 @ 37.0p 100% ] reserve 1.12 2026-08-14 17:55:22.937960: Previous plan best metric is 1058.78 (cost 1067.56) and new plan best metric is 1058.66 (cost 1067.61) 2026-08-14 17:55:22.938266: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 17:55:22.938519: Plan valid is now true after recompute was False 2026-08-14 17:55:22.969861: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1298.46p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:45:00, load 44.79kWh, PV 0.0kWh 2026-08-14 17:55:23.094511: Battery has 9.83 hours left - now at 10.08kWh 2026-08-14 17:55:23.140425: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1330.91p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:05:00, load 46.08kWh, PV 0.0kWh 2026-08-14 17:55:23.219686: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1198.16p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 46.08kWh, PV 0.0kWh 2026-08-14 17:55:23.294300: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1168.63p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 44.79kWh, PV 0.0kWh 2026-08-14 17:55:23.294393: Saving plan best values to HA entities 2026-08-14 17:55:23.466636: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 17:55:23.475171: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 17:55:23.483233: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.78kWh, house 2.91kWh, export 0.0kWh, metric 1168.63p, metric10 1198.16p 2026-08-14 17:55:23.575674: Marginal costs baseline metric (no standing charge): 1068.6663 2026-08-14 17:55:23.851921: Marginal energy costs matrix computed: min=25.59 max=39.69 2026-08-14 17:55:23.931200: Rate array import [{'start': 1075, 'end': 1140, 'rate': 'very expensive', 'range': '(45.7p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 26.7p)'}] export [{'start': 1075, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 17:55:23.932054: - Your estimated bill for today is £7.26 and tomorrow is £3.89 2026-08-14 17:55:23.932116: - Import rates are very expensive (45.7p - 53.4p) for the next 1 hour and then expensive (40.1p) for the next 30 minutes. 2026-08-14 17:55:23.932159: - The battery is currently at 63% and is in eco mode for the next 8 hours. 2026-08-14 17:55:23.932196: - For the next 48 hours there will be no solar generation. 2026-08-14 17:55:23.932229: - You will run out of battery in 12 hours. 2026-08-14 17:55:23.932261: - Your next charge slot will be in 8 hours where import rates will be cheap (24.8p). 2026-08-14 17:55:23.932304: 2026-08-14 17:55:23.997686: Plan calculation took 19.79 seconds 2026-08-14 17:55:23.998123: Inverter 0: Type SK Sunsynk 2026-08-14 17:55:23.998192: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 17:55:23.998930: Reserve min: 7%, battery_min: 7% 2026-08-14 17:55:23.999065: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 17:55:23.999448: Inverter 0 SoC: 10.08kW 63%, current charge rate 5000W, current discharge rate 5250W, current battery power 509W, current battery voltage 51.2V, grid power -55W, load power 572W, PV Power 0W 2026-08-14 17:55:23.999774: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:55:23.999937: Inverter 0 scheduled charge enable is False 2026-08-14 17:55:24.000006: Inverter 0 charge windows currently [] 2026-08-14 17:55:24.000065: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 17:55:24.000236: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:55:24.000288: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:55:24.000358: Inverter 0 scheduled discharge enable is False 2026-08-14 17:55:24.000575: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:55:24.000632: Inverter 0 discharge windows currently [] 2026-08-14 17:55:24.000692: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:55:24.000743: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:55:24.000766: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:55:24.072479: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 63%, target 16% 2026-08-14 17:55:24.072630: Inverter 0 disabled charge window while waiting for schedule (now 08-14 17:55:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 17:55:24.072724: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:55:24.072933: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:55:24.073052: No export window planned 2026-08-14 17:55:24.073168: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 17:55:24.073197: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 17:55:24.073331: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 17:55:24.073500: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 17:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 17:55:24.073554: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 17:55:24.073606: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 17:55:24.073707: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:55:24.073745: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:55:24.073772: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:55:24.073806: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:55:24.073833: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:55:24.073857: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:55:24.073881: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 17:55:24.073939: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:55:24.073974: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:55:24.074000: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:55:24.074024: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:55:24.074052: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:55:24.074076: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:55:24.074099: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 17:55:24.074123: Inverter 0 count register writes 0 2026-08-14 17:55:24.097719: Total inverter register writes now 815 2026-08-14 17:55:24.131841: Info: Completed run status Demand 2026-08-14 17:55:24.137591: Info: record_status Demand 2026-08-14 17:55:24.144520: Saved current settings to /config/predbat_config.json 2026-08-14 17:55:24.144815: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 17:55:57.250625: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:55:57.251011: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:55:57.251082: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:55:57.251309: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:55:57.251376: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:55:57.251421: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:55:57.251450: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:56:43.078314: TemperatureAPI: Using coordinates latitude 53.4, longitude -2.2 2026-08-14 17:56:43.254946: TemperatureAPI: Successfully fetched temperature data from Open-Meteo API 2026-08-14 17:56:57.575503: Info: HAHistory: Pruning history data started. 2026-08-14 17:56:57.578363: Info: HAHistory: Pruning history data completed. 2026-08-14 17:58:11.506316: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 17:58:11.506563: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 17:58:11.506599: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 17:58:11.506754: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 17:58:11.506795: Note: Inverter does not support discharge freeze - disabled 2026-08-14 17:58:11.506816: Note: Inverter does not support charge freeze - disabled 2026-08-14 17:58:11.506833: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 17:59:21.580137: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 17:59:22.471039: Processing 1297 30-minute periods for power integration 2026-08-14 17:59:22.553929: ML Component: Car charging hold False, car energy reported load False 2026-08-14 17:59:22.632089: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 17:59:22.712097: ML Temperature data points: 47886 2026-08-14 17:59:22.931093: ML Component: Fetched 7776 load data points, 27.0 days of history 2026-08-14 17:59:22.964084: ML Component: Data fetch completed, load data age 56.0 days, 16192 data points 2026-08-14 17:59:22.964206: ML Component: No training needed, model age is 0.63 hours 2026-08-14 17:59:22.964263: ML Component: Generating predictions load data age 56.0 days, 16192 data points 2026-08-14 17:59:23.076383: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0512 max_dow {0: 0.10282812496256083, 1: 0.11130937486607581, 2: 0.11949062483031303, 3: 0.1146749994263053, 4: 0.1683562503574416, 5: 0.10359687502831222, 6: 0.10919687573947012} 2026-08-14 17:59:23.662573: ML Component: Generated 576 predictions (total 40.96 kWh over 48h) 2026-08-14 17:59:23.703787: ML Component: Prediction cycle completed 2026-08-14 17:59:23.819355: ML Component: Saved 16192 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 18:00:00.720782: --------------- PredBat - update at 2026-08-14 18:00:00+01:00 with clock skew 0 minutes, minutes now 1080 2026-08-14 18:00:00.721619: Saved current settings to /config/predbat_config.json 2026-08-14 18:00:00.721763: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 10.0 minutes 2026-08-14 18:00:00.721827: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 18:00:00.721967: Autoupdate: Currently up to date 2026-08-14 18:00:00.746497: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 18:00:00.746663: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 18:00:00.746839: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 18:00:00.747352: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 18:00:00.747480: Predbat mode is set to Control charge & discharge 2026-08-14 18:00:00.945722: Found 21602 load_today datapoints going back 27 days 2026-08-14 18:00:00.945871: Using load_power data to fill gaps in load_today data 2026-08-14 18:00:01.652379: Processing 721 30-minute periods for power integration 2026-08-14 18:00:01.821249: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 18:00:01.821402: Car charging hold False, threshold 6.0kWh 2026-08-14 18:00:01.821450: Current data so far today: load 17.65kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 18:00:01.838034: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 18:00:01.838731: Standing charge is set to 49.98p 2026-08-14 18:00:01.889925: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 18:00:01.890034: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 18:00:01.890250: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 445.0 minutes 2026-08-14 18:00:01.890789: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 445.0 minutes 2026-08-14 18:00:01.897178: Loaded 95 datapoints of futurerate analysis 2026-08-14 18:00:02.093770: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75'] 2026-08-14 18:00:02.134555: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 18:00:02.134886: Import rates: min 13.77p, max 53.39p, average 26.58p 2026-08-14 18:00:02.174733: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 18:00:02.174872: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 18:00:02.176187: High export rate found rates in range 99p to -99p 2026-08-14 18:00:02.262257: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 18:00:02.262391: Car 0 charging is not planned as it is not plugged in 2026-08-14 18:00:02.281222: Battery level now 10.08kWh, -1hr ago 11.24kWh, at midnight 2.43kWh, battery value change in the last hour -13.72p, change today 90.45p, rate_forward 11.83p 2026-08-14 18:00:02.281826: Last hour: net energy 0.01kWh, import 0.01kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 0.36p, import 0.36p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 18:00:02.355182: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 18:00:02.355365: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 18:00:02.462291: Using weighted-bucket historical load forecast over 14 days 2026-08-14 18:00:02.493969: Today's load divergence 134.18%, in-day adjustment 136.06%, damping 0.95x, yesterday 146.81% today 132.48% blend 25.0% 2026-08-14 18:00:02.494080: Today's predicted so far 10.27kWh with 0.0kWh car/iBoost excluded, 17.37kWh import ignored, and 10.27kWh forecast extra. 2026-08-14 18:00:02.494114: Today's actual load so far 17.69kWh with 0.0kWh car/iBoost excluded, and 17.37kWh import ignored. 2026-08-14 18:00:02.553431: Inverter 0: Type SK Sunsynk 2026-08-14 18:00:02.553554: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 18:00:02.554456: Reserve min: 7%, battery_min: 7% 2026-08-14 18:00:02.554592: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 18:00:02.555091: Inverter 0 SoC: 10.08kW 63%, current charge rate 5000W, current discharge rate 5250W, current battery power 706W, current battery voltage 51.2V, grid power -58W, load power 756W, PV Power 0W 2026-08-14 18:00:02.555413: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:00:02.555556: Inverter 0 scheduled charge enable is False 2026-08-14 18:00:02.555602: Inverter 0 charge windows currently [] 2026-08-14 18:00:02.555674: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 18:00:02.555855: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:00:02.555906: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:00:02.555964: Inverter 0 scheduled discharge enable is False 2026-08-14 18:00:02.556205: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:00:02.556265: Inverter 0 discharge windows currently [] 2026-08-14 18:00:02.556305: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:00:02.556337: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:00:02.556365: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:00:02.658565: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 18:00:02.658742: Plan was last updated on 2026-08-14 17:55:00+01:00 and is now 5.0 minutes old 2026-08-14 18:00:02.659071: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 18:00:02.659123: Best export window [ ] 2026-08-14 18:00:02.659987: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 18:00:02.663175: Load divergence over 8.0 hours mean 445.27W, min 279.0W, max 1138.2W, std dev 147.39W, divergence 16.55% 2026-08-14 18:00:02.682146: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 18:00:02.682282: LoadML is_calculating False 2026-08-14 18:00:02.682348: Creating pool of 12 processes to match your CPU count 2026-08-14 18:00:02.811564: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1297.64p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 04:00:00, load 44.83kWh, PV 0.0kWh 2026-08-14 18:00:02.985754: Battery has 10.0 hours left - now at 10.08kWh 2026-08-14 18:00:03.037153: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1329.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:15:00, load 46.13kWh, PV 0.0kWh 2026-08-14 18:00:03.164601: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1202.24p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 46.13kWh, PV 0.0kWh 2026-08-14 18:00:03.303853: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1173.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 44.83kWh, PV 0.0kWh 2026-08-14 18:00:03.303962: Saving plan best values to HA entities 2026-08-14 18:00:03.569743: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 18:00:03.576046: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 18:00:03.581988: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.17kWh, house 2.92kWh, export 0.0kWh, metric 1173.9p, metric10 1202.24p 2026-08-14 18:00:03.692541: Marginal costs baseline metric (no standing charge): 1073.9335 2026-08-14 18:00:03.991778: Marginal energy costs matrix computed: min=25.52 max=39.97 2026-08-14 18:00:04.080937: Rate array import [{'start': 1080, 'end': 1140, 'rate': 'very expensive', 'range': '(50.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1080, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 18:00:04.081827: - Your estimated bill for today is £7.26 and tomorrow is £3.86 2026-08-14 18:00:04.081885: - Import rates are very expensive (50.9p - 53.4p) for the next 1 hour and then expensive (40.1p) for the next 30 minutes. 2026-08-14 18:00:04.081908: - The battery is currently at 63% and is in eco mode for the next 8 hours. 2026-08-14 18:00:04.081928: - For the next 48 hours there will be no solar generation. 2026-08-14 18:00:04.081948: - You will run out of battery in 12 hours. 2026-08-14 18:00:04.081969: - Your next charge slot will be in 8 hours where import rates will be cheap (24.8p). 2026-08-14 18:00:04.081987: 2026-08-14 18:00:04.172347: Plan calculation took 1.51 seconds 2026-08-14 18:00:04.176185: No high rate period found 2026-08-14 18:00:04.259056: Import threshold used for optimisation was 25.6p 2026-08-14 18:00:04.344024: Low import rate windows [0: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 1: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 2: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 3: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 4: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 5: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 6: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 7: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 8: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 9: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 10: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 11: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 12: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 13: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 14: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 15: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 16: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 17: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 18: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 19: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 20: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 21: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 22: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 23: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 24: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 25: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 26: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 27: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 28: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 29: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 30: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 31: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 32: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 33: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 34: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 35: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 36: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 37: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 38: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 39: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 40: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 41: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 42: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 43: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 44: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 45: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 46: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 47: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 48: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 49: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 50: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 51: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 52: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 53: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 54: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 55: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 56: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 57: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 58: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 59: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 60: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 61: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 62: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 63: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 64: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 65: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 66: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 67: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 68: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 69: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 70: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 71: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 72: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 73: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 74: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 75: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 76: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 77: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 78: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 79: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 80: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 81: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 82: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 83: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 84: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 85: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 86: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 87: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 88: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 89: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 90: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 91: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 92: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 93: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 94: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44] 2026-08-14 18:00:04.355879: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 63%, target 16% 2026-08-14 18:00:04.356114: Inverter 0 disabled charge window while waiting for schedule (now 08-14 18:00:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 18:00:04.356295: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:00:04.356750: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:00:04.356928: No export window planned 2026-08-14 18:00:04.357167: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 18:00:04.357238: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:00:04.357429: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:00:04.357654: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 18:00:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 18:00:04.357723: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 18:00:04.357789: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 18:00:04.357877: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:00:04.357910: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:00:04.357937: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:00:04.357969: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:00:04.357993: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:00:04.358020: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:00:04.358067: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:00:04.358197: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:00:04.358272: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:00:04.358323: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:00:04.358368: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:00:04.358422: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:00:04.358471: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:00:04.358531: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:00:04.358578: Inverter 0 count register writes 0 2026-08-14 18:00:04.383530: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 18:00:04.390593: Total inverter register writes now 815 2026-08-14 18:00:04.431693: Info: Completed run status Demand 2026-08-14 18:00:04.439265: Info: record_status Demand 2026-08-14 18:00:04.446769: Saved current settings to /config/predbat_config.json 2026-08-14 18:00:04.447109: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 18:00:41.569354: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:00:41.569696: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:00:41.569784: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:00:41.570089: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:00:41.570342: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:00:41.570384: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:00:41.570405: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:02:41.794489: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:02:41.794770: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:02:41.794815: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:02:41.794973: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:02:41.795014: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:02:41.795036: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:02:41.795053: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:04:42.011270: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:04:42.011520: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:04:42.011563: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:04:42.011747: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:04:42.011788: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:04:42.011810: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:04:42.011827: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:05:00.105788: --------------- PredBat - update at 2026-08-14 18:05:00+01:00 with clock skew 0 minutes, minutes now 1085 2026-08-14 18:05:00.106640: Saved current settings to /config/predbat_config.json 2026-08-14 18:05:00.106768: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 15.0 minutes 2026-08-14 18:05:00.106875: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 18:05:00.106959: Autoupdate: Currently up to date 2026-08-14 18:05:00.133086: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 18:05:00.133203: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 18:05:00.133344: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 18:05:00.133826: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 18:05:00.133930: Predbat mode is set to Control charge & discharge 2026-08-14 18:05:00.303152: Found 21602 load_today datapoints going back 27 days 2026-08-14 18:05:00.303330: Using load_power data to fill gaps in load_today data 2026-08-14 18:05:01.093046: Processing 721 30-minute periods for power integration 2026-08-14 18:05:01.248004: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 18:05:01.248136: Car charging hold False, threshold 6.0kWh 2026-08-14 18:05:01.248178: Current data so far today: load 17.7kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 18:05:01.262744: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 18:05:01.263192: Standing charge is set to 49.98p 2026-08-14 18:05:01.311100: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 18:05:01.311194: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 18:05:01.311385: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 450.0 minutes 2026-08-14 18:05:01.311753: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 450.0 minutes 2026-08-14 18:05:01.316430: Loaded 95 datapoints of futurerate analysis 2026-08-14 18:05:01.438832: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75'] 2026-08-14 18:05:01.476405: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 18:05:01.476870: Import rates: min 13.77p, max 53.39p, average 26.57p 2026-08-14 18:05:01.512723: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 18:05:01.512841: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 18:05:01.514119: High export rate found rates in range 99p to -99p 2026-08-14 18:05:01.596752: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 18:05:01.596874: Car 0 charging is not planned as it is not plugged in 2026-08-14 18:05:01.608676: Battery level now 10.08kWh, -1hr ago 11.11kWh, at midnight 2.43kWh, battery value change in the last hour -12.2p, change today 90.45p, rate_forward 11.83p 2026-08-14 18:05:01.609153: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.2kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 18:05:01.686116: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 18:05:01.686338: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 18:05:01.799441: Using weighted-bucket historical load forecast over 14 days 2026-08-14 18:05:01.832862: Today's load divergence 134.4%, in-day adjustment 136.17%, damping 0.95x, yesterday 146.81% today 132.68% blend 24.65% 2026-08-14 18:05:01.833011: Today's predicted so far 10.35kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 10.35kWh forecast extra. 2026-08-14 18:05:01.833074: Today's actual load so far 17.83kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 18:05:01.872366: Inverter 0: Type SK Sunsynk 2026-08-14 18:05:01.872485: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 18:05:01.873285: Reserve min: 7%, battery_min: 7% 2026-08-14 18:05:01.873421: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 18:05:01.873888: Inverter 0 SoC: 9.95kW 62%, current charge rate 5000W, current discharge rate 5250W, current battery power 993W, current battery voltage 51.2V, grid power -55W, load power 1053W, PV Power 0W 2026-08-14 18:05:01.874083: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:05:01.874178: Inverter 0 scheduled charge enable is False 2026-08-14 18:05:01.874207: Inverter 0 charge windows currently [] 2026-08-14 18:05:01.874234: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 18:05:01.874345: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:05:01.874382: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:05:01.874419: Inverter 0 scheduled discharge enable is False 2026-08-14 18:05:01.874548: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:05:01.874601: Inverter 0 discharge windows currently [] 2026-08-14 18:05:01.874626: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:05:01.874645: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:05:01.874662: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:05:01.965553: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 18:05:01.965707: Plan was last updated on 2026-08-14 17:55:00+01:00 and is now 10.0 minutes old 2026-08-14 18:05:01.966037: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 18:05:01.966084: Best export window [ ] 2026-08-14 18:05:01.966947: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 18:05:01.970311: Load divergence over 8.0 hours mean 446.76W, min 267.0W, max 1243.8W, std dev 168.49W, divergence 18.86% 2026-08-14 18:05:01.994198: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 18:05:01.994366: LoadML is_calculating False 2026-08-14 18:05:01.994450: Creating pool of 12 processes to match your CPU count 2026-08-14 18:05:02.131981: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1300.22p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:50:00, load 44.9kWh, PV 0.0kWh 2026-08-14 18:05:02.270428: Battery has 9.75 hours left - now at 9.95kWh 2026-08-14 18:05:02.321226: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1332.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:10:00, load 46.2kWh, PV 0.0kWh 2026-08-14 18:05:02.394503: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1210.52p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 46.2kWh, PV 0.0kWh 2026-08-14 18:05:02.469194: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1183.23p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 44.9kWh, PV 0.0kWh 2026-08-14 18:05:02.469299: Saving plan best values to HA entities 2026-08-14 18:05:02.638007: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 18:05:02.643819: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 18:05:02.649473: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.73kWh, house 2.92kWh, export 0.0kWh, metric 1183.23p, metric10 1210.52p 2026-08-14 18:05:02.737453: Marginal costs baseline metric (no standing charge): 1083.2668 2026-08-14 18:05:03.027278: Marginal energy costs matrix computed: min=25.46 max=39.52 2026-08-14 18:05:03.124923: Rate array import [{'start': 1085, 'end': 1140, 'rate': 'very expensive', 'range': '(50.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1085, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 18:05:03.125785: - Your estimated bill for today is £7.26 and tomorrow is £3.88 2026-08-14 18:05:03.125850: - Import rates are very expensive (50.9p - 53.4p) for the next 55 minutes and then expensive (40.1p) for the next 30 minutes. 2026-08-14 18:05:03.125875: - The battery is currently at 62% and is in eco mode for the next 8 hours. 2026-08-14 18:05:03.125893: - For the next 48 hours there will be no solar generation. 2026-08-14 18:05:03.125911: - You will run out of battery in 12 hours. 2026-08-14 18:05:03.125928: - Your next charge slot will be in 8 hours where import rates will be cheap (24.8p). 2026-08-14 18:05:03.125945: 2026-08-14 18:05:03.204017: Plan calculation took 1.24 seconds 2026-08-14 18:05:03.207767: No high rate period found 2026-08-14 18:05:03.261286: Import threshold used for optimisation was 25.6p 2026-08-14 18:05:03.315835: Low import rate windows [0: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 1: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 2: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 3: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 4: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 5: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 6: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 7: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 8: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 9: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 10: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 11: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 12: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 13: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 14: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 15: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 16: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 17: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 18: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 19: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 20: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 21: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 22: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 23: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 24: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 25: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 26: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 27: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 28: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 29: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 30: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 31: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 32: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 33: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 34: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 35: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 36: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 37: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 38: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 39: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 40: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 41: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 42: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 43: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 44: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 45: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 46: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 47: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 48: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 49: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 50: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 51: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 52: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 53: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 54: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 55: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 56: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 57: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 58: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 59: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 60: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 61: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 62: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 63: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 64: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 65: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 66: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 67: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 68: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 69: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 70: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 71: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 72: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 73: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 74: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 75: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 76: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 77: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 78: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 79: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 80: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 81: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 82: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 83: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 84: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 85: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 86: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 87: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 88: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 89: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 90: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 91: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 92: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 93: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 94: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 95: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55] 2026-08-14 18:05:03.323745: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 62%, target 16% 2026-08-14 18:05:03.323891: Inverter 0 disabled charge window while waiting for schedule (now 08-14 18:05:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 18:05:03.324006: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:05:03.324269: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:05:03.324360: No export window planned 2026-08-14 18:05:03.324471: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 18:05:03.324507: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:05:03.324658: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:05:03.324857: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 18:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 18:05:03.324923: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 18:05:03.325020: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 18:05:03.325122: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:05:03.325156: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:05:03.325212: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:05:03.325239: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:05:03.325269: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:05:03.325294: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:05:03.325323: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:05:03.325384: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:05:03.325415: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:05:03.325441: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:05:03.325471: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:05:03.325495: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:05:03.325523: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:05:03.325547: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:05:03.325587: Inverter 0 count register writes 0 2026-08-14 18:05:03.341776: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 18:05:03.341964: Recompute is saving previous plan... 2026-08-14 18:05:03.345170: Best charge window [ 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0% ] 2026-08-14 18:05:03.345257: Best export window [ ] 2026-08-14 18:05:03.346108: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 18:05:03.349296: Load divergence over 8.0 hours mean 446.76W, min 267.0W, max 1243.8W, std dev 168.49W, divergence 18.86% 2026-08-14 18:05:03.363783: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 18:05:03.363888: LoadML is_calculating False 2026-08-14 18:05:03.363972: Creating pool of 12 processes to match your CPU count 2026-08-14 18:05:03.442130: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 18:05:03.443854: Optimise levels pass started at 2026-08-14 18:05:03 2026-08-14 18:05:03.443903: Optimise all windows, total charge 95 export 1 2026-08-14 18:05:04.569968: >> Region optimisation pass width 960 gives best_metric 1125.71p, best_cost 1132.78p, best_cycle 38.3kWh, best_import 24.92kWh 2026-08-14 18:05:04.960309: >> Region optimisation pass width 480 gives best_metric 1125.71p, best_cost 1132.78p, best_cycle 38.3kWh, best_import 24.92kWh 2026-08-14 18:05:05.577457: >> Region optimisation pass width 240 gives best_metric 1125.71p, best_cost 1132.78p, best_cycle 38.3kWh, best_import 24.92kWh 2026-08-14 18:05:06.863731: >> Region optimisation pass width 120 gives best_metric 1125.71p, best_cost 1132.78p, best_cycle 38.3kWh, best_import 24.92kWh 2026-08-14 18:05:06.864151: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 82 2026-08-14 18:05:06.864359: Optimise levels pass ended at 2026-08-14 18:05:06, duration 3.4 seconds tried 337 combinations 2026-08-14 18:05:06.864472: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1125.71p, best_keep 0kWh, best_cycle 38.3kWh, best_carbon 0kg, best_import 24.92kWh 2026-08-14 18:05:06.884459: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 18:05:13.193686: Tweak plan optimisation started metric 1057.34p, cost 1066.33p 2026-08-14 18:05:13.480626: Tweak optimisation finished metric 1057.34p, cost 1066.33p, metric_keep 0kWh, cycle 33.34kWh, carbon 0kg, import 20.57kWh, changed 8 window(s) 2026-08-14 18:05:13.500146: Swap charge optimisation started metric 1057.34p, cost 1066.33p, min_improvement_swap 0.1p 2026-08-14 18:05:22.092139: Swap charge optimisation finished metric 1057.34p, cost 1066.33p 2026-08-14 18:05:22.211992: Raw charge windows [ 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 13%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 13%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 13%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100% ] reserve 1.12 2026-08-14 18:05:22.212550: Unclipped charge windows [ 15-08 02:00:00 - 15-08 04:00:00 @ 24.88p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] reserve 1.12 2026-08-14 18:05:22.212900: Unfiltered charge windows [ 15-08 02:00:00 - 15-08 04:00:00 @ 24.88p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] reserve 1.12 2026-08-14 18:05:22.213141: Filtered charge windows [ 15-08 02:00:00 - 15-08 04:00:00 @ 24.88p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] reserve 1.12 2026-08-14 18:05:22.243698: Previous plan best metric is 1057.71 (cost 1066.52) and new plan best metric is 1057.34 (cost 1066.33) 2026-08-14 18:05:22.243872: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 18:05:22.244076: Plan valid is now true after recompute was False 2026-08-14 18:05:22.267514: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1297.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:50:00, load 44.73kWh, PV 0.0kWh 2026-08-14 18:05:22.377244: Battery has 9.75 hours left - now at 9.95kWh 2026-08-14 18:05:22.423706: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1329.73p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:10:00, load 46.02kWh, PV 0.0kWh 2026-08-14 18:05:22.507691: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1196.97p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 46.02kWh, PV 0.0kWh 2026-08-14 18:05:22.608504: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1167.67p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 44.73kWh, PV 0.0kWh 2026-08-14 18:05:22.608620: Saving plan best values to HA entities 2026-08-14 18:05:22.787978: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 18:05:22.793528: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 18:05:22.799273: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.73kWh, house 2.92kWh, export 0.0kWh, metric 1167.67p, metric10 1196.97p 2026-08-14 18:05:22.866776: Marginal costs baseline metric (no standing charge): 1067.7021 2026-08-14 18:05:23.090759: Marginal energy costs matrix computed: min=25.46 max=39.52 2026-08-14 18:05:23.157470: Rate array import [{'start': 1085, 'end': 1140, 'rate': 'very expensive', 'range': '(50.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 26.7p)'}] export [{'start': 1085, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 18:05:23.158056: - Your estimated bill for today is £7.26 and tomorrow is £3.88 2026-08-14 18:05:23.158098: - Import rates are very expensive (50.9p - 53.4p) for the next 55 minutes and then expensive (40.1p) for the next 30 minutes. 2026-08-14 18:05:23.158117: - The battery is currently at 62% and is in eco mode for the next 8 hours. 2026-08-14 18:05:23.158131: - For the next 48 hours there will be no solar generation. 2026-08-14 18:05:23.158145: - You will run out of battery in 12 hours. 2026-08-14 18:05:23.158159: - Your next charge slot will be in 8 hours where import rates will be cheap (24.8p). 2026-08-14 18:05:23.158172: 2026-08-14 18:05:23.218922: Plan calculation took 19.88 seconds 2026-08-14 18:05:23.219307: Inverter 0: Type SK Sunsynk 2026-08-14 18:05:23.219363: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 18:05:23.220046: Reserve min: 7%, battery_min: 7% 2026-08-14 18:05:23.220138: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 18:05:23.220434: Inverter 0 SoC: 9.92kW 62%, current charge rate 5000W, current discharge rate 5250W, current battery power 983W, current battery voltage 51.2V, grid power -54W, load power 1044W, PV Power 0W 2026-08-14 18:05:23.220716: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:05:23.220826: Inverter 0 scheduled charge enable is False 2026-08-14 18:05:23.220866: Inverter 0 charge windows currently [] 2026-08-14 18:05:23.220896: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 18:05:23.221057: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:05:23.221101: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:05:23.221138: Inverter 0 scheduled discharge enable is False 2026-08-14 18:05:23.221271: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:05:23.221310: Inverter 0 discharge windows currently [] 2026-08-14 18:05:23.221332: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:05:23.221353: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:05:23.221371: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:05:23.276621: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 62%, target 16% 2026-08-14 18:05:23.276776: Inverter 0 disabled charge window while waiting for schedule (now 08-14 18:05:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 18:05:23.276860: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:05:23.277071: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:05:23.277158: No export window planned 2026-08-14 18:05:23.277266: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 18:05:23.277303: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:05:23.277436: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:05:23.277614: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 18:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 18:05:23.277670: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 18:05:23.277725: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 18:05:23.277812: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:05:23.277853: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:05:23.277883: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:05:23.277914: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:05:23.277940: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:05:23.277963: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:05:23.277993: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:05:23.278049: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:05:23.278083: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:05:23.278108: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:05:23.278131: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:05:23.278182: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:05:23.278209: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:05:23.278234: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:05:23.278254: Inverter 0 count register writes 0 2026-08-14 18:05:23.299303: Total inverter register writes now 815 2026-08-14 18:05:23.333595: Info: Completed run status Demand 2026-08-14 18:05:23.339804: Info: record_status Demand 2026-08-14 18:05:23.345902: Saved current settings to /config/predbat_config.json 2026-08-14 18:05:23.346213: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 18:05:57.448737: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:05:57.449023: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:05:57.449064: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:05:57.449202: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:05:57.449237: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:05:57.449258: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:05:57.449275: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:08:11.703460: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:08:11.703724: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:08:11.703769: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:08:11.703919: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:08:11.703959: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:08:11.703981: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:08:11.703999: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:10:00.917137: --------------- PredBat - update at 2026-08-14 18:10:00+01:00 with clock skew 0 minutes, minutes now 1090 2026-08-14 18:10:00.917880: Saved current settings to /config/predbat_config.json 2026-08-14 18:10:00.918015: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 20.0 minutes 2026-08-14 18:10:00.918124: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 18:10:00.918227: Autoupdate: Currently up to date 2026-08-14 18:10:00.942933: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 18:10:00.943066: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 18:10:00.943229: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 18:10:00.943778: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 18:10:00.943901: Predbat mode is set to Control charge & discharge 2026-08-14 18:10:01.111508: Found 21602 load_today datapoints going back 28 days 2026-08-14 18:10:01.111672: Using load_power data to fill gaps in load_today data 2026-08-14 18:10:01.784133: Processing 721 30-minute periods for power integration 2026-08-14 18:10:01.935815: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 18:10:01.935964: Car charging hold False, threshold 6.0kWh 2026-08-14 18:10:01.936003: Current data so far today: load 17.9kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 18:10:01.950177: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 18:10:01.950575: Standing charge is set to 49.98p 2026-08-14 18:10:02.000663: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 18:10:02.000772: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 18:10:02.001051: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 455.0 minutes 2026-08-14 18:10:02.001507: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 455.0 minutes 2026-08-14 18:10:02.007822: Loaded 95 datapoints of futurerate analysis 2026-08-14 18:10:02.161877: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75'] 2026-08-14 18:10:02.208616: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 18:10:02.209119: Import rates: min 13.77p, max 53.39p, average 26.55p 2026-08-14 18:10:02.248449: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 18:10:02.248576: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 18:10:02.249769: High export rate found rates in range 99p to -99p 2026-08-14 18:10:02.340678: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 18:10:02.340880: Car 0 charging is not planned as it is not plugged in 2026-08-14 18:10:02.356090: Battery level now 9.95kWh, -1hr ago 10.97kWh, at midnight 2.43kWh, battery value change in the last hour -12.02p, change today 88.93p, rate_forward 11.83p 2026-08-14 18:10:02.356637: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.25kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 18:10:02.417871: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 18:10:02.418006: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 18:10:02.492898: Using weighted-bucket historical load forecast over 14 days 2026-08-14 18:10:02.519082: Today's load divergence 134.51%, in-day adjustment 136.19%, damping 0.95x, yesterday 146.81% today 132.78% blend 24.31% 2026-08-14 18:10:02.519424: Today's predicted so far 10.37kWh with 0.0kWh car/iBoost excluded, 17.18kWh import ignored, and 10.37kWh forecast extra. 2026-08-14 18:10:02.519466: Today's actual load so far 17.89kWh with 0.0kWh car/iBoost excluded, and 17.18kWh import ignored. 2026-08-14 18:10:02.554008: Inverter 0: Type SK Sunsynk 2026-08-14 18:10:02.554084: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 18:10:02.554619: Reserve min: 7%, battery_min: 7% 2026-08-14 18:10:02.554696: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 18:10:02.554967: Inverter 0 SoC: 9.92kW 62%, current charge rate 5000W, current discharge rate 5250W, current battery power 2364W, current battery voltage 51.2V, grid power -53W, load power 2391W, PV Power 0W 2026-08-14 18:10:02.555134: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:10:02.555246: Inverter 0 scheduled charge enable is False 2026-08-14 18:10:02.555284: Inverter 0 charge windows currently [] 2026-08-14 18:10:02.555317: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 18:10:02.555448: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:10:02.555498: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:10:02.555566: Inverter 0 scheduled discharge enable is False 2026-08-14 18:10:02.555718: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:10:02.555766: Inverter 0 discharge windows currently [] 2026-08-14 18:10:02.555799: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:10:02.555830: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:10:02.555846: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:10:02.609601: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 18:10:02.609699: Plan was last updated on 2026-08-14 18:05:00+01:00 and is now 5.0 minutes old 2026-08-14 18:10:02.609930: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 18:10:02.609965: Best export window [ ] 2026-08-14 18:10:02.610590: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 18:10:02.613117: Load divergence over 8.0 hours mean 449.84W, min 274.8W, max 1206.0W, std dev 164.74W, divergence 18.31% 2026-08-14 18:10:02.628506: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 18:10:02.628608: LoadML is_calculating False 2026-08-14 18:10:02.628664: Creating pool of 12 processes to match your CPU count 2026-08-14 18:10:02.739155: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1298.05p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:55:00, load 44.96kWh, PV 0.0kWh 2026-08-14 18:10:02.889965: Battery has 9.75 hours left - now at 9.92kWh 2026-08-14 18:10:02.936216: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1330.23p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:15:00, load 46.25kWh, PV 0.0kWh 2026-08-14 18:10:03.022810: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1202.63p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 46.25kWh, PV 0.0kWh 2026-08-14 18:10:03.102249: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1174.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 44.96kWh, PV 0.0kWh 2026-08-14 18:10:03.102357: Saving plan best values to HA entities 2026-08-14 18:10:03.286909: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 18:10:03.293018: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 18:10:03.299274: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.18kWh, house 2.93kWh, export 0.0kWh, metric 1174.42p, metric10 1202.63p 2026-08-14 18:10:03.384788: Marginal costs baseline metric (no standing charge): 1074.4563 2026-08-14 18:10:03.667752: Marginal energy costs matrix computed: min=25.43 max=39.02 2026-08-14 18:10:03.749029: Rate array import [{'start': 1090, 'end': 1140, 'rate': 'very expensive', 'range': '(50.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1090, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 18:10:03.749756: - Your estimated bill for today is £7.26 and tomorrow is £3.87 2026-08-14 18:10:03.749804: - Import rates are very expensive (50.9p - 53.4p) for the next 50 minutes and then expensive (40.1p) for the next 30 minutes. 2026-08-14 18:10:03.749827: - The battery is currently at 62% and is in eco mode for the next 8 hours. 2026-08-14 18:10:03.749846: - For the next 48 hours there will be no solar generation. 2026-08-14 18:10:03.749867: - You will run out of battery in 12 hours. 2026-08-14 18:10:03.749886: - Your next charge slot will be in 8 hours where import rates will be cheap (24.8p). 2026-08-14 18:10:03.749906: 2026-08-14 18:10:03.811792: Plan calculation took 1.20 seconds 2026-08-14 18:10:03.814947: No high rate period found 2026-08-14 18:10:03.863018: Import threshold used for optimisation was 25.6p 2026-08-14 18:10:03.915915: Low import rate windows [0: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 1: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 2: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 3: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 4: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 5: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 6: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 7: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 8: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 9: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 10: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 11: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 12: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 13: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 14: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 15: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 16: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 17: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 18: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 19: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 20: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 21: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 22: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 23: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 24: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 25: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 26: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 27: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 28: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 29: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 30: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 31: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 32: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 33: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 34: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 35: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 36: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 37: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 38: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 39: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 40: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 41: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 42: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 43: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 44: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 45: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 46: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 47: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 48: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 49: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 50: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 51: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 52: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 53: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 54: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 55: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 56: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 57: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 58: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 59: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 60: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 61: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 62: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 63: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 64: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 65: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 66: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 67: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 68: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 69: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 70: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 71: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 72: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 73: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 74: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 75: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 76: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 77: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 78: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 79: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 80: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 81: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 82: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 83: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 84: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 85: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 86: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 87: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 88: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 89: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 90: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 91: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 92: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 93: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 94: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 95: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55] 2026-08-14 18:10:03.924141: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 62%, target 16% 2026-08-14 18:10:03.924289: Inverter 0 disabled charge window while waiting for schedule (now 08-14 18:10:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 18:10:03.924417: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:10:03.924696: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:10:03.924791: No export window planned 2026-08-14 18:10:03.924899: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 18:10:03.925007: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:10:03.925184: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:10:03.925370: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 18:10:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 18:10:03.925434: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 18:10:03.925498: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 18:10:03.925611: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:10:03.925656: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:10:03.925683: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:10:03.925713: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:10:03.925738: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:10:03.925771: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:10:03.925796: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:10:03.925862: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:10:03.925892: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:10:03.925917: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:10:03.925946: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:10:03.925971: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:10:03.925994: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:10:03.926025: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:10:03.926046: Inverter 0 count register writes 0 2026-08-14 18:10:03.942912: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 18:10:03.948316: Total inverter register writes now 815 2026-08-14 18:10:03.980502: Info: Completed run status Demand 2026-08-14 18:10:03.986860: Info: record_status Demand 2026-08-14 18:10:03.993511: Saved current settings to /config/predbat_config.json 2026-08-14 18:10:03.993837: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 18:10:42.090967: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:10:42.091215: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:10:42.091257: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:10:42.091426: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:10:42.091484: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:10:42.091506: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:10:42.091524: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:12:42.321319: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:12:42.321636: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:12:42.321681: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:12:42.321819: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:12:42.321859: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:12:42.321880: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:12:42.321897: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:14:56.550510: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:14:56.550906: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:14:56.550976: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:14:56.551166: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:14:56.551214: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:14:56.551236: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:14:56.551254: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:15:00.645504: --------------- PredBat - update at 2026-08-14 18:15:00+01:00 with clock skew 0 minutes, minutes now 1095 2026-08-14 18:15:00.646333: Saved current settings to /config/predbat_config.json 2026-08-14 18:15:00.646459: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 25.0 minutes 2026-08-14 18:15:00.646572: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 18:15:00.646666: Autoupdate: Currently up to date 2026-08-14 18:15:00.665494: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 18:15:00.665634: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 18:15:00.665839: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 18:15:00.666365: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 18:15:00.666475: Predbat mode is set to Control charge & discharge 2026-08-14 18:15:00.818339: Found 21602 load_today datapoints going back 28 days 2026-08-14 18:15:00.818470: Using load_power data to fill gaps in load_today data 2026-08-14 18:15:01.554448: Processing 721 30-minute periods for power integration 2026-08-14 18:15:01.704021: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 18:15:01.704153: Car charging hold False, threshold 6.0kWh 2026-08-14 18:15:01.704192: Current data so far today: load 18.0kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 18:15:01.718575: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 18:15:01.719070: Standing charge is set to 49.98p 2026-08-14 18:15:01.766265: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 18:15:01.766379: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 18:15:01.766592: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 460.0 minutes 2026-08-14 18:15:01.767102: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 460.0 minutes 2026-08-14 18:15:01.773028: Loaded 95 datapoints of futurerate analysis 2026-08-14 18:15:01.906437: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75'] 2026-08-14 18:15:01.944466: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 18:15:01.944820: Import rates: min 13.77p, max 53.39p, average 26.53p 2026-08-14 18:15:01.980764: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 18:15:01.980886: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 18:15:01.982091: High export rate found rates in range 99p to -99p 2026-08-14 18:15:02.065065: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 18:15:02.065183: Car 0 charging is not planned as it is not plugged in 2026-08-14 18:15:02.077999: Battery level now 9.92kWh, -1hr ago 10.97kWh, at midnight 2.43kWh, battery value change in the last hour -12.39p, change today 88.55p, rate_forward 11.83p 2026-08-14 18:15:02.078359: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.2kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 18:15:02.150250: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 18:15:02.150410: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 18:15:02.232017: Using weighted-bucket historical load forecast over 14 days 2026-08-14 18:15:02.256437: Today's load divergence 134.63%, in-day adjustment 136.23%, damping 0.95x, yesterday 146.81% today 132.9% blend 23.96% 2026-08-14 18:15:02.256512: Today's predicted so far 10.39kWh with 0.0kWh car/iBoost excluded, 17.19kWh import ignored, and 10.39kWh forecast extra. 2026-08-14 18:15:02.256539: Today's actual load so far 17.95kWh with 0.0kWh car/iBoost excluded, and 17.19kWh import ignored. 2026-08-14 18:15:02.284842: Inverter 0: Type SK Sunsynk 2026-08-14 18:15:02.284923: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 18:15:02.285453: Reserve min: 7%, battery_min: 7% 2026-08-14 18:15:02.285528: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 18:15:02.285781: Inverter 0 SoC: 9.84kW 62%, current charge rate 5000W, current discharge rate 5250W, current battery power 2504W, current battery voltage 51.2V, grid power -54W, load power 2591W, PV Power 0W 2026-08-14 18:15:02.285936: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:15:02.286012: Inverter 0 scheduled charge enable is False 2026-08-14 18:15:02.286037: Inverter 0 charge windows currently [] 2026-08-14 18:15:02.286058: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 18:15:02.286148: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:15:02.286172: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:15:02.286199: Inverter 0 scheduled discharge enable is False 2026-08-14 18:15:02.286298: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:15:02.286328: Inverter 0 discharge windows currently [] 2026-08-14 18:15:02.286347: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:15:02.286362: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:15:02.286375: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:15:02.335571: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 18:15:02.335660: Plan was last updated on 2026-08-14 18:05:00+01:00 and is now 10.0 minutes old 2026-08-14 18:15:02.335910: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 18:15:02.335948: Best export window [ ] 2026-08-14 18:15:02.336649: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 18:15:02.339196: Load divergence over 8.0 hours mean 452.81W, min 279.0W, max 1164.0W, std dev 162.94W, divergence 17.99% 2026-08-14 18:15:02.354259: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 18:15:02.354352: LoadML is_calculating False 2026-08-14 18:15:02.354406: Creating pool of 12 processes to match your CPU count 2026-08-14 18:15:02.458003: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1299.53p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:55:00, load 45.08kWh, PV 0.0kWh 2026-08-14 18:15:02.589074: Battery has 9.67 hours left - now at 9.84kWh 2026-08-14 18:15:02.635218: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1331.71p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:10:00, load 46.37kWh, PV 0.0kWh 2026-08-14 18:15:02.709715: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1209.55p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 46.37kWh, PV 0.0kWh 2026-08-14 18:15:02.782223: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1182.46p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:25:00, load 45.08kWh, PV 0.0kWh 2026-08-14 18:15:02.782305: Saving plan best values to HA entities 2026-08-14 18:15:02.924707: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 18:15:02.929558: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 18:15:02.934224: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.71kWh, house 2.92kWh, export 0.0kWh, metric 1182.46p, metric10 1209.55p 2026-08-14 18:15:03.002085: Marginal costs baseline metric (no standing charge): 1082.4884 2026-08-14 18:15:03.236127: Marginal energy costs matrix computed: min=25.38 max=38.51 2026-08-14 18:15:03.336120: Rate array import [{'start': 1095, 'end': 1140, 'rate': 'very expensive', 'range': '(50.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1095, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 18:15:03.336888: - Your estimated bill for today is £7.26 and tomorrow is £3.87 2026-08-14 18:15:03.337024: - Import rates are very expensive (50.9p - 53.4p) for the next 45 minutes and then expensive (40.1p) for the next 30 minutes. 2026-08-14 18:15:03.337059: - The battery is currently at 62% and is in eco mode for the next 8 hours. 2026-08-14 18:15:03.337078: - For the next 48 hours there will be no solar generation. 2026-08-14 18:15:03.337095: - You will run out of battery in 12 hours. 2026-08-14 18:15:03.337112: - Your next charge slot will be in 8 hours where import rates will be cheap (24.8p). 2026-08-14 18:15:03.337129: 2026-08-14 18:15:03.400727: Plan calculation took 1.06 seconds 2026-08-14 18:15:03.403733: No high rate period found 2026-08-14 18:15:03.453950: Import threshold used for optimisation was 25.6p 2026-08-14 18:15:03.504351: Low import rate windows [0: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 1: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 2: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 3: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 4: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 5: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 6: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 7: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 8: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 9: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 10: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 11: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 12: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 13: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 14: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 15: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 16: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 17: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 18: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 19: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 20: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 21: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 22: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 23: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 24: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 25: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 26: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 27: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 28: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 29: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 30: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 31: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 32: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 33: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 34: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 35: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 36: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 37: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 38: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 39: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 40: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 41: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 42: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 43: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 44: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 45: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 46: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 47: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 48: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 49: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 50: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 51: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 52: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 53: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 54: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 55: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 56: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 57: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 58: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 59: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 60: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 61: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 62: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 63: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 64: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 65: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 66: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 67: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 68: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 69: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 70: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 71: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 72: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 73: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 74: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 75: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 76: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 77: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 78: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 79: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 80: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 81: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 82: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 83: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 84: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 85: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 86: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 87: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 88: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 89: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 90: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 91: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 92: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 93: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 94: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 95: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55] 2026-08-14 18:15:03.512049: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 62%, target 16% 2026-08-14 18:15:03.512187: Inverter 0 disabled charge window while waiting for schedule (now 08-14 18:15:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 18:15:03.512304: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:15:03.512568: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:15:03.512662: No export window planned 2026-08-14 18:15:03.512803: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 18:15:03.512842: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:15:03.513018: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:15:03.513202: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 18:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 18:15:03.513267: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 18:15:03.513332: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 18:15:03.513418: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:15:03.513458: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:15:03.513485: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:15:03.513534: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:15:03.513570: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:15:03.513595: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:15:03.513619: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:15:03.513682: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:15:03.513738: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:15:03.513765: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:15:03.513789: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:15:03.513817: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:15:03.513841: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:15:03.513864: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:15:03.513884: Inverter 0 count register writes 0 2026-08-14 18:15:03.529406: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 18:15:03.529587: Recompute is saving previous plan... 2026-08-14 18:15:03.532840: Best charge window [ 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0% ] 2026-08-14 18:15:03.532925: Best export window [ ] 2026-08-14 18:15:03.533850: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 18:15:03.537023: Load divergence over 8.0 hours mean 452.81W, min 279.0W, max 1164.0W, std dev 162.94W, divergence 17.99% 2026-08-14 18:15:03.555873: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 18:15:03.555995: LoadML is_calculating False 2026-08-14 18:15:03.556062: Creating pool of 12 processes to match your CPU count 2026-08-14 18:15:03.633911: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 18:15:03.635854: Optimise levels pass started at 2026-08-14 18:15:03 2026-08-14 18:15:03.635914: Optimise all windows, total charge 95 export 1 2026-08-14 18:15:04.693613: >> Region optimisation pass width 960 gives best_metric 1126.39p, best_cost 1135.38p, best_cycle 38.54kWh, best_import 25.16kWh 2026-08-14 18:15:05.068776: >> Region optimisation pass width 480 gives best_metric 1126.39p, best_cost 1135.38p, best_cycle 38.54kWh, best_import 25.16kWh 2026-08-14 18:15:05.596886: >> Region optimisation pass width 240 gives best_metric 1126.39p, best_cost 1135.38p, best_cycle 38.54kWh, best_import 25.16kWh 2026-08-14 18:15:06.830085: >> Region optimisation pass width 120 gives best_metric 1126.39p, best_cost 1135.38p, best_cycle 38.54kWh, best_import 25.16kWh 2026-08-14 18:15:06.830447: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 82 2026-08-14 18:15:06.830530: Optimise levels pass ended at 2026-08-14 18:15:06, duration 3.2 seconds tried 337 combinations 2026-08-14 18:15:06.830600: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1126.39p, best_keep 0kWh, best_cycle 38.54kWh, best_carbon 0kg, best_import 25.16kWh 2026-08-14 18:15:06.851007: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 18:15:12.377969: Tweak plan optimisation started metric 1056.37p, cost 1065.38p 2026-08-14 18:15:12.699992: Tweak optimisation finished metric 1056.37p, cost 1065.38p, metric_keep 0kWh, cycle 33.23kWh, carbon 0kg, import 20.54kWh, changed 8 window(s) 2026-08-14 18:15:12.720240: Swap charge optimisation started metric 1056.37p, cost 1065.38p, min_improvement_swap 0.1p 2026-08-14 18:15:22.035950: Swap charge optimisation finished metric 1056.37p, cost 1065.38p 2026-08-14 18:15:22.150571: Raw charge windows [ 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 13%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 13%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 13%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 13%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100% ] reserve 1.12 2026-08-14 18:15:22.151127: Unclipped charge windows [ 15-08 02:00:00 - 15-08 04:00:00 @ 24.88p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] reserve 1.12 2026-08-14 18:15:22.151376: Unfiltered charge windows [ 15-08 02:00:00 - 15-08 04:00:00 @ 24.88p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] reserve 1.12 2026-08-14 18:15:22.151609: Filtered charge windows [ 15-08 02:00:00 - 15-08 04:00:00 @ 24.88p 13%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] reserve 1.12 2026-08-14 18:15:22.186269: Previous plan best metric is 1056.64 (cost 1065.48) and new plan best metric is 1056.37 (cost 1065.38) 2026-08-14 18:15:22.186490: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 18:15:22.186766: Plan valid is now true after recompute was False 2026-08-14 18:15:22.216009: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1296.61p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:55:00, load 44.89kWh, PV 0.0kWh 2026-08-14 18:15:22.328368: Battery has 9.67 hours left - now at 9.84kWh 2026-08-14 18:15:22.366300: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1328.65p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:10:00, load 46.17kWh, PV 0.0kWh 2026-08-14 18:15:22.433306: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1195.76p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 46.17kWh, PV 0.0kWh 2026-08-14 18:15:22.502213: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1166.65p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:25:00, load 44.89kWh, PV 0.0kWh 2026-08-14 18:15:22.502296: Saving plan best values to HA entities 2026-08-14 18:15:22.637950: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 18:15:22.643139: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 18:15:22.649112: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.69kWh, house 2.92kWh, export 0.0kWh, metric 1166.65p, metric10 1195.76p 2026-08-14 18:15:22.730554: Marginal costs baseline metric (no standing charge): 1066.6872 2026-08-14 18:15:22.985814: Marginal energy costs matrix computed: min=25.38 max=38.51 2026-08-14 18:15:23.095143: Rate array import [{'start': 1095, 'end': 1140, 'rate': 'very expensive', 'range': '(50.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 26.7p)'}] export [{'start': 1095, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 18:15:23.095845: - Your estimated bill for today is £7.26 and tomorrow is £3.87 2026-08-14 18:15:23.095892: - Import rates are very expensive (50.9p - 53.4p) for the next 45 minutes and then expensive (40.1p) for the next 30 minutes. 2026-08-14 18:15:23.095915: - The battery is currently at 62% and is in eco mode for the next 8 hours. 2026-08-14 18:15:23.095933: - For the next 48 hours there will be no solar generation. 2026-08-14 18:15:23.095955: - You will run out of battery in 12 hours. 2026-08-14 18:15:23.095972: - Your next charge slot will be in 8 hours where import rates will be cheap (24.8p). 2026-08-14 18:15:23.095993: 2026-08-14 18:15:23.161780: Plan calculation took 19.63 seconds 2026-08-14 18:15:23.162206: Inverter 0: Type SK Sunsynk 2026-08-14 18:15:23.162264: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 18:15:23.162976: Reserve min: 7%, battery_min: 7% 2026-08-14 18:15:23.163085: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 18:15:23.163434: Inverter 0 SoC: 9.65kW 60%, current charge rate 5000W, current discharge rate 5250W, current battery power 2475W, current battery voltage 51.2V, grid power -57W, load power 2520W, PV Power 0W 2026-08-14 18:15:23.163725: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:15:23.163891: Inverter 0 scheduled charge enable is False 2026-08-14 18:15:23.163939: Inverter 0 charge windows currently [] 2026-08-14 18:15:23.163976: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 18:15:23.164130: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:15:23.164171: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:15:23.164210: Inverter 0 scheduled discharge enable is False 2026-08-14 18:15:23.164373: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:15:23.164434: Inverter 0 discharge windows currently [] 2026-08-14 18:15:23.164460: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:15:23.164484: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:15:23.164502: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:15:23.225663: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 60%, target 16% 2026-08-14 18:15:23.225832: Inverter 0 disabled charge window while waiting for schedule (now 08-14 18:15:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 18:15:23.225932: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:15:23.226254: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:15:23.226344: No export window planned 2026-08-14 18:15:23.226543: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 18:15:23.226606: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:15:23.226832: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:15:23.227089: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 18:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 18:15:23.227196: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 18:15:23.227276: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 18:15:23.227438: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:15:23.227474: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:15:23.227507: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:15:23.227532: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:15:23.227561: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:15:23.227585: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:15:23.227608: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:15:23.227684: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:15:23.227737: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:15:23.227771: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:15:23.227802: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:15:23.227830: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:15:23.227884: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:15:23.227926: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:15:23.227954: Inverter 0 count register writes 0 2026-08-14 18:15:23.248534: Total inverter register writes now 815 2026-08-14 18:15:23.284606: Info: Completed run status Demand 2026-08-14 18:15:23.290879: Info: record_status Demand 2026-08-14 18:15:23.296685: Saved current settings to /config/predbat_config.json 2026-08-14 18:15:23.297013: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 18:15:57.398083: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:15:57.398353: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:15:57.398397: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:15:57.398595: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:15:57.398651: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:15:57.398688: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:15:57.398706: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:18:11.630701: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:18:11.630998: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:18:11.631033: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:18:11.631214: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:18:11.631253: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:18:11.631273: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:18:11.631291: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:20:00.830362: --------------- PredBat - update at 2026-08-14 18:20:00+01:00 with clock skew 0 minutes, minutes now 1100 2026-08-14 18:20:00.831162: Saved current settings to /config/predbat_config.json 2026-08-14 18:20:00.831312: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 30.0 minutes 2026-08-14 18:20:00.831392: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 18:20:00.831489: Autoupdate: Currently up to date 2026-08-14 18:20:00.852485: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 18:20:00.852657: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 18:20:00.852921: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 18:20:00.853528: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 18:20:00.853651: Predbat mode is set to Control charge & discharge 2026-08-14 18:20:01.039857: Found 21602 load_today datapoints going back 28 days 2026-08-14 18:20:01.040005: Using load_power data to fill gaps in load_today data 2026-08-14 18:20:01.888089: Processing 721 30-minute periods for power integration 2026-08-14 18:20:02.079793: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 18:20:02.079970: Car charging hold False, threshold 6.0kWh 2026-08-14 18:20:02.080018: Current data so far today: load 18.25kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 18:20:02.097243: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 18:20:02.098074: Standing charge is set to 49.98p 2026-08-14 18:20:02.140204: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 18:20:02.140303: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 18:20:02.140513: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 465.0 minutes 2026-08-14 18:20:02.140995: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 465.0 minutes 2026-08-14 18:20:02.146796: Loaded 95 datapoints of futurerate analysis 2026-08-14 18:20:02.297827: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75'] 2026-08-14 18:20:02.343685: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 18:20:02.344184: Import rates: min 13.77p, max 53.39p, average 26.52p 2026-08-14 18:20:02.387304: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 18:20:02.387421: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 18:20:02.388763: High export rate found rates in range 99p to -99p 2026-08-14 18:20:02.493664: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 18:20:02.493812: Car 0 charging is not planned as it is not plugged in 2026-08-14 18:20:02.506079: Battery level now 9.84kWh, -1hr ago 10.84kWh, at midnight 2.43kWh, battery value change in the last hour -11.83p, change today 87.61p, rate_forward 11.83p 2026-08-14 18:20:02.506460: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 18:20:02.563087: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 18:20:02.563269: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 18:20:02.656710: Using weighted-bucket historical load forecast over 14 days 2026-08-14 18:20:02.686219: Today's load divergence 135.07%, in-day adjustment 136.5%, damping 0.95x, yesterday 146.81% today 133.32% blend 23.61% 2026-08-14 18:20:02.686312: Today's predicted so far 10.43kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 10.43kWh forecast extra. 2026-08-14 18:20:02.686366: Today's actual load so far 18.14kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 18:20:02.716679: Inverter 0: Type SK Sunsynk 2026-08-14 18:20:02.716765: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 18:20:02.717371: Reserve min: 7%, battery_min: 7% 2026-08-14 18:20:02.717452: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 18:20:02.717710: Inverter 0 SoC: 9.43kW 59%, current charge rate 5000W, current discharge rate 5250W, current battery power 2423W, current battery voltage 51.2V, grid power -53W, load power 2468W, PV Power 0W 2026-08-14 18:20:02.717907: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:20:02.717996: Inverter 0 scheduled charge enable is False 2026-08-14 18:20:02.718039: Inverter 0 charge windows currently [] 2026-08-14 18:20:02.718077: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 18:20:02.718184: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:20:02.718223: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:20:02.718259: Inverter 0 scheduled discharge enable is False 2026-08-14 18:20:02.718383: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:20:02.718420: Inverter 0 discharge windows currently [] 2026-08-14 18:20:02.718442: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:20:02.718460: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:20:02.718478: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:20:02.815153: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 18:20:02.815290: Plan was last updated on 2026-08-14 18:15:00+01:00 and is now 5.0 minutes old 2026-08-14 18:20:02.815575: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 18:20:02.815619: Best export window [ ] 2026-08-14 18:20:02.816500: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 18:20:02.819883: Load divergence over 8.0 hours mean 452.81W, min 316.2W, max 1182.6W, std dev 152.11W, divergence 16.8% 2026-08-14 18:20:02.838939: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 18:20:02.839070: LoadML is_calculating False 2026-08-14 18:20:02.839138: Creating pool of 12 processes to match your CPU count 2026-08-14 18:20:02.961740: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1306.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:15:00, load 45.2kWh, PV 0.0kWh 2026-08-14 18:20:03.095826: Battery has 8.92 hours left - now at 9.43kWh 2026-08-14 18:20:03.145366: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1338.63p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:40:00, load 46.48kWh, PV 0.0kWh 2026-08-14 18:20:03.225236: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1212.23p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 46.48kWh, PV 0.0kWh 2026-08-14 18:20:03.318129: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1184.16p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 45.2kWh, PV 0.0kWh 2026-08-14 18:20:03.318226: Saving plan best values to HA entities 2026-08-14 18:20:03.502380: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 18:20:03.508852: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 18:20:03.515768: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 18.59kWh, house 2.92kWh, export 0.0kWh, metric 1184.16p, metric10 1212.23p 2026-08-14 18:20:03.610831: Marginal costs baseline metric (no standing charge): 1084.1905 2026-08-14 18:20:03.834560: Marginal energy costs matrix computed: min=25.21 max=38.1 2026-08-14 18:20:03.918156: Rate array import [{'start': 1100, 'end': 1140, 'rate': 'very expensive', 'range': '(50.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1100, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 18:20:03.918924: - Your estimated bill for today is £7.26 and tomorrow is £3.96 2026-08-14 18:20:03.918976: - Import rates are very expensive (50.9p - 53.4p) for the next 40 minutes and then expensive (40.1p) for the next 30 minutes. 2026-08-14 18:20:03.919001: - The battery is currently at 59% and is in eco mode for the next 8 hours. 2026-08-14 18:20:03.919019: - For the next 48 hours there will be no solar generation. 2026-08-14 18:20:03.919036: - You will run out of battery in 12 hours. 2026-08-14 18:20:03.919053: - Your next charge slot will be in 8 hours where import rates will be cheap (24.8p). 2026-08-14 18:20:03.919069: 2026-08-14 18:20:03.993863: Plan calculation took 1.18 seconds 2026-08-14 18:20:03.997244: No high rate period found 2026-08-14 18:20:04.042614: Import threshold used for optimisation was 25.6p 2026-08-14 18:20:04.108851: Low import rate windows [0: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 1: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 2: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 3: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 4: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 5: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 6: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 7: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 8: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 9: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 10: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 11: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 12: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 13: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 14: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 15: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 16: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 17: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 18: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 19: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 20: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 21: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 22: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 23: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 24: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 25: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 26: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 27: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 28: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 29: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 30: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 31: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 32: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 33: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 34: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 35: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 36: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 37: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 38: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 39: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 40: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 41: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 42: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 43: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 44: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 45: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 46: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 47: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 48: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 49: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 50: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 51: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 52: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 53: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 54: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 55: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 56: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 57: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 58: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 59: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 60: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 61: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 62: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 63: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 64: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 65: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 66: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 67: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 68: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 69: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 70: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 71: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 72: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 73: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 74: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 75: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 76: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 77: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 78: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 79: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 80: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 81: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 82: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 83: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 84: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 85: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 86: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 87: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 88: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 89: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 90: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 91: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 92: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 93: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 94: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 95: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55] 2026-08-14 18:20:04.117211: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 59%, target 16% 2026-08-14 18:20:04.117371: Inverter 0 disabled charge window while waiting for schedule (now 08-14 18:20:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 18:20:04.117487: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:20:04.117775: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:20:04.117918: No export window planned 2026-08-14 18:20:04.118045: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 18:20:04.118084: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:20:04.118261: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:20:04.118441: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 18:20:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 18:20:04.118506: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 18:20:04.118569: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 18:20:04.118655: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:20:04.118697: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:20:04.118725: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:20:04.118749: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:20:04.118781: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:20:04.118822: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:20:04.118851: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:20:04.118920: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:20:04.118950: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:20:04.118980: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:20:04.119005: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:20:04.119028: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:20:04.119054: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:20:04.119077: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:20:04.119119: Inverter 0 count register writes 0 2026-08-14 18:20:04.137289: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 18:20:04.142899: Total inverter register writes now 815 2026-08-14 18:20:04.179013: Info: Completed run status Demand 2026-08-14 18:20:04.186491: Info: record_status Demand 2026-08-14 18:20:04.193428: Saved current settings to /config/predbat_config.json 2026-08-14 18:20:04.193823: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 18:20:42.295953: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:20:42.296267: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:20:42.296318: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:20:42.296474: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:20:42.296519: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:20:42.296542: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:20:42.296559: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:22:56.551682: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:22:56.551917: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:22:56.552003: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:22:56.552184: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:22:56.552229: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:22:56.552248: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:22:56.552262: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:24:56.772998: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:24:56.773304: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:24:56.773392: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:24:56.773613: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:24:56.773694: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:24:56.773735: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:24:56.773753: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:25:00.863328: --------------- PredBat - update at 2026-08-14 18:25:00+01:00 with clock skew 0 minutes, minutes now 1105 2026-08-14 18:25:00.864237: Saved current settings to /config/predbat_config.json 2026-08-14 18:25:00.864416: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 35.0 minutes 2026-08-14 18:25:00.864539: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 18:25:00.864657: Autoupdate: Currently up to date 2026-08-14 18:25:00.891250: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 18:25:00.891423: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 18:25:00.891700: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 18:25:00.892495: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 18:25:00.892668: Predbat mode is set to Control charge & discharge 2026-08-14 18:25:01.093831: Found 21602 load_today datapoints going back 28 days 2026-08-14 18:25:01.093996: Using load_power data to fill gaps in load_today data 2026-08-14 18:25:01.934393: Processing 721 30-minute periods for power integration 2026-08-14 18:25:02.102676: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 18:25:02.102835: Car charging hold False, threshold 6.0kWh 2026-08-14 18:25:02.103068: Current data so far today: load 18.4kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 18:25:02.124150: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 18:25:02.124653: Standing charge is set to 49.98p 2026-08-14 18:25:02.176097: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 18:25:02.176200: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 18:25:02.176372: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 470.0 minutes 2026-08-14 18:25:02.176845: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 470.0 minutes 2026-08-14 18:25:02.185659: Loaded 95 datapoints of futurerate analysis 2026-08-14 18:25:02.326179: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75'] 2026-08-14 18:25:02.367571: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 18:25:02.368000: Import rates: min 13.77p, max 53.39p, average 26.5p 2026-08-14 18:25:02.410835: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 18:25:02.412854: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 18:25:02.414350: High export rate found rates in range 99p to -99p 2026-08-14 18:25:02.528092: Low Import rate found rates in range 13.77p to 50.94p 2026-08-14 18:25:02.528257: Car 0 charging is not planned as it is not plugged in 2026-08-14 18:25:02.548615: Battery level now 9.43kWh, -1hr ago 10.7kWh, at midnight 2.43kWh, battery value change in the last hour -15.04p, change today 82.78p, rate_forward 11.83p 2026-08-14 18:25:02.549273: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 18:25:02.666767: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 18:25:02.666946: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 18:25:02.789545: Using weighted-bucket historical load forecast over 14 days 2026-08-14 18:25:02.826033: Today's load divergence 135.36%, in-day adjustment 136.67%, damping 0.95x, yesterday 146.81% today 133.59% blend 23.26% 2026-08-14 18:25:02.826177: Today's predicted so far 10.45kWh with 0.0kWh car/iBoost excluded, 17.38kWh import ignored, and 10.45kWh forecast extra. 2026-08-14 18:25:02.826214: Today's actual load so far 18.26kWh with 0.0kWh car/iBoost excluded, and 17.38kWh import ignored. 2026-08-14 18:25:02.862462: Inverter 0: Type SK Sunsynk 2026-08-14 18:25:02.862554: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 18:25:02.863115: Reserve min: 7%, battery_min: 7% 2026-08-14 18:25:02.863221: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 18:25:02.863507: Inverter 0 SoC: 9.43kW 59%, current charge rate 5000W, current discharge rate 5250W, current battery power 1951W, current battery voltage 51.2V, grid power -54W, load power 2004W, PV Power 0W 2026-08-14 18:25:02.863701: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:25:02.863833: Inverter 0 scheduled charge enable is False 2026-08-14 18:25:02.863894: Inverter 0 charge windows currently [] 2026-08-14 18:25:02.863938: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 18:25:02.864080: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:25:02.864118: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:25:02.864152: Inverter 0 scheduled discharge enable is False 2026-08-14 18:25:02.864291: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:25:02.864332: Inverter 0 discharge windows currently [] 2026-08-14 18:25:02.864367: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:25:02.864400: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:25:02.864428: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:25:02.923772: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 18:25:02.923915: Plan was last updated on 2026-08-14 18:15:00+01:00 and is now 10.0 minutes old 2026-08-14 18:25:02.924207: Best charge window [ 15-08 02:30:00 - 15-08 04:00:00 @ 24.77p 16%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 16:30:00 @ 24.22p 100% ] 2026-08-14 18:25:02.924252: Best export window [ ] 2026-08-14 18:25:02.925158: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 18:25:02.929124: Load divergence over 8.0 hours mean 452.78W, min 287.4W, max 1057.8W, std dev 142.65W, divergence 15.75% 2026-08-14 18:25:02.950400: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 18:25:02.950533: LoadML is_calculating False 2026-08-14 18:25:02.950604: Creating pool of 12 processes to match your CPU count 2026-08-14 18:25:03.073983: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1307.23p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:20:00, load 45.41kWh, PV 0.0kWh 2026-08-14 18:25:03.216025: Battery has 8.92 hours left - now at 9.43kWh 2026-08-14 18:25:03.265312: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1339.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:40:00, load 46.69kWh, PV 0.0kWh 2026-08-14 18:25:03.360919: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1218.21p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:20:00, load 46.69kWh, PV 0.0kWh 2026-08-14 18:25:03.454176: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1191.19p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 06:30:00, load 45.41kWh, PV 0.0kWh 2026-08-14 18:25:03.454266: Saving plan best values to HA entities 2026-08-14 18:25:03.635519: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 18:25:03.641484: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 18:25:03.647399: Best charging limit SoC's [2.5, 3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 19.07kWh, house 2.91kWh, export 0.0kWh, metric 1191.19p, metric10 1218.21p 2026-08-14 18:25:03.739532: Marginal costs baseline metric (no standing charge): 1091.2232 2026-08-14 18:25:03.998545: Marginal energy costs matrix computed: min=25.1 max=37.68 2026-08-14 18:25:04.092528: Rate array import [{'start': 1105, 'end': 1140, 'rate': 'very expensive', 'range': '(50.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1105, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 18:25:04.093388: - Your estimated bill for today is £7.26 and tomorrow is £3.96 2026-08-14 18:25:04.093444: - Import rates are very expensive (50.9p - 53.4p) for the next 35 minutes and then expensive (40.1p) for the next 30 minutes. 2026-08-14 18:25:04.093468: - The battery is currently at 59% and is in eco mode for the next 8 hours. 2026-08-14 18:25:04.093486: - For the next 48 hours there will be no solar generation. 2026-08-14 18:25:04.093506: - You will run out of battery in 12 hours. 2026-08-14 18:25:04.093539: - Your next charge slot will be in 8 hours where import rates will be cheap (24.8p). 2026-08-14 18:25:04.093581: 2026-08-14 18:25:04.156009: Plan calculation took 1.23 seconds 2026-08-14 18:25:04.159820: No high rate period found 2026-08-14 18:25:04.203346: Import threshold used for optimisation was 25.6p 2026-08-14 18:25:04.257942: Low import rate windows [0: 08-14 18:00:00 - 08-14 18:30:00 @ 50.94, 1: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 2: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 3: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 4: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 5: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 6: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 7: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 8: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 9: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 10: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 11: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 12: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 13: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 14: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 15: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 16: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 17: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 18: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 19: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 20: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 21: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 22: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 23: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 24: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 25: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 26: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 27: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 28: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 29: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 30: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 31: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 32: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 33: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 34: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 35: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 36: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 37: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 38: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 39: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 40: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 41: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 42: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 43: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 44: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 45: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 46: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 47: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 48: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 49: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 50: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 51: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 52: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 53: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 54: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 55: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 56: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 57: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 58: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 59: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 60: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 61: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 62: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 63: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 64: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 65: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 66: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 67: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 68: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 69: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 70: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 71: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 72: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 73: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 74: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 75: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 76: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 77: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 78: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 79: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 80: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 81: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 82: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 83: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 84: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 85: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 86: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 87: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 88: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 89: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 90: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 91: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 92: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 93: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 94: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 95: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55] 2026-08-14 18:25:04.265020: Inverter 0 Charge window will be: 2026-08-15 02:30:00+01:00 - 2026-08-15 04:00:00+01:00 - current SoC 59%, target 16% 2026-08-14 18:25:04.265167: Inverter 0 disabled charge window while waiting for schedule (now 08-14 18:25:00 target set_window_minutes 30 charge start time 08-15 02:30:00) original inverter start time 08-16 00:00:00 2026-08-14 18:25:04.265279: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:25:04.265531: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:25:04.265620: No export window planned 2026-08-14 18:25:04.265729: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 18:25:04.265765: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:25:04.265920: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:25:04.266100: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 18:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 18:25:04.266162: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 18:25:04.266222: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 18:25:04.266314: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:25:04.266348: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:25:04.266376: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:25:04.266401: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:25:04.266453: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:25:04.266483: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:25:04.266517: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:25:04.266581: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:25:04.266617: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:25:04.266642: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:25:04.266669: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:25:04.266692: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:25:04.266717: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:25:04.266740: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:25:04.266759: Inverter 0 count register writes 0 2026-08-14 18:25:04.285413: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 18:25:04.285675: Recompute is saving previous plan... 2026-08-14 18:25:04.289094: Best charge window [ 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0% ] 2026-08-14 18:25:04.289334: Best export window [ ] 2026-08-14 18:25:04.290265: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 18:25:04.293514: Load divergence over 8.0 hours mean 452.78W, min 287.4W, max 1057.8W, std dev 142.65W, divergence 15.75% 2026-08-14 18:25:04.314108: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 18:25:04.314957: LoadML is_calculating False 2026-08-14 18:25:04.315101: Creating pool of 12 processes to match your CPU count 2026-08-14 18:25:04.397194: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 18:25:04.399181: Optimise levels pass started at 2026-08-14 18:25:04 2026-08-14 18:25:04.399230: Optimise all windows, total charge 95 export 1 2026-08-14 18:25:05.519636: >> Region optimisation pass width 960 gives best_metric 1135.63p, best_cost 1142.98p, best_cycle 38.28kWh, best_import 25.46kWh 2026-08-14 18:25:05.889047: >> Region optimisation pass width 480 gives best_metric 1135.63p, best_cost 1142.98p, best_cycle 38.28kWh, best_import 25.46kWh 2026-08-14 18:25:06.400258: >> Region optimisation pass width 240 gives best_metric 1135.63p, best_cost 1142.98p, best_cycle 38.28kWh, best_import 25.46kWh 2026-08-14 18:25:07.606048: >> Region optimisation pass width 120 gives best_metric 1135.63p, best_cost 1142.98p, best_cycle 38.28kWh, best_import 25.46kWh 2026-08-14 18:25:07.606355: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 82 2026-08-14 18:25:07.606438: Optimise levels pass ended at 2026-08-14 18:25:07, duration 3.2 seconds tried 337 combinations 2026-08-14 18:25:07.606506: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1135.63p, best_keep 0kWh, best_cycle 38.28kWh, best_carbon 0kg, best_import 25.46kWh 2026-08-14 18:25:07.625782: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 18:25:12.638996: Tweak plan optimisation started metric 1065.64p, cost 1074.71p 2026-08-14 18:25:12.927971: Tweak optimisation finished metric 1065.64p, cost 1074.71p, metric_keep 0kWh, cycle 32.83kWh, carbon 0kg, import 20.85kWh, changed 8 window(s) 2026-08-14 18:25:12.944810: Swap charge optimisation started metric 1065.64p, cost 1074.71p, min_improvement_swap 0.1p 2026-08-14 18:25:18.931904: Swap charge optimisation finished metric 1065.64p, cost 1074.71p 2026-08-14 18:25:19.016245: Raw charge windows [ 14-08 18:00:00 - 14-08 18:30:00 @ 50.94p 0%, 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100% ] reserve 1.12 2026-08-14 18:25:19.016703: Unclipped charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] reserve 1.12 2026-08-14 18:25:19.016927: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] reserve 1.12 2026-08-14 18:25:19.017147: Filtered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] reserve 1.12 2026-08-14 18:25:19.047088: Previous plan best metric is 1065.76 (cost 1074.62) and new plan best metric is 1065.64 (cost 1074.71) 2026-08-14 18:25:19.047280: New plan is a cost-neutral improvement but less fragmented (2 vs 3 segments), using new plan 2026-08-14 18:25:19.047309: Plan valid is now true after recompute was False 2026-08-14 18:25:19.070481: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1304.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:20:00, load 45.22kWh, PV 0.0kWh 2026-08-14 18:25:19.172772: Battery has 8.92 hours left - now at 9.43kWh 2026-08-14 18:25:19.211621: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1336.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:40:00, load 46.5kWh, PV 0.0kWh 2026-08-14 18:25:19.274249: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1202.5p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:40:00, load 46.5kWh, PV 0.0kWh 2026-08-14 18:25:19.339948: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1174.67p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:20:00, load 45.22kWh, PV 0.0kWh 2026-08-14 18:25:19.340036: Saving plan best values to HA entities 2026-08-14 18:25:19.478905: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 18:25:19.483642: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 18:25:19.488216: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.33kWh, house 4.52kWh, export 0.0kWh, metric 1174.67p, metric10 1202.5p 2026-08-14 18:25:19.559593: Marginal costs baseline metric (no standing charge): 1074.7073 2026-08-14 18:25:19.782894: Marginal energy costs matrix computed: min=24.93 max=37.42 2026-08-14 18:25:19.875397: Rate array import [{'start': 1105, 'end': 1140, 'rate': 'very expensive', 'range': '(50.9p - 53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 26.7p)'}] export [{'start': 1105, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 18:25:19.876204: - Your estimated bill for today is £7.26 and tomorrow is £3.95 2026-08-14 18:25:19.876261: - Import rates are very expensive (50.9p - 53.4p) for the next 35 minutes and then expensive (40.1p) for the next 30 minutes. 2026-08-14 18:25:19.876285: - The battery is currently at 59% and is in eco mode for the next 17 hours. 2026-08-14 18:25:19.876303: - For the next 48 hours there will be no solar generation. 2026-08-14 18:25:19.876321: - You will run out of battery in 8 hours. 2026-08-14 18:25:19.876337: - Your next charge slot will be in 17 hours where import rates will be cheap (15.5p). 2026-08-14 18:25:19.876358: 2026-08-14 18:25:19.934700: Plan calculation took 15.65 seconds 2026-08-14 18:25:19.935169: Inverter 0: Type SK Sunsynk 2026-08-14 18:25:19.935220: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 18:25:19.935868: Reserve min: 7%, battery_min: 7% 2026-08-14 18:25:19.935979: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 18:25:19.936288: Inverter 0 SoC: 9.24kW 58%, current charge rate 5000W, current discharge rate 5250W, current battery power 1969W, current battery voltage 51.2V, grid power -54W, load power 2019W, PV Power 0W 2026-08-14 18:25:19.936527: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:25:19.936634: Inverter 0 scheduled charge enable is False 2026-08-14 18:25:19.936675: Inverter 0 charge windows currently [] 2026-08-14 18:25:19.936705: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 18:25:19.936821: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:25:19.936898: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:25:19.936940: Inverter 0 scheduled discharge enable is False 2026-08-14 18:25:19.937138: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:25:19.937178: Inverter 0 discharge windows currently [] 2026-08-14 18:25:19.937201: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:25:19.937219: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:25:19.937238: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:25:19.991965: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 58%, target 19% 2026-08-14 18:25:19.992118: Inverter 0 disabled charge window while waiting for schedule (now 08-14 18:25:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 18:25:19.992188: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:25:19.992380: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:25:19.992491: No export window planned 2026-08-14 18:25:19.992600: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 18:25:19.992636: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:25:19.992784: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:25:19.993024: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 18:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 18:25:19.993112: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 18:25:19.993167: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 18:25:19.993261: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:25:19.993301: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:25:19.993329: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:25:19.993353: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:25:19.993377: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:25:19.993406: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:25:19.993431: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:25:19.993487: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:25:19.993520: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:25:19.993545: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:25:19.993569: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:25:19.993592: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:25:19.993621: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:25:19.993645: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:25:19.993686: Inverter 0 count register writes 0 2026-08-14 18:25:20.015807: Total inverter register writes now 815 2026-08-14 18:25:20.049178: Info: Completed run status Demand 2026-08-14 18:25:20.056814: Info: record_status Demand 2026-08-14 18:25:20.063317: Saved current settings to /config/predbat_config.json 2026-08-14 18:25:20.063623: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 18:25:57.170569: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:25:57.170806: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:25:57.170848: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:25:57.171071: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:25:57.171131: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:25:57.171151: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:25:57.171169: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:27:57.389341: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:27:57.389585: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:27:57.389620: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:27:57.389773: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:27:57.389820: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:27:57.389842: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:27:57.389859: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:29:25.442365: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 18:29:26.449504: Processing 1345 30-minute periods for power integration 2026-08-14 18:29:26.535205: ML Component: Car charging hold False, car energy reported load False 2026-08-14 18:29:26.634226: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 18:29:26.740605: ML Temperature data points: 49296 2026-08-14 18:29:27.015580: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 18:29:27.050172: ML Component: Data fetch completed, load data age 56.0 days, 16198 data points 2026-08-14 18:29:27.050294: ML Component: No training needed, model age is 1.13 hours 2026-08-14 18:29:27.050350: ML Component: Generating predictions load data age 56.0 days, 16198 data points 2026-08-14 18:29:27.160822: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.1668 max_dow {0: 0.10282812496256083, 1: 0.11130937486607581, 2: 0.11949062483031303, 3: 0.1146749994263053, 4: 0.1683562503574416, 5: 0.10359687502831222, 6: 0.10919687573947012} 2026-08-14 18:29:27.547817: ML Component: Generated 576 predictions (total 40.76 kWh over 48h) 2026-08-14 18:29:27.589828: ML Component: Prediction cycle completed 2026-08-14 18:29:27.730899: ML Component: Saved 16198 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 18:30:00.615246: --------------- PredBat - update at 2026-08-14 18:30:00+01:00 with clock skew 0 minutes, minutes now 1110 2026-08-14 18:30:00.616101: Saved current settings to /config/predbat_config.json 2026-08-14 18:30:00.616279: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 40.0 minutes 2026-08-14 18:30:00.616373: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 18:30:00.616476: Autoupdate: Currently up to date 2026-08-14 18:30:00.636451: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 18:30:00.636585: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 18:30:00.636774: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 18:30:00.637403: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 18:30:00.637543: Predbat mode is set to Control charge & discharge 2026-08-14 18:30:00.849675: Found 21602 load_today datapoints going back 28 days 2026-08-14 18:30:00.849828: Using load_power data to fill gaps in load_today data 2026-08-14 18:30:01.530154: Processing 721 30-minute periods for power integration 2026-08-14 18:30:01.685146: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 18:30:01.685285: Car charging hold False, threshold 6.0kWh 2026-08-14 18:30:01.685326: Current data so far today: load 18.7kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 18:30:01.699159: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 18:30:01.699542: Standing charge is set to 49.98p 2026-08-14 18:30:01.749621: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 18:30:01.749718: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 18:30:01.749892: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 475.0 minutes 2026-08-14 18:30:01.750225: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 475.0 minutes 2026-08-14 18:30:01.754978: Loaded 95 datapoints of futurerate analysis 2026-08-14 18:30:01.887229: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75'] 2026-08-14 18:30:01.928542: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 18:30:01.929035: Import rates: min 13.77p, max 53.39p, average 26.49p 2026-08-14 18:30:01.976326: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 18:30:01.976449: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 18:30:01.977799: High export rate found rates in range 99p to -99p 2026-08-14 18:30:02.067393: Low Import rate found rates in range 13.77p to 43.82p 2026-08-14 18:30:02.067553: Car 0 charging is not planned as it is not plugged in 2026-08-14 18:30:02.085102: Battery level now 9.43kWh, -1hr ago 10.56kWh, at midnight 2.43kWh, battery value change in the last hour -13.34p, change today 82.78p, rate_forward 11.83p 2026-08-14 18:30:02.085414: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.45kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 18:30:02.145545: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 18:30:02.145735: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 18:30:02.223766: Using weighted-bucket historical load forecast over 14 days 2026-08-14 18:30:02.247139: Today's load divergence 136.29%, in-day adjustment 137.31%, damping 0.95x, yesterday 146.81% today 134.48% blend 22.92% 2026-08-14 18:30:02.247229: Today's predicted so far 10.55kWh with 0.0kWh car/iBoost excluded, 17.37kWh import ignored, and 10.55kWh forecast extra. 2026-08-14 18:30:02.247256: Today's actual load so far 18.68kWh with 0.0kWh car/iBoost excluded, and 17.37kWh import ignored. 2026-08-14 18:30:02.278988: Inverter 0: Type SK Sunsynk 2026-08-14 18:30:02.279077: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 18:30:02.279548: Reserve min: 7%, battery_min: 7% 2026-08-14 18:30:02.279639: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 18:30:02.279897: Inverter 0 SoC: 9.24kW 58%, current charge rate 5000W, current discharge rate 5250W, current battery power 1633W, current battery voltage 51.2V, grid power -52W, load power 1665W, PV Power 0W 2026-08-14 18:30:02.280055: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:30:02.280132: Inverter 0 scheduled charge enable is False 2026-08-14 18:30:02.280161: Inverter 0 charge windows currently [] 2026-08-14 18:30:02.280200: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 18:30:02.280310: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:30:02.280340: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:30:02.280370: Inverter 0 scheduled discharge enable is False 2026-08-14 18:30:02.280478: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:30:02.280508: Inverter 0 discharge windows currently [] 2026-08-14 18:30:02.280527: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:30:02.280542: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:30:02.280559: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:30:02.339062: Dynamic load last period 2.40kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 18:30:02.339165: Plan was last updated on 2026-08-14 18:25:00+01:00 and is now 5.0 minutes old 2026-08-14 18:30:02.339366: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 18:30:02.339406: Best export window [ ] 2026-08-14 18:30:02.340167: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 18:30:02.342720: Load divergence over 8.0 hours mean 452.82W, min 279.0W, max 1138.2W, std dev 145.47W, divergence 16.06% 2026-08-14 18:30:02.358690: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 18:30:02.358839: LoadML is_calculating False 2026-08-14 18:30:02.358900: Creating pool of 12 processes to match your CPU count 2026-08-14 18:30:02.470869: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1308.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:10:00, load 45.54kWh, PV 0.0kWh 2026-08-14 18:30:02.594991: Battery has 8.67 hours left - now at 9.24kWh 2026-08-14 18:30:02.632072: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1340.37p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:35:00, load 46.81kWh, PV 0.0kWh 2026-08-14 18:30:02.729751: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1211.81p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:35:00, load 46.81kWh, PV 0.0kWh 2026-08-14 18:30:02.816477: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1185.18p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:10:00, load 45.54kWh, PV 0.0kWh 2026-08-14 18:30:02.816569: Saving plan best values to HA entities 2026-08-14 18:30:02.991795: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 18:30:02.997046: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 18:30:03.002128: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.83kWh, house 4.63kWh, export 0.0kWh, metric 1185.18p, metric10 1211.81p 2026-08-14 18:30:03.080478: Marginal costs baseline metric (no standing charge): 1085.2094 2026-08-14 18:30:03.350359: Marginal energy costs matrix computed: min=24.94 max=37.07 2026-08-14 18:30:03.433601: Rate array import [{'start': 1110, 'end': 1140, 'rate': 'very expensive', 'range': '(53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1110, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 18:30:03.434523: - Your estimated bill for today is £7.26 and tomorrow is £3.98 2026-08-14 18:30:03.434578: - Import rates are very expensive (53.4p) for the next 30 minutes and then expensive (40.1p) for the next 30 minutes. 2026-08-14 18:30:03.434601: - The battery is currently at 58% and is in eco mode for the next 17 hours. 2026-08-14 18:30:03.434629: - For the next 48 hours there will be no solar generation. 2026-08-14 18:30:03.434671: - You will run out of battery in 8 hours. 2026-08-14 18:30:03.434709: - Your next charge slot will be in 17 hours where import rates will be cheap (15.5p). 2026-08-14 18:30:03.434743: 2026-08-14 18:30:03.510988: Plan calculation took 1.17 seconds 2026-08-14 18:30:03.515907: No high rate period found 2026-08-14 18:30:03.583378: Import threshold used for optimisation was 17.0p 2026-08-14 18:30:03.653359: Low import rate windows [0: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 1: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 2: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 3: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 4: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 5: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 6: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 7: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 8: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 9: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 10: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 11: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 12: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 13: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 14: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 15: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 16: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 17: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 18: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 19: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 20: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 21: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 22: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 23: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 24: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 25: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 26: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 27: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 28: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 29: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 30: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 31: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 32: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 33: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 34: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 35: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 36: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 37: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 38: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 39: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 40: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 41: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 42: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 43: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 44: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 45: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 46: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 47: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 48: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 49: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 50: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 51: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 52: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 53: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 54: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 55: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 56: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 57: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 58: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 59: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 60: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 61: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 62: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 63: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 64: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 65: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 66: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 67: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 68: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 69: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 70: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 71: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 72: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 73: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 74: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 75: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 76: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 77: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 78: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 79: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 80: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 81: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 82: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 83: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 84: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 85: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 86: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 87: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 88: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 89: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 90: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 91: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 92: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 93: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 94: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55] 2026-08-14 18:30:03.661028: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 58%, target 19% 2026-08-14 18:30:03.661172: Inverter 0 disabled charge window while waiting for schedule (now 08-14 18:30:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 18:30:03.661282: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:30:03.661541: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:30:03.661634: No export window planned 2026-08-14 18:30:03.661746: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 18:30:03.661780: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:30:03.661913: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:30:03.662237: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 18:30:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 18:30:03.662309: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 18:30:03.662385: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 18:30:03.662476: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:30:03.662518: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:30:03.662546: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:30:03.662577: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:30:03.662602: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:30:03.662626: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:30:03.662656: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:30:03.662723: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:30:03.662752: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:30:03.662776: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:30:03.662805: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:30:03.662829: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:30:03.662860: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:30:03.662884: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:30:03.662909: Inverter 0 count register writes 0 2026-08-14 18:30:03.678492: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 18:30:03.684239: Total inverter register writes now 815 2026-08-14 18:30:03.718591: Info: Completed run status Demand 2026-08-14 18:30:03.724760: Info: record_status Demand 2026-08-14 18:30:03.730497: Saved current settings to /config/predbat_config.json 2026-08-14 18:30:03.730808: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 18:30:41.835942: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:30:41.836287: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:30:41.836369: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:30:41.836585: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:30:41.836650: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:30:41.836677: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:30:41.836699: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:32:42.095834: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:32:42.096133: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:32:42.096186: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:32:42.096369: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:32:42.096411: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:32:42.096435: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:32:42.096455: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:34:42.334536: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:34:42.334853: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:34:42.334923: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:34:42.335168: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:34:42.335215: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:34:42.335237: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:34:42.335255: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:35:00.436199: --------------- PredBat - update at 2026-08-14 18:35:00+01:00 with clock skew 0 minutes, minutes now 1115 2026-08-14 18:35:00.437112: Saved current settings to /config/predbat_config.json 2026-08-14 18:35:00.437239: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 45.0 minutes 2026-08-14 18:35:00.437367: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 18:35:00.437457: Autoupdate: Currently up to date 2026-08-14 18:35:00.460553: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 18:35:00.460663: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 18:35:00.460805: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 18:35:00.461281: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 18:35:00.461386: Predbat mode is set to Control charge & discharge 2026-08-14 18:35:00.614904: Found 21602 load_today datapoints going back 28 days 2026-08-14 18:35:00.615043: Using load_power data to fill gaps in load_today data 2026-08-14 18:35:01.271978: Processing 721 30-minute periods for power integration 2026-08-14 18:35:01.425071: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 18:35:01.425195: Car charging hold False, threshold 6.0kWh 2026-08-14 18:35:01.425234: Current data so far today: load 18.9kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 18:35:01.438729: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 18:35:01.439119: Standing charge is set to 49.98p 2026-08-14 18:35:01.480803: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 18:35:01.480897: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 18:35:01.481190: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 480.0 minutes 2026-08-14 18:35:01.481561: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 480.0 minutes 2026-08-14 18:35:01.486383: Loaded 95 datapoints of futurerate analysis 2026-08-14 18:35:01.611617: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75'] 2026-08-14 18:35:01.647690: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 18:35:01.648105: Import rates: min 13.77p, max 53.39p, average 26.47p 2026-08-14 18:35:01.683230: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 18:35:01.683358: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 18:35:01.684558: High export rate found rates in range 99p to -99p 2026-08-14 18:35:01.768185: Low Import rate found rates in range 13.77p to 43.82p 2026-08-14 18:35:01.768308: Car 0 charging is not planned as it is not plugged in 2026-08-14 18:35:01.780743: Battery level now 9.24kWh, -1hr ago 10.42kWh, at midnight 2.43kWh, battery value change in the last hour -13.91p, change today 80.51p, rate_forward 11.83p 2026-08-14 18:35:01.781180: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.5kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 18:35:01.841097: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 18:35:01.841259: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 18:35:01.918330: Using weighted-bucket historical load forecast over 14 days 2026-08-14 18:35:01.943712: Today's load divergence 136.83%, in-day adjustment 137.66%, damping 0.95x, yesterday 146.81% today 134.99% blend 22.57% 2026-08-14 18:35:01.944149: Today's predicted so far 10.66kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 10.66kWh forecast extra. 2026-08-14 18:35:01.944256: Today's actual load so far 18.97kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 18:35:01.980628: Inverter 0: Type SK Sunsynk 2026-08-14 18:35:01.980732: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 18:35:01.981339: Reserve min: 7%, battery_min: 7% 2026-08-14 18:35:01.981426: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 18:35:01.981675: Inverter 0 SoC: 8.94kW 56%, current charge rate 5000W, current discharge rate 5250W, current battery power 2103W, current battery voltage 51.2V, grid power -54W, load power 2152W, PV Power 0W 2026-08-14 18:35:01.981820: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:35:01.981899: Inverter 0 scheduled charge enable is False 2026-08-14 18:35:01.981928: Inverter 0 charge windows currently [] 2026-08-14 18:35:01.981950: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 18:35:01.982081: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:35:01.982113: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:35:01.982153: Inverter 0 scheduled discharge enable is False 2026-08-14 18:35:01.982268: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:35:01.982300: Inverter 0 discharge windows currently [] 2026-08-14 18:35:01.982319: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:35:01.982334: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:35:01.982348: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:35:02.054016: Dynamic load last period 2.40kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 18:35:02.054164: Plan was last updated on 2026-08-14 18:25:00+01:00 and is now 10.0 minutes old 2026-08-14 18:35:02.054399: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 18:35:02.054440: Best export window [ ] 2026-08-14 18:35:02.055087: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 18:35:02.057650: Load divergence over 8.0 hours mean 452.9W, min 267.0W, max 1243.8W, std dev 166.66W, divergence 18.4% 2026-08-14 18:35:02.073108: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 18:35:02.073316: LoadML is_calculating False 2026-08-14 18:35:02.073441: Creating pool of 12 processes to match your CPU count 2026-08-14 18:35:02.175709: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1313.88p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 45.71kWh, PV 0.0kWh 2026-08-14 18:35:02.294771: Battery has 8.25 hours left - now at 8.94kWh 2026-08-14 18:35:02.342689: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1345.78p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:25:00, load 46.99kWh, PV 0.0kWh 2026-08-14 18:35:02.425687: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1222.7p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:25:00, load 46.99kWh, PV 0.0kWh 2026-08-14 18:35:02.507129: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1197.13p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 45.71kWh, PV 0.0kWh 2026-08-14 18:35:02.507236: Saving plan best values to HA entities 2026-08-14 18:35:02.672470: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 18:35:02.677627: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 18:35:02.682264: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.33kWh, house 4.8kWh, export 0.0kWh, metric 1197.13p, metric10 1222.7p 2026-08-14 18:35:02.756418: Marginal costs baseline metric (no standing charge): 1097.1648 2026-08-14 18:35:02.978790: Marginal energy costs matrix computed: min=24.92 max=36.65 2026-08-14 18:35:03.055172: Rate array import [{'start': 1115, 'end': 1140, 'rate': 'very expensive', 'range': '(53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1115, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 18:35:03.055972: - Your estimated bill for today is £7.26 and tomorrow is £4.02 2026-08-14 18:35:03.056020: - Import rates are very expensive (53.4p) for the next 25 minutes and then expensive (40.1p) for the next 30 minutes. 2026-08-14 18:35:03.056044: - The battery is currently at 56% and is in eco mode for the next 16 hours. 2026-08-14 18:35:03.056063: - For the next 48 hours there will be no solar generation. 2026-08-14 18:35:03.056081: - You will run out of battery in 8 hours. 2026-08-14 18:35:03.056097: - Your next charge slot will be in 16 hours where import rates will be cheap (15.5p). 2026-08-14 18:35:03.056114: 2026-08-14 18:35:03.127309: Plan calculation took 1.07 seconds 2026-08-14 18:35:03.131180: No high rate period found 2026-08-14 18:35:03.196982: Import threshold used for optimisation was 17.0p 2026-08-14 18:35:03.273861: Low import rate windows [0: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 1: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 2: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 3: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 4: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 5: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 6: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 7: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 8: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 9: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 10: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 11: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 12: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 13: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 14: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 15: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 16: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 17: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 18: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 19: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 20: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 21: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 22: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 23: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 24: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 25: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 26: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 27: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 28: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 29: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 30: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 31: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 32: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 33: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 34: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 35: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 36: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 37: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 38: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 39: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 40: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 41: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 42: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 43: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 44: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 45: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 46: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 47: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 48: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 49: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 50: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 51: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 52: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 53: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 54: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 55: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 56: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 57: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 58: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 59: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 60: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 61: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 62: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 63: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 64: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 65: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 66: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 67: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 68: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 69: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 70: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 71: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 72: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 73: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 74: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 75: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 76: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 77: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 78: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 79: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 80: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 81: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 82: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 83: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 84: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 85: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 86: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 87: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 88: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 89: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 90: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 91: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 92: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 93: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 94: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 95: 08-16 18:30:00 - 08-16 19:00:00 @ 43.82] 2026-08-14 18:35:03.286085: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 56%, target 19% 2026-08-14 18:35:03.286243: Inverter 0 disabled charge window while waiting for schedule (now 08-14 18:35:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 18:35:03.286363: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:35:03.286632: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:35:03.286730: No export window planned 2026-08-14 18:35:03.286843: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 18:35:03.286878: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:35:03.287155: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:35:03.287410: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 18:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 18:35:03.287483: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 18:35:03.287553: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 18:35:03.287671: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:35:03.287743: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:35:03.287778: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:35:03.287806: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:35:03.287832: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:35:03.287856: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:35:03.287881: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:35:03.287949: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:35:03.288006: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:35:03.288033: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:35:03.288058: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:35:03.288081: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:35:03.288112: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:35:03.288137: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:35:03.288158: Inverter 0 count register writes 0 2026-08-14 18:35:03.310925: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 18:35:03.311132: Recompute is saving previous plan... 2026-08-14 18:35:03.314314: Best charge window [ 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 18:30:00 - 16-08 19:00:00 @ 43.82p 0% ] 2026-08-14 18:35:03.314397: Best export window [ ] 2026-08-14 18:35:03.315221: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 18:35:03.318341: Load divergence over 8.0 hours mean 452.9W, min 267.0W, max 1243.8W, std dev 166.66W, divergence 18.4% 2026-08-14 18:35:03.335881: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 18:35:03.336007: LoadML is_calculating False 2026-08-14 18:35:03.336072: Creating pool of 12 processes to match your CPU count 2026-08-14 18:35:03.432618: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 18:35:03.434200: Optimise levels pass started at 2026-08-14 18:35:03 2026-08-14 18:35:03.434274: Optimise all windows, total charge 95 export 1 2026-08-14 18:35:04.485506: >> Region optimisation pass width 960 gives best_metric 1144.87p, best_cost 1153.35p, best_cycle 38.18kWh, best_import 25.99kWh 2026-08-14 18:35:04.888277: >> Region optimisation pass width 480 gives best_metric 1144.87p, best_cost 1153.35p, best_cycle 38.18kWh, best_import 25.99kWh 2026-08-14 18:35:05.383822: >> Region optimisation pass width 240 gives best_metric 1144.87p, best_cost 1153.35p, best_cycle 38.18kWh, best_import 25.99kWh 2026-08-14 18:35:06.477703: >> Region optimisation pass width 120 gives best_metric 1144.87p, best_cost 1153.35p, best_cycle 38.18kWh, best_import 25.99kWh 2026-08-14 18:35:06.478102: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 81 2026-08-14 18:35:06.478193: Optimise levels pass ended at 2026-08-14 18:35:06, duration 3.0 seconds tried 335 combinations 2026-08-14 18:35:06.478683: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1144.87p, best_keep 0kWh, best_cycle 38.18kWh, best_carbon 0kg, best_import 25.99kWh 2026-08-14 18:35:06.500253: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 18:35:11.525870: Tweak plan optimisation started metric 1072.49p, cost 1081.6p 2026-08-14 18:35:11.837090: Tweak optimisation finished metric 1072.49p, cost 1081.6p, metric_keep 0kWh, cycle 32.36kWh, carbon 0kg, import 21.12kWh, changed 8 window(s) 2026-08-14 18:35:11.856695: Swap charge optimisation started metric 1072.49p, cost 1081.6p, min_improvement_swap 0.1p 2026-08-14 18:35:18.645600: Swap charge optimisation finished metric 1072.49p, cost 1081.6p 2026-08-14 18:35:18.749900: Raw charge windows [ 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 18:30:00 - 16-08 19:00:00 @ 43.82p 100% ] reserve 1.12 2026-08-14 18:35:18.750648: Unclipped charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 19:00:00 @ 41.55p 100% ] reserve 1.12 2026-08-14 18:35:18.750937: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 19:00:00 @ 41.55p 100% ] reserve 1.12 2026-08-14 18:35:18.751233: Filtered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 19:00:00 @ 41.55p 100% ] reserve 1.12 2026-08-14 18:35:18.788943: Previous plan best metric is 1072.49 (cost 1081.6) and new plan best metric is 1072.49 (cost 1081.6) 2026-08-14 18:35:18.789192: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 18:35:18.789437: Plan valid is now true after recompute was False 2026-08-14 18:35:18.818128: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1311.2p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 45.54kWh, PV 0.0kWh 2026-08-14 18:35:18.926294: Battery has 8.25 hours left - now at 8.94kWh 2026-08-14 18:35:18.962711: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1342.97p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:25:00, load 46.81kWh, PV 0.0kWh 2026-08-14 18:35:19.033105: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1209.16p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:25:00, load 46.81kWh, PV 0.0kWh 2026-08-14 18:35:19.109788: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1181.57p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 45.54kWh, PV 0.0kWh 2026-08-14 18:35:19.109878: Saving plan best values to HA entities 2026-08-14 18:35:19.278050: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 18:35:19.284613: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 18:35:19.290429: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.32kWh, house 4.8kWh, export 0.0kWh, metric 1181.57p, metric10 1209.16p 2026-08-14 18:35:19.365874: Marginal costs baseline metric (no standing charge): 1081.6001 2026-08-14 18:35:19.598527: Marginal energy costs matrix computed: min=24.92 max=36.65 2026-08-14 18:35:19.671654: Rate array import [{'start': 1115, 'end': 1140, 'rate': 'very expensive', 'range': '(53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 26.7p)'}] export [{'start': 1115, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 18:35:19.672298: - Your estimated bill for today is £7.26 and tomorrow is £4.02 2026-08-14 18:35:19.672337: - Import rates are very expensive (53.4p) for the next 25 minutes and then expensive (40.1p) for the next 30 minutes. 2026-08-14 18:35:19.672357: - The battery is currently at 56% and is in eco mode for the next 16 hours. 2026-08-14 18:35:19.672371: - For the next 48 hours there will be no solar generation. 2026-08-14 18:35:19.672385: - You will run out of battery in 8 hours. 2026-08-14 18:35:19.672403: - Your next charge slot will be in 16 hours where import rates will be cheap (15.5p). 2026-08-14 18:35:19.672417: 2026-08-14 18:35:19.734226: Plan calculation took 16.42 seconds 2026-08-14 18:35:19.734607: Inverter 0: Type SK Sunsynk 2026-08-14 18:35:19.734654: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 18:35:19.735331: Reserve min: 7%, battery_min: 7% 2026-08-14 18:35:19.735443: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 18:35:19.735740: Inverter 0 SoC: 8.94kW 56%, current charge rate 5000W, current discharge rate 5250W, current battery power 1897W, current battery voltage 51.2V, grid power -54W, load power 1951W, PV Power 0W 2026-08-14 18:35:19.735996: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:35:19.736105: Inverter 0 scheduled charge enable is False 2026-08-14 18:35:19.736146: Inverter 0 charge windows currently [] 2026-08-14 18:35:19.736183: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 18:35:19.736295: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:35:19.736331: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:35:19.736368: Inverter 0 scheduled discharge enable is False 2026-08-14 18:35:19.736495: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:35:19.736532: Inverter 0 discharge windows currently [] 2026-08-14 18:35:19.736555: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:35:19.736574: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:35:19.736591: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:35:19.793705: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 56%, target 19% 2026-08-14 18:35:19.793835: Inverter 0 disabled charge window while waiting for schedule (now 08-14 18:35:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 18:35:19.793895: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:35:19.794067: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:35:19.794139: No export window planned 2026-08-14 18:35:19.794234: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 18:35:19.794265: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:35:19.794374: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:35:19.794511: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 18:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 18:35:19.794555: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 18:35:19.794601: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 18:35:19.794679: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:35:19.794711: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:35:19.794735: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:35:19.794756: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:35:19.794776: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:35:19.794796: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:35:19.794816: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:35:19.794861: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:35:19.794908: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:35:19.794931: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:35:19.794953: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:35:19.794988: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:35:19.795008: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:35:19.795027: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:35:19.795043: Inverter 0 count register writes 0 2026-08-14 18:35:19.813501: Total inverter register writes now 815 2026-08-14 18:35:19.841214: Info: Completed run status Demand 2026-08-14 18:35:19.847643: Info: record_status Demand 2026-08-14 18:35:19.857011: Saved current settings to /config/predbat_config.json 2026-08-14 18:35:19.857357: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 18:35:56.967458: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:35:56.968029: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:35:56.968086: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:35:56.968235: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:35:56.968285: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:35:56.968305: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:35:56.968324: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:37:57.191089: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:37:57.191429: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:37:57.191516: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:37:57.191756: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:37:57.191819: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:37:57.191849: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:37:57.191880: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:39:57.407230: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:39:57.407748: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:39:57.407832: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:39:57.407977: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:39:57.408038: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:39:57.408086: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:39:57.408103: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:40:00.497952: --------------- PredBat - update at 2026-08-14 18:40:00+01:00 with clock skew 0 minutes, minutes now 1120 2026-08-14 18:40:00.498666: Saved current settings to /config/predbat_config.json 2026-08-14 18:40:00.498779: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 50.0 minutes 2026-08-14 18:40:00.498908: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 18:40:00.498980: Autoupdate: Currently up to date 2026-08-14 18:40:00.516091: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 18:40:00.516264: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 18:40:00.516516: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 18:40:00.517217: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 18:40:00.517414: Predbat mode is set to Control charge & discharge 2026-08-14 18:40:00.699774: Found 21602 load_today datapoints going back 28 days 2026-08-14 18:40:00.699926: Using load_power data to fill gaps in load_today data 2026-08-14 18:40:01.465497: Processing 721 30-minute periods for power integration 2026-08-14 18:40:01.635410: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 18:40:01.635534: Car charging hold False, threshold 6.0kWh 2026-08-14 18:40:01.635572: Current data so far today: load 18.95kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 18:40:01.649154: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 18:40:01.649553: Standing charge is set to 49.98p 2026-08-14 18:40:01.696319: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 18:40:01.696416: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 18:40:01.696586: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 485.0 minutes 2026-08-14 18:40:01.696905: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 485.0 minutes 2026-08-14 18:40:01.701868: Loaded 95 datapoints of futurerate analysis 2026-08-14 18:40:01.822192: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75'] 2026-08-14 18:40:01.859409: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 18:40:01.860130: Import rates: min 13.77p, max 53.39p, average 26.45p 2026-08-14 18:40:01.894513: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 18:40:01.894633: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 18:40:01.895714: High export rate found rates in range 99p to -99p 2026-08-14 18:40:02.010410: Low Import rate found rates in range 13.77p to 43.82p 2026-08-14 18:40:02.010579: Car 0 charging is not planned as it is not plugged in 2026-08-14 18:40:02.025650: Battery level now 8.94kWh, -1hr ago 10.24kWh, at midnight 2.43kWh, battery value change in the last hour -15.33p, change today 77.01p, rate_forward 11.83p 2026-08-14 18:40:02.026219: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.5kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 18:40:02.092107: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 18:40:02.092246: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 18:40:02.184395: Using weighted-bucket historical load forecast over 14 days 2026-08-14 18:40:02.214073: Today's load divergence 136.79%, in-day adjustment 137.59%, damping 0.95x, yesterday 146.81% today 134.95% blend 22.22% 2026-08-14 18:40:02.214167: Today's predicted so far 10.68kWh with 0.0kWh car/iBoost excluded, 17.18kWh import ignored, and 10.68kWh forecast extra. 2026-08-14 18:40:02.214208: Today's actual load so far 18.97kWh with 0.0kWh car/iBoost excluded, and 17.18kWh import ignored. 2026-08-14 18:40:02.248082: Inverter 0: Type SK Sunsynk 2026-08-14 18:40:02.248178: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 18:40:02.248707: Reserve min: 7%, battery_min: 7% 2026-08-14 18:40:02.248782: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 18:40:02.249084: Inverter 0 SoC: 8.94kW 56%, current charge rate 5000W, current discharge rate 5250W, current battery power 1539W, current battery voltage 51.2V, grid power -55W, load power 1595W, PV Power 0W 2026-08-14 18:40:02.249253: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:40:02.249341: Inverter 0 scheduled charge enable is False 2026-08-14 18:40:02.249370: Inverter 0 charge windows currently [] 2026-08-14 18:40:02.249400: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 18:40:02.249502: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:40:02.249530: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:40:02.249565: Inverter 0 scheduled discharge enable is False 2026-08-14 18:40:02.249685: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:40:02.249721: Inverter 0 discharge windows currently [] 2026-08-14 18:40:02.249743: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:40:02.249761: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:40:02.249783: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:40:02.305125: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 18:40:02.305238: Plan was last updated on 2026-08-14 18:35:00+01:00 and is now 5.0 minutes old 2026-08-14 18:40:02.305480: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 18:40:02.305522: Best export window [ ] 2026-08-14 18:40:02.306360: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 18:40:02.310033: Load divergence over 8.0 hours mean 454.51W, min 274.8W, max 1206.0W, std dev 162.96W, divergence 17.93% 2026-08-14 18:40:02.329027: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 18:40:02.329161: LoadML is_calculating False 2026-08-14 18:40:02.329226: Creating pool of 12 processes to match your CPU count 2026-08-14 18:40:02.445168: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1310.94p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:55:00, load 45.62kWh, PV 0.0kWh 2026-08-14 18:40:02.577814: Battery has 8.25 hours left - now at 8.94kWh 2026-08-14 18:40:02.616016: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1342.65p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:25:00, load 46.89kWh, PV 0.0kWh 2026-08-14 18:40:02.686910: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1214.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:25:00, load 46.89kWh, PV 0.0kWh 2026-08-14 18:40:02.758693: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1187.69p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:55:00, load 45.62kWh, PV 0.0kWh 2026-08-14 18:40:02.758776: Saving plan best values to HA entities 2026-08-14 18:40:02.913964: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 18:40:02.918736: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 18:40:02.923299: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.82kWh, house 4.74kWh, export 0.0kWh, metric 1187.69p, metric10 1214.12p 2026-08-14 18:40:02.988396: Marginal costs baseline metric (no standing charge): 1087.7187 2026-08-14 18:40:03.209776: Marginal energy costs matrix computed: min=24.91 max=36.11 2026-08-14 18:40:03.303451: Rate array import [{'start': 1120, 'end': 1140, 'rate': 'very expensive', 'range': '(53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1120, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 18:40:03.304219: - Your estimated bill for today is £7.26 and tomorrow is £4.00 2026-08-14 18:40:03.304270: - Import rates are very expensive (53.4p) for the next 20 minutes and then expensive (40.1p) for the next 30 minutes. 2026-08-14 18:40:03.304304: - The battery is currently at 56% and is in eco mode for the next 16 hours. 2026-08-14 18:40:03.304331: - For the next 48 hours there will be no solar generation. 2026-08-14 18:40:03.304363: - You will run out of battery in 8 hours. 2026-08-14 18:40:03.304392: - Your next charge slot will be in 16 hours where import rates will be cheap (15.5p). 2026-08-14 18:40:03.304424: 2026-08-14 18:40:03.364383: Plan calculation took 1.06 seconds 2026-08-14 18:40:03.368273: No high rate period found 2026-08-14 18:40:03.415834: Import threshold used for optimisation was 17.0p 2026-08-14 18:40:03.468796: Low import rate windows [0: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 1: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 2: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 3: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 4: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 5: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 6: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 7: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 8: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 9: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 10: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 11: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 12: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 13: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 14: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 15: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 16: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 17: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 18: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 19: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 20: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 21: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 22: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 23: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 24: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 25: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 26: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 27: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 28: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 29: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 30: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 31: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 32: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 33: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 34: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 35: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 36: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 37: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 38: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 39: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 40: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 41: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 42: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 43: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 44: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 45: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 46: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 47: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 48: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 49: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 50: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 51: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 52: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 53: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 54: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 55: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 56: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 57: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 58: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 59: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 60: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 61: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 62: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 63: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 64: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 65: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 66: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 67: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 68: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 69: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 70: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 71: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 72: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 73: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 74: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 75: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 76: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 77: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 78: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 79: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 80: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 81: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 82: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 83: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 84: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 85: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 86: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 87: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 88: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 89: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 90: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 91: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 92: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 93: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 94: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 95: 08-16 18:30:00 - 08-16 19:00:00 @ 43.82] 2026-08-14 18:40:03.477162: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 56%, target 19% 2026-08-14 18:40:03.477287: Inverter 0 disabled charge window while waiting for schedule (now 08-14 18:40:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 18:40:03.477389: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:40:03.477610: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:40:03.477725: No export window planned 2026-08-14 18:40:03.477867: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 18:40:03.477922: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:40:03.478117: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:40:03.478317: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 18:40:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 18:40:03.478396: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 18:40:03.478491: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 18:40:03.478595: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:40:03.478647: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:40:03.478684: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:40:03.478725: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:40:03.478773: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:40:03.478825: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:40:03.478872: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:40:03.478968: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:40:03.479024: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:40:03.479060: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:40:03.479100: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:40:03.479124: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:40:03.479145: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:40:03.479185: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:40:03.479222: Inverter 0 count register writes 0 2026-08-14 18:40:03.497406: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 18:40:03.503729: Total inverter register writes now 815 2026-08-14 18:40:03.538935: Info: Completed run status Demand 2026-08-14 18:40:03.545306: Info: record_status Demand 2026-08-14 18:40:03.552812: Saved current settings to /config/predbat_config.json 2026-08-14 18:40:03.553176: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 18:40:41.654687: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:40:41.654927: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:40:41.654975: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:40:41.655154: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:40:41.655198: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:40:41.655221: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:40:41.655238: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:42:41.885755: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:42:41.886064: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:42:41.886120: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:42:41.886278: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:42:41.886319: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:42:41.886341: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:42:41.886367: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:44:42.112748: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:44:42.113101: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:44:42.113191: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:44:42.113403: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:44:42.113450: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:44:42.113472: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:44:42.113489: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:45:00.213685: --------------- PredBat - update at 2026-08-14 18:45:00+01:00 with clock skew 0 minutes, minutes now 1125 2026-08-14 18:45:00.214556: Saved current settings to /config/predbat_config.json 2026-08-14 18:45:00.214680: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 55.0 minutes 2026-08-14 18:45:00.214861: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 18:45:00.214993: Autoupdate: Currently up to date 2026-08-14 18:45:00.235514: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 18:45:00.235645: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 18:45:00.235826: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 18:45:00.236366: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 18:45:00.236488: Predbat mode is set to Control charge & discharge 2026-08-14 18:45:00.430528: Found 21602 load_today datapoints going back 28 days 2026-08-14 18:45:00.430701: Using load_power data to fill gaps in load_today data 2026-08-14 18:45:01.208527: Processing 721 30-minute periods for power integration 2026-08-14 18:45:01.356325: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 18:45:01.356470: Car charging hold False, threshold 6.0kWh 2026-08-14 18:45:01.356526: Current data so far today: load 19.1kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 18:45:01.370650: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 18:45:01.371169: Standing charge is set to 49.98p 2026-08-14 18:45:01.412690: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 18:45:01.412781: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 18:45:01.413121: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 490.0 minutes 2026-08-14 18:45:01.413539: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 490.0 minutes 2026-08-14 18:45:01.418755: Loaded 95 datapoints of futurerate analysis 2026-08-14 18:45:01.577186: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75'] 2026-08-14 18:45:01.618872: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 18:45:01.619310: Import rates: min 13.77p, max 53.39p, average 26.44p 2026-08-14 18:45:01.653624: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 18:45:01.654233: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 18:45:01.655430: High export rate found rates in range 99p to -99p 2026-08-14 18:45:01.749802: Low Import rate found rates in range 13.77p to 43.82p 2026-08-14 18:45:01.749969: Car 0 charging is not planned as it is not plugged in 2026-08-14 18:45:01.763187: Battery level now 8.94kWh, -1hr ago 10.09kWh, at midnight 2.43kWh, battery value change in the last hour -13.53p, change today 77.01p, rate_forward 11.83p 2026-08-14 18:45:01.763553: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.6kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 18:45:01.822804: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 18:45:01.822978: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 18:45:01.902118: Using weighted-bucket historical load forecast over 14 days 2026-08-14 18:45:01.926492: Today's load divergence 137.01%, in-day adjustment 137.71%, damping 0.95x, yesterday 146.81% today 135.16% blend 21.88% 2026-08-14 18:45:01.926870: Today's predicted so far 10.69kWh with 0.0kWh car/iBoost excluded, 17.19kWh import ignored, and 10.69kWh forecast extra. 2026-08-14 18:45:01.926923: Today's actual load so far 19.07kWh with 0.0kWh car/iBoost excluded, and 17.19kWh import ignored. 2026-08-14 18:45:01.959725: Inverter 0: Type SK Sunsynk 2026-08-14 18:45:01.959816: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 18:45:01.960397: Reserve min: 7%, battery_min: 7% 2026-08-14 18:45:01.960484: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 18:45:01.960775: Inverter 0 SoC: 8.8kW 55%, current charge rate 5000W, current discharge rate 5250W, current battery power 1727W, current battery voltage 51.2V, grid power -50W, load power 1762W, PV Power 0W 2026-08-14 18:45:01.960943: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:45:01.961111: Inverter 0 scheduled charge enable is False 2026-08-14 18:45:01.961156: Inverter 0 charge windows currently [] 2026-08-14 18:45:01.961185: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 18:45:01.961319: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:45:01.961357: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:45:01.961393: Inverter 0 scheduled discharge enable is False 2026-08-14 18:45:01.961520: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:45:01.961557: Inverter 0 discharge windows currently [] 2026-08-14 18:45:01.961580: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:45:01.961601: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:45:01.961618: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:45:02.014127: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 18:45:02.014263: Plan was last updated on 2026-08-14 18:35:00+01:00 and is now 10.0 minutes old 2026-08-14 18:45:02.014541: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 18:45:02.014589: Best export window [ ] 2026-08-14 18:45:02.015475: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 18:45:02.018674: Load divergence over 8.0 hours mean 456.17W, min 279.0W, max 1164.0W, std dev 161.32W, divergence 17.68% 2026-08-14 18:45:02.038780: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 18:45:02.038915: LoadML is_calculating False 2026-08-14 18:45:02.038999: Creating pool of 12 processes to match your CPU count 2026-08-14 18:45:02.155580: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1314.36p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 45.81kWh, PV 0.0kWh 2026-08-14 18:45:02.283272: Battery has 8.0 hours left - now at 8.8kWh 2026-08-14 18:45:02.323658: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1346.18p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:20:00, load 47.08kWh, PV 0.0kWh 2026-08-14 18:45:02.397396: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1223.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:20:00, load 47.08kWh, PV 0.0kWh 2026-08-14 18:45:02.482770: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1197.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 45.81kWh, PV 0.0kWh 2026-08-14 18:45:02.482860: Saving plan best values to HA entities 2026-08-14 18:45:02.686979: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 18:45:02.695002: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 18:45:02.702740: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.34kWh, house 4.82kWh, export 0.0kWh, metric 1197.62p, metric10 1223.09p 2026-08-14 18:45:02.776842: Marginal costs baseline metric (no standing charge): 1097.6547 2026-08-14 18:45:02.999406: Marginal energy costs matrix computed: min=24.9 max=35.72 2026-08-14 18:45:03.075939: Rate array import [{'start': 1125, 'end': 1140, 'rate': 'very expensive', 'range': '(53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1125, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 18:45:03.076760: - Your estimated bill for today is £7.26 and tomorrow is £4.02 2026-08-14 18:45:03.076824: - Import rates are very expensive (53.4p) for the next 15 minutes and then expensive (40.1p) for the next 30 minutes. 2026-08-14 18:45:03.076846: - The battery is currently at 55% and is in eco mode for the next 16 hours. 2026-08-14 18:45:03.076864: - For the next 48 hours there will be no solar generation. 2026-08-14 18:45:03.076881: - You will run out of battery in 8 hours. 2026-08-14 18:45:03.076898: - Your next charge slot will be in 16 hours where import rates will be cheap (15.5p). 2026-08-14 18:45:03.076914: 2026-08-14 18:45:03.137882: Plan calculation took 1.12 seconds 2026-08-14 18:45:03.141078: No high rate period found 2026-08-14 18:45:03.186348: Import threshold used for optimisation was 17.0p 2026-08-14 18:45:03.234906: Low import rate windows [0: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 1: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 2: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 3: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 4: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 5: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 6: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 7: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 8: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 9: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 10: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 11: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 12: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 13: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 14: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 15: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 16: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 17: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 18: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 19: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 20: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 21: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 22: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 23: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 24: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 25: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 26: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 27: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 28: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 29: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 30: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 31: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 32: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 33: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 34: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 35: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 36: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 37: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 38: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 39: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 40: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 41: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 42: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 43: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 44: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 45: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 46: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 47: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 48: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 49: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 50: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 51: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 52: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 53: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 54: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 55: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 56: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 57: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 58: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 59: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 60: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 61: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 62: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 63: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 64: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 65: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 66: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 67: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 68: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 69: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 70: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 71: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 72: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 73: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 74: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 75: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 76: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 77: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 78: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 79: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 80: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 81: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 82: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 83: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 84: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 85: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 86: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 87: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 88: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 89: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 90: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 91: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 92: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 93: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 94: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 95: 08-16 18:30:00 - 08-16 19:00:00 @ 43.82] 2026-08-14 18:45:03.242551: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 55%, target 19% 2026-08-14 18:45:03.242737: Inverter 0 disabled charge window while waiting for schedule (now 08-14 18:45:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 18:45:03.242899: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:45:03.243218: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:45:03.243296: No export window planned 2026-08-14 18:45:03.243414: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 18:45:03.243450: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:45:03.243615: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:45:03.243763: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 18:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 18:45:03.243840: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 18:45:03.243891: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 18:45:03.243990: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:45:03.244020: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:45:03.244041: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:45:03.244061: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:45:03.244081: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:45:03.244101: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:45:03.244121: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:45:03.244169: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:45:03.244193: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:45:03.244212: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:45:03.244232: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:45:03.244277: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:45:03.244324: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:45:03.244375: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:45:03.244417: Inverter 0 count register writes 0 2026-08-14 18:45:03.260161: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 18:45:03.260379: Recompute is saving previous plan... 2026-08-14 18:45:03.263375: Best charge window [ 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 18:30:00 - 16-08 19:00:00 @ 43.82p 0% ] 2026-08-14 18:45:03.263459: Best export window [ ] 2026-08-14 18:45:03.264110: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 18:45:03.267027: Load divergence over 8.0 hours mean 456.17W, min 279.0W, max 1164.0W, std dev 161.32W, divergence 17.68% 2026-08-14 18:45:03.282426: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 18:45:03.283385: LoadML is_calculating False 2026-08-14 18:45:03.283695: Creating pool of 12 processes to match your CPU count 2026-08-14 18:45:03.373704: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 18:45:03.376157: Optimise levels pass started at 2026-08-14 18:45:03 2026-08-14 18:45:03.376226: Optimise all windows, total charge 95 export 1 2026-08-14 18:45:04.464326: >> Region optimisation pass width 960 gives best_metric 1146.86p, best_cost 1153.83p, best_cycle 38.11kWh, best_import 26.02kWh 2026-08-14 18:45:04.845444: >> Region optimisation pass width 480 gives best_metric 1146.86p, best_cost 1153.83p, best_cycle 38.11kWh, best_import 26.02kWh 2026-08-14 18:45:05.395414: >> Region optimisation pass width 240 gives best_metric 1146.86p, best_cost 1153.83p, best_cycle 38.11kWh, best_import 26.02kWh 2026-08-14 18:45:06.608053: >> Region optimisation pass width 120 gives best_metric 1146.86p, best_cost 1153.83p, best_cycle 38.11kWh, best_import 26.02kWh 2026-08-14 18:45:06.608641: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 81 2026-08-14 18:45:06.608722: Optimise levels pass ended at 2026-08-14 18:45:06, duration 3.2 seconds tried 335 combinations 2026-08-14 18:45:06.608792: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1146.86p, best_keep 0kWh, best_cycle 38.11kWh, best_carbon 0kg, best_import 26.02kWh 2026-08-14 18:45:06.628536: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 18:45:11.770713: Tweak plan optimisation started metric 1072.73p, cost 1081.85p 2026-08-14 18:45:12.120565: Tweak optimisation finished metric 1072.73p, cost 1081.85p, metric_keep 0kWh, cycle 32.22kWh, carbon 0kg, import 21.13kWh, changed 8 window(s) 2026-08-14 18:45:12.137018: Swap charge optimisation started metric 1072.73p, cost 1081.85p, min_improvement_swap 0.1p 2026-08-14 18:45:18.666884: Swap charge optimisation finished metric 1072.73p, cost 1081.85p 2026-08-14 18:45:18.751223: Raw charge windows [ 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 18:30:00 - 16-08 19:00:00 @ 43.82p 100% ] reserve 1.12 2026-08-14 18:45:18.752307: Unclipped charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 19:00:00 @ 41.55p 100% ] reserve 1.12 2026-08-14 18:45:18.752616: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 19:00:00 @ 41.55p 100% ] reserve 1.12 2026-08-14 18:45:18.752857: Filtered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 19:00:00 @ 41.55p 100% ] reserve 1.12 2026-08-14 18:45:18.788714: Previous plan best metric is 1072.73 (cost 1081.85) and new plan best metric is 1072.73 (cost 1081.85) 2026-08-14 18:45:18.788882: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 18:45:18.789099: Plan valid is now true after recompute was False 2026-08-14 18:45:18.812104: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1311.44p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 45.62kWh, PV 0.0kWh 2026-08-14 18:45:18.912493: Battery has 8.0 hours left - now at 8.8kWh 2026-08-14 18:45:18.955843: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1343.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:20:00, load 46.88kWh, PV 0.0kWh 2026-08-14 18:45:19.025618: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1209.3p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:20:00, load 46.88kWh, PV 0.0kWh 2026-08-14 18:45:19.103608: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1181.82p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 45.62kWh, PV 0.0kWh 2026-08-14 18:45:19.103707: Saving plan best values to HA entities 2026-08-14 18:45:19.245723: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 18:45:19.250283: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 18:45:19.255027: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.32kWh, house 4.82kWh, export 0.0kWh, metric 1181.82p, metric10 1209.3p 2026-08-14 18:45:19.321362: Marginal costs baseline metric (no standing charge): 1081.8535 2026-08-14 18:45:19.536517: Marginal energy costs matrix computed: min=24.9 max=35.72 2026-08-14 18:45:19.617693: Rate array import [{'start': 1125, 'end': 1140, 'rate': 'very expensive', 'range': '(53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 26.7p)'}] export [{'start': 1125, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 18:45:19.618532: - Your estimated bill for today is £7.26 and tomorrow is £4.02 2026-08-14 18:45:19.618582: - Import rates are very expensive (53.4p) for the next 15 minutes and then expensive (40.1p) for the next 30 minutes. 2026-08-14 18:45:19.618605: - The battery is currently at 55% and is in eco mode for the next 16 hours. 2026-08-14 18:45:19.618622: - For the next 48 hours there will be no solar generation. 2026-08-14 18:45:19.618639: - You will run out of battery in 8 hours. 2026-08-14 18:45:19.618661: - Your next charge slot will be in 16 hours where import rates will be cheap (15.5p). 2026-08-14 18:45:19.618682: 2026-08-14 18:45:19.691214: Plan calculation took 16.43 seconds 2026-08-14 18:45:19.691591: Inverter 0: Type SK Sunsynk 2026-08-14 18:45:19.691640: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 18:45:19.692348: Reserve min: 7%, battery_min: 7% 2026-08-14 18:45:19.692440: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 18:45:19.692738: Inverter 0 SoC: 8.64kW 54%, current charge rate 5000W, current discharge rate 5250W, current battery power 1718W, current battery voltage 51.2V, grid power -53W, load power 1775W, PV Power 0W 2026-08-14 18:45:19.693094: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:45:19.693218: Inverter 0 scheduled charge enable is False 2026-08-14 18:45:19.693260: Inverter 0 charge windows currently [] 2026-08-14 18:45:19.693292: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 18:45:19.693408: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:45:19.693444: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:45:19.693481: Inverter 0 scheduled discharge enable is False 2026-08-14 18:45:19.693619: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:45:19.693658: Inverter 0 discharge windows currently [] 2026-08-14 18:45:19.693682: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:45:19.693706: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:45:19.693723: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:45:19.748658: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 54%, target 19% 2026-08-14 18:45:19.748810: Inverter 0 disabled charge window while waiting for schedule (now 08-14 18:45:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 18:45:19.748880: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:45:19.749159: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:45:19.749256: No export window planned 2026-08-14 18:45:19.749369: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 18:45:19.749405: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:45:19.749539: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:45:19.749700: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 18:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 18:45:19.749756: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 18:45:19.749805: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 18:45:19.749895: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:45:19.749955: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:45:19.749985: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:45:19.750010: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:45:19.750035: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:45:19.750060: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:45:19.750085: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:45:19.750170: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:45:19.750201: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:45:19.750225: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:45:19.750248: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:45:19.750271: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:45:19.750294: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:45:19.750319: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:45:19.750339: Inverter 0 count register writes 0 2026-08-14 18:45:19.771293: Total inverter register writes now 815 2026-08-14 18:45:19.801498: Info: Completed run status Demand 2026-08-14 18:45:19.808703: Info: record_status Demand 2026-08-14 18:45:19.816305: Saved current settings to /config/predbat_config.json 2026-08-14 18:45:19.816929: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 18:45:56.916061: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:45:56.916309: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:45:56.916346: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:45:56.916539: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:45:56.916584: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:45:56.916606: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:45:56.916623: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:47:57.129587: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:47:57.129822: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:47:57.129855: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:47:57.130003: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:47:57.130049: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:47:57.130066: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:47:57.130085: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:49:57.348326: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:49:57.348569: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:49:57.348626: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:49:57.348834: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:49:57.348873: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:49:57.348899: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:49:57.348916: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:50:00.426276: --------------- PredBat - update at 2026-08-14 18:50:00+01:00 with clock skew 0 minutes, minutes now 1130 2026-08-14 18:50:00.427066: Saved current settings to /config/predbat_config.json 2026-08-14 18:50:00.427204: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 60.0 minutes 2026-08-14 18:50:00.427339: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 18:50:00.427463: Autoupdate: Currently up to date 2026-08-14 18:50:00.445301: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 18:50:00.445447: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 18:50:00.445679: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 18:50:00.446246: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 18:50:00.446407: Predbat mode is set to Control charge & discharge 2026-08-14 18:50:00.643281: Found 21602 load_today datapoints going back 28 days 2026-08-14 18:50:00.643448: Using load_power data to fill gaps in load_today data 2026-08-14 18:50:01.564986: Processing 721 30-minute periods for power integration 2026-08-14 18:50:01.762007: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 18:50:01.762152: Car charging hold False, threshold 6.0kWh 2026-08-14 18:50:01.762201: Current data so far today: load 19.25kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 18:50:01.781816: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 18:50:01.782287: Standing charge is set to 49.98p 2026-08-14 18:50:01.832566: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 18:50:01.832754: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 18:50:01.833037: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 495.0 minutes 2026-08-14 18:50:01.833443: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 495.0 minutes 2026-08-14 18:50:01.839748: Loaded 95 datapoints of futurerate analysis 2026-08-14 18:50:01.990439: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75'] 2026-08-14 18:50:02.044816: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 18:50:02.045420: Import rates: min 13.77p, max 53.39p, average 26.42p 2026-08-14 18:50:02.104258: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 18:50:02.104401: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 18:50:02.106056: High export rate found rates in range 99p to -99p 2026-08-14 18:50:02.209135: Low Import rate found rates in range 13.77p to 43.82p 2026-08-14 18:50:02.209285: Car 0 charging is not planned as it is not plugged in 2026-08-14 18:50:02.222743: Battery level now 8.8kWh, -1hr ago 10.08kWh, at midnight 2.43kWh, battery value change in the last hour -15.14p, change today 75.31p, rate_forward 11.83p 2026-08-14 18:50:02.223132: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.7kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 18:50:02.288723: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 18:50:02.288917: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 18:50:02.389044: Using weighted-bucket historical load forecast over 14 days 2026-08-14 18:50:02.419514: Today's load divergence 137.21%, in-day adjustment 137.81%, damping 0.95x, yesterday 146.81% today 135.35% blend 21.53% 2026-08-14 18:50:02.419626: Today's predicted so far 10.71kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 10.71kWh forecast extra. 2026-08-14 18:50:02.419670: Today's actual load so far 19.16kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 18:50:02.460538: Inverter 0: Type SK Sunsynk 2026-08-14 18:50:02.460680: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 18:50:02.461401: Reserve min: 7%, battery_min: 7% 2026-08-14 18:50:02.461495: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 18:50:02.461821: Inverter 0 SoC: 8.64kW 54%, current charge rate 5000W, current discharge rate 5250W, current battery power 1635W, current battery voltage 51.2V, grid power -54W, load power 1692W, PV Power 0W 2026-08-14 18:50:02.462029: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:50:02.462161: Inverter 0 scheduled charge enable is False 2026-08-14 18:50:02.462210: Inverter 0 charge windows currently [] 2026-08-14 18:50:02.462268: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 18:50:02.462420: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:50:02.462466: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:50:02.462522: Inverter 0 scheduled discharge enable is False 2026-08-14 18:50:02.462741: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:50:02.462796: Inverter 0 discharge windows currently [] 2026-08-14 18:50:02.462832: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:50:02.462867: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:50:02.462888: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:50:02.524943: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 18:50:02.525071: Plan was last updated on 2026-08-14 18:45:00+01:00 and is now 5.0 minutes old 2026-08-14 18:50:02.525273: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 18:50:02.525308: Best export window [ ] 2026-08-14 18:50:02.525970: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 18:50:02.528440: Load divergence over 8.0 hours mean 457.73W, min 319.8W, max 1182.6W, std dev 149.1W, divergence 16.29% 2026-08-14 18:50:02.546241: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 18:50:02.546361: LoadML is_calculating False 2026-08-14 18:50:02.546418: Creating pool of 12 processes to match your CPU count 2026-08-14 18:50:02.690741: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1315.77p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:35:00, load 45.83kWh, PV 0.0kWh 2026-08-14 18:50:02.829172: Battery has 7.75 hours left - now at 8.64kWh 2026-08-14 18:50:02.878032: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1347.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:15:00, load 47.1kWh, PV 0.0kWh 2026-08-14 18:50:02.957990: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1219.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:15:00, load 47.1kWh, PV 0.0kWh 2026-08-14 18:50:03.059183: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1192.5p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:35:00, load 45.83kWh, PV 0.0kWh 2026-08-14 18:50:03.059282: Saving plan best values to HA entities 2026-08-14 18:50:03.282271: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 18:50:03.313026: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 18:50:03.320056: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.83kWh, house 4.93kWh, export 0.0kWh, metric 1192.5p, metric10 1219.0p 2026-08-14 18:50:03.422256: Marginal costs baseline metric (no standing charge): 1092.5304 2026-08-14 18:50:03.674027: Marginal energy costs matrix computed: min=24.87 max=35.36 2026-08-14 18:50:03.751489: Rate array import [{'start': 1130, 'end': 1140, 'rate': 'very expensive', 'range': '(53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1130, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 18:50:03.752394: - Your estimated bill for today is £7.26 and tomorrow is £4.05 2026-08-14 18:50:03.752543: - Import rates are very expensive (53.4p) for the next 10 minutes and then expensive (40.1p) for the next 30 minutes. 2026-08-14 18:50:03.752604: - The battery is currently at 54% and is in eco mode for the next 16 hours. 2026-08-14 18:50:03.752628: - For the next 48 hours there will be no solar generation. 2026-08-14 18:50:03.752663: - You will run out of battery in 7 and three quarters hours. 2026-08-14 18:50:03.752680: - Your next charge slot will be in 16 hours where import rates will be cheap (15.5p). 2026-08-14 18:50:03.752697: 2026-08-14 18:50:03.830911: Plan calculation took 1.31 seconds 2026-08-14 18:50:03.833917: No high rate period found 2026-08-14 18:50:03.901407: Import threshold used for optimisation was 17.0p 2026-08-14 18:50:03.954448: Low import rate windows [0: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 1: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 2: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 3: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 4: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 5: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 6: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 7: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 8: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 9: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 10: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 11: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 12: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 13: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 14: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 15: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 16: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 17: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 18: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 19: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 20: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 21: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 22: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 23: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 24: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 25: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 26: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 27: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 28: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 29: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 30: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 31: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 32: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 33: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 34: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 35: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 36: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 37: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 38: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 39: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 40: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 41: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 42: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 43: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 44: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 45: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 46: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 47: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 48: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 49: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 50: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 51: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 52: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 53: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 54: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 55: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 56: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 57: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 58: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 59: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 60: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 61: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 62: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 63: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 64: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 65: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 66: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 67: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 68: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 69: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 70: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 71: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 72: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 73: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 74: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 75: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 76: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 77: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 78: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 79: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 80: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 81: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 82: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 83: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 84: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 85: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 86: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 87: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 88: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 89: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 90: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 91: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 92: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 93: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 94: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 95: 08-16 18:30:00 - 08-16 19:00:00 @ 43.82] 2026-08-14 18:50:03.962832: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 54%, target 19% 2026-08-14 18:50:03.962977: Inverter 0 disabled charge window while waiting for schedule (now 08-14 18:50:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 18:50:03.963084: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:50:03.963344: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:50:03.963432: No export window planned 2026-08-14 18:50:03.963538: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 18:50:03.963573: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:50:03.963764: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:50:03.963951: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 18:50:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 18:50:03.964014: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 18:50:03.964072: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 18:50:03.964161: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:50:03.964205: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:50:03.964233: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:50:03.964257: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:50:03.964282: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:50:03.964315: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:50:03.964340: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:50:03.964403: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:50:03.964432: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:50:03.964456: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:50:03.964480: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:50:03.964503: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:50:03.964526: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:50:03.964549: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:50:03.964609: Inverter 0 count register writes 0 2026-08-14 18:50:03.982900: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 18:50:03.988645: Total inverter register writes now 815 2026-08-14 18:50:04.022266: Info: Completed run status Demand 2026-08-14 18:50:04.028239: Info: record_status Demand 2026-08-14 18:50:04.035251: Saved current settings to /config/predbat_config.json 2026-08-14 18:50:04.035622: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 18:50:42.143223: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:50:42.143466: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:50:42.143508: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:50:42.143730: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:50:42.143775: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:50:42.143798: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:50:42.143816: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:52:42.354232: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:52:42.354485: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:52:42.354536: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:52:42.354684: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:52:42.354723: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:52:42.354744: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:52:42.354762: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:54:56.588094: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:54:56.588330: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:54:56.588373: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:54:56.588581: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:54:56.588623: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:54:56.588645: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:54:56.588662: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:55:00.669251: --------------- PredBat - update at 2026-08-14 18:55:00+01:00 with clock skew 0 minutes, minutes now 1135 2026-08-14 18:55:00.670010: Saved current settings to /config/predbat_config.json 2026-08-14 18:55:00.670131: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 65.0 minutes 2026-08-14 18:55:00.670209: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 18:55:00.670322: Autoupdate: Currently up to date 2026-08-14 18:55:00.688289: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 18:55:00.688462: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 18:55:00.688635: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 18:55:00.689203: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 18:55:00.689359: Predbat mode is set to Control charge & discharge 2026-08-14 18:55:00.845575: Found 21602 load_today datapoints going back 28 days 2026-08-14 18:55:00.845708: Using load_power data to fill gaps in load_today data 2026-08-14 18:55:01.524918: Processing 721 30-minute periods for power integration 2026-08-14 18:55:01.681599: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 18:55:01.681724: Car charging hold False, threshold 6.0kWh 2026-08-14 18:55:01.681764: Current data so far today: load 19.4kWh, import 28.8kWh, export 0.0kWh, PV 0kWh 2026-08-14 18:55:01.695687: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 18:55:01.696126: Standing charge is set to 49.98p 2026-08-14 18:55:01.747720: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 18:55:01.747815: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 18:55:01.747982: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 500.0 minutes 2026-08-14 18:55:01.748300: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 500.0 minutes 2026-08-14 18:55:01.756307: Loaded 95 datapoints of futurerate analysis 2026-08-14 18:55:01.878293: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75'] 2026-08-14 18:55:01.915923: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 18:55:01.916315: Import rates: min 13.77p, max 53.39p, average 26.4p 2026-08-14 18:55:01.951229: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 18:55:01.951352: Rate thresholds (for charge/export) are import 52.89p (0.0p), export -0.1p (0.0p) 2026-08-14 18:55:01.952459: High export rate found rates in range 99p to -99p 2026-08-14 18:55:02.039652: Low Import rate found rates in range 13.77p to 43.82p 2026-08-14 18:55:02.039784: Car 0 charging is not planned as it is not plugged in 2026-08-14 18:55:02.050971: Battery level now 8.64kWh, -1hr ago 10.08kWh, at midnight 2.43kWh, battery value change in the last hour -17.03p, change today 73.42p, rate_forward 11.83p 2026-08-14 18:55:02.051277: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.8kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 18:55:02.106421: Today's energy total net 28.8kWh, import 28.8kWh, export 0.0kWh, cost 725.85p, import 675.87p, export 0.0p, carbon 0.0kg 2026-08-14 18:55:02.106570: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 18:55:02.183364: Using weighted-bucket historical load forecast over 14 days 2026-08-14 18:55:02.207124: Today's load divergence 137.41%, in-day adjustment 137.93%, damping 0.95x, yesterday 146.81% today 135.54% blend 21.18% 2026-08-14 18:55:02.207198: Today's predicted so far 10.74kWh with 0.0kWh car/iBoost excluded, 17.38kWh import ignored, and 10.74kWh forecast extra. 2026-08-14 18:55:02.207230: Today's actual load so far 19.26kWh with 0.0kWh car/iBoost excluded, and 17.38kWh import ignored. 2026-08-14 18:55:02.239429: Inverter 0: Type SK Sunsynk 2026-08-14 18:55:02.239522: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 18:55:02.240093: Reserve min: 7%, battery_min: 7% 2026-08-14 18:55:02.240180: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 18:55:02.240457: Inverter 0 SoC: 8.36kW 52%, current charge rate 5000W, current discharge rate 5250W, current battery power 1717W, current battery voltage 51.2V, grid power -55W, load power 1775W, PV Power 0W 2026-08-14 18:55:02.240615: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:55:02.240701: Inverter 0 scheduled charge enable is False 2026-08-14 18:55:02.240736: Inverter 0 charge windows currently [] 2026-08-14 18:55:02.240763: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 18:55:02.240870: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:55:02.240905: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:55:02.240940: Inverter 0 scheduled discharge enable is False 2026-08-14 18:55:02.241114: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:55:02.241152: Inverter 0 discharge windows currently [] 2026-08-14 18:55:02.241174: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:55:02.241193: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:55:02.241210: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:55:02.296048: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 18:55:02.296208: Plan was last updated on 2026-08-14 18:45:00+01:00 and is now 10.0 minutes old 2026-08-14 18:55:02.296522: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 18:55:02.296575: Best export window [ ] 2026-08-14 18:55:02.297539: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 18:55:02.300300: Load divergence over 8.0 hours mean 459.2W, min 291.0W, max 1057.8W, std dev 137.84W, divergence 15.01% 2026-08-14 18:55:02.315324: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 18:55:02.315405: LoadML is_calculating False 2026-08-14 18:55:02.315457: Creating pool of 12 processes to match your CPU count 2026-08-14 18:55:02.418952: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1322.92p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:20:00, load 46.04kWh, PV 0.0kWh 2026-08-14 18:55:02.556151: Battery has 7.42 hours left - now at 8.36kWh 2026-08-14 18:55:02.605588: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1354.85p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:00:00, load 47.31kWh, PV 0.0kWh 2026-08-14 18:55:02.681151: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1231.67p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:00:00, load 47.31kWh, PV 0.0kWh 2026-08-14 18:55:02.751416: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1206.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:20:00, load 46.04kWh, PV 0.0kWh 2026-08-14 18:55:02.751496: Saving plan best values to HA entities 2026-08-14 18:55:02.895087: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 18:55:02.900094: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 18:55:02.905025: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.35kWh, house 5.15kWh, export 0.0kWh, metric 1206.09p, metric10 1231.67p 2026-08-14 18:55:02.973884: Marginal costs baseline metric (no standing charge): 1106.1207 2026-08-14 18:55:03.201659: Marginal energy costs matrix computed: min=24.79 max=35.13 2026-08-14 18:55:03.284492: Rate array import [{'start': 1135, 'end': 1140, 'rate': 'very expensive', 'range': '(53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 26.7p)'}] export [{'start': 1135, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 18:55:03.285337: - Your estimated bill for today is £7.26 and tomorrow is £4.11 2026-08-14 18:55:03.285401: - Import rates are very expensive (53.4p) for the next 5 minutes and then expensive (40.1p) for the next 30 minutes. 2026-08-14 18:55:03.285425: - The battery is currently at 52% and is in eco mode for the next 16 hours. 2026-08-14 18:55:03.285443: - For the next 48 hours there will be no solar generation. 2026-08-14 18:55:03.285471: - You will run out of battery in 7 and a half hours. 2026-08-14 18:55:03.285489: - Your next charge slot will be in 16 hours where import rates will be cheap (15.5p). 2026-08-14 18:55:03.285506: 2026-08-14 18:55:03.350511: Plan calculation took 1.05 seconds 2026-08-14 18:55:03.353542: No high rate period found 2026-08-14 18:55:03.407561: Import threshold used for optimisation was 17.0p 2026-08-14 18:55:03.486034: Low import rate windows [0: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 1: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 2: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 3: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 4: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 5: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 6: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 7: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 8: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 9: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 10: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 11: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 12: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 13: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 14: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 15: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 16: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 17: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 18: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 19: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 20: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 21: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 22: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 23: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 24: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 25: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 26: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 27: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 28: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 29: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 30: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 31: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 32: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 33: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 34: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 35: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 36: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 37: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 38: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 39: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 40: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 41: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 42: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 43: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 44: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 45: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 46: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 47: 08-15 18:30:00 - 08-15 19:00:00 @ 43.82, 48: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 49: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 50: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 51: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 52: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 53: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 54: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 55: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 56: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 57: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 58: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 59: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 60: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 61: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 62: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 63: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 64: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 65: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 66: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 67: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 68: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 69: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 70: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 71: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 72: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 73: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 74: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 75: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 76: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 77: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 78: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 79: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 80: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 81: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 82: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 83: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 84: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 85: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 86: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 87: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 88: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 89: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 90: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 91: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 92: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 93: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 94: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 95: 08-16 18:30:00 - 08-16 19:00:00 @ 43.82] 2026-08-14 18:55:03.496935: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 52%, target 19% 2026-08-14 18:55:03.497111: Inverter 0 disabled charge window while waiting for schedule (now 08-14 18:55:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 18:55:03.497258: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:55:03.497591: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:55:03.497694: No export window planned 2026-08-14 18:55:03.497809: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 18:55:03.497847: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:55:03.497980: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:55:03.498166: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 18:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 18:55:03.498231: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 18:55:03.498296: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 18:55:03.498417: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:55:03.498464: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:55:03.498493: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:55:03.498523: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:55:03.498549: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:55:03.498573: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:55:03.498597: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:55:03.498665: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:55:03.498694: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:55:03.498723: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:55:03.498747: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:55:03.498776: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:55:03.498800: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:55:03.498829: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:55:03.498849: Inverter 0 count register writes 0 2026-08-14 18:55:03.514922: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 18:55:03.515060: Recompute is saving previous plan... 2026-08-14 18:55:03.517700: Best charge window [ 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 18:30:00 - 16-08 19:00:00 @ 43.82p 0% ] 2026-08-14 18:55:03.517770: Best export window [ ] 2026-08-14 18:55:03.518529: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 18:55:03.521710: Load divergence over 8.0 hours mean 459.2W, min 291.0W, max 1057.8W, std dev 137.84W, divergence 15.01% 2026-08-14 18:55:03.539255: Calculating data from yesterday for savings calculation 2026-08-14 18:55:03.552722: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 18:55:03.601618: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 18:55:03.615885: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 870.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 18:55:03.637229: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 18:55:03.687246: Yesterday: Predbat disabled was £8.57 (adjusted £8.43) vs £6.21 (adjusted £5.91), saving £2.35 (adjusted £2.52) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 13.25kWh 2026-08-14 18:55:03.771241: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 901.12p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 18:55:03.771450: Yesterday: No Battery/PV system cost predicted was £9.01 (adjusted £9.01) vs £6.21 (adjusted £5.91), saving £2.8 (adjusted £3.1) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 18:55:03.783204: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 18:55:03.783334: LoadML is_calculating False 2026-08-14 18:55:03.783429: Creating pool of 12 processes to match your CPU count 2026-08-14 18:55:03.869812: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 18:55:03.872014: Optimise levels pass started at 2026-08-14 18:55:03 2026-08-14 18:55:03.872084: Optimise all windows, total charge 95 export 1 2026-08-14 18:55:04.929170: >> Region optimisation pass width 960 gives best_metric 1157.55p, best_cost 1165.3p, best_cycle 38.03kWh, best_import 26.57kWh 2026-08-14 18:55:05.297001: >> Region optimisation pass width 480 gives best_metric 1157.55p, best_cost 1165.3p, best_cycle 38.03kWh, best_import 26.57kWh 2026-08-14 18:55:05.835901: >> Region optimisation pass width 240 gives best_metric 1157.55p, best_cost 1165.3p, best_cycle 38.03kWh, best_import 26.57kWh 2026-08-14 18:55:06.963410: >> Region optimisation pass width 120 gives best_metric 1157.55p, best_cost 1165.3p, best_cycle 38.03kWh, best_import 26.57kWh 2026-08-14 18:55:06.963843: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 81 2026-08-14 18:55:06.963939: Optimise levels pass ended at 2026-08-14 18:55:06, duration 3.1 seconds tried 331 combinations 2026-08-14 18:55:06.964058: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1157.55p, best_keep 0kWh, best_cycle 38.03kWh, best_carbon 0kg, best_import 26.57kWh 2026-08-14 18:55:06.984329: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 18:55:12.084305: Tweak plan optimisation started metric 1081.29p, cost 1090.4p 2026-08-14 18:55:12.374814: Tweak optimisation finished metric 1081.29p, cost 1090.4p, metric_keep 0kWh, cycle 31.79kWh, carbon 0kg, import 21.48kWh, changed 8 window(s) 2026-08-14 18:55:12.393990: Swap charge optimisation started metric 1081.29p, cost 1090.4p, min_improvement_swap 0.1p 2026-08-14 18:55:18.094383: Swap charge optimisation finished metric 1081.29p, cost 1090.4p 2026-08-14 18:55:18.177672: Raw charge windows [ 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 18:30:00 - 15-08 19:00:00 @ 43.82p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 18:30:00 - 16-08 19:00:00 @ 43.82p 100% ] reserve 1.12 2026-08-14 18:55:18.178229: Unclipped charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 19:00:00 @ 41.55p 100% ] reserve 1.12 2026-08-14 18:55:18.178463: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 19:00:00 @ 41.55p 100% ] reserve 1.12 2026-08-14 18:55:18.178669: Filtered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 19:00:00 @ 41.55p 100% ] reserve 1.12 2026-08-14 18:55:18.208722: Previous plan best metric is 1081.29 (cost 1090.4) and new plan best metric is 1081.29 (cost 1090.4) 2026-08-14 18:55:18.208941: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 18:55:18.209242: Plan valid is now true after recompute was False 2026-08-14 18:55:18.232251: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1320.08p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:20:00, load 45.85kWh, PV 0.0kWh 2026-08-14 18:55:18.330362: Battery has 7.42 hours left - now at 8.36kWh 2026-08-14 18:55:18.369756: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1351.87p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:00:00, load 47.11kWh, PV 0.0kWh 2026-08-14 18:55:18.462902: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1217.96p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:00:00, load 47.11kWh, PV 0.0kWh 2026-08-14 18:55:18.535003: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1190.37p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:20:00, load 45.85kWh, PV 0.0kWh 2026-08-14 18:55:18.535084: Saving plan best values to HA entities 2026-08-14 18:55:18.665749: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 18:55:18.670385: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 18:55:18.675094: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.33kWh, house 5.15kWh, export 0.0kWh, metric 1190.37p, metric10 1217.96p 2026-08-14 18:55:18.738334: Marginal costs baseline metric (no standing charge): 1090.3998 2026-08-14 18:55:18.953025: Marginal energy costs matrix computed: min=24.79 max=35.13 2026-08-14 18:55:19.019010: Rate array import [{'start': 1135, 'end': 1140, 'rate': 'very expensive', 'range': '(53.4p)'}, {'start': 1140, 'end': 1170, 'rate': 'expensive', 'range': '(40.1p)'}, {'start': 1170, 'end': 1200, 'rate': 'very expensive', 'range': '(42.3p)'}, {'start': 1200, 'end': 1230, 'rate': 'expensive', 'range': '(39.8p)'}, {'start': 1230, 'end': 1260, 'rate': 'very expensive', 'range': '(40.4p)'}, {'start': 1260, 'end': 1530, 'rate': 'expensive', 'range': '(27.2p - 35.1p)'}, {'start': 1530, 'end': 1680, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 1680, 'end': 1710, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 1710, 'end': 1830, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 1830, 'end': 1860, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 1860, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 26.7p)'}, {'start': 2400, 'end': 2490, 'rate': 'expensive', 'range': '(33.1p - 38.5p)'}, {'start': 2490, 'end': 2580, 'rate': 'very expensive', 'range': '(40.4p - 43.8p)'}, {'start': 2580, 'end': 2970, 'rate': 'expensive', 'range': '(27.2p - 32.9p)'}, {'start': 2970, 'end': 3120, 'rate': 'cheap', 'range': '(24.6p - 26.5p)'}, {'start': 3120, 'end': 3150, 'rate': 'expensive', 'range': '(27.0p)'}, {'start': 3150, 'end': 3270, 'rate': 'cheap', 'range': '(25.7p - 26.5p)'}, {'start': 3270, 'end': 3300, 'rate': 'expensive', 'range': '(27.6p)'}, {'start': 3300, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 26.7p)'}] export [{'start': 1135, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 18:55:19.019663: - Your estimated bill for today is £7.26 and tomorrow is £4.11 2026-08-14 18:55:19.019701: - Import rates are very expensive (53.4p) for the next 5 minutes and then expensive (40.1p) for the next 30 minutes. 2026-08-14 18:55:19.019720: - The battery is currently at 52% and is in eco mode for the next 16 hours. 2026-08-14 18:55:19.019734: - For the next 48 hours there will be no solar generation. 2026-08-14 18:55:19.019748: - You will run out of battery in 7 and a half hours. 2026-08-14 18:55:19.019761: - Your next charge slot will be in 16 hours where import rates will be cheap (15.5p). 2026-08-14 18:55:19.019779: 2026-08-14 18:55:19.076091: Plan calculation took 15.56 seconds 2026-08-14 18:55:19.076463: Inverter 0: Type SK Sunsynk 2026-08-14 18:55:19.076513: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 18:55:19.077227: Reserve min: 7%, battery_min: 7% 2026-08-14 18:55:19.077329: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 18:55:19.077654: Inverter 0 SoC: 8.36kW 52%, current charge rate 5000W, current discharge rate 5250W, current battery power 1717W, current battery voltage 51.2V, grid power -55W, load power 1775W, PV Power 0W 2026-08-14 18:55:19.077890: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:55:19.077999: Inverter 0 scheduled charge enable is False 2026-08-14 18:55:19.078042: Inverter 0 charge windows currently [] 2026-08-14 18:55:19.078072: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 18:55:19.078182: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:55:19.078220: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:55:19.078256: Inverter 0 scheduled discharge enable is False 2026-08-14 18:55:19.078405: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:55:19.078445: Inverter 0 discharge windows currently [] 2026-08-14 18:55:19.078468: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:55:19.078486: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:55:19.078508: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:55:19.132401: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 52%, target 19% 2026-08-14 18:55:19.132561: Inverter 0 disabled charge window while waiting for schedule (now 08-14 18:55:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 18:55:19.132626: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:55:19.132786: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:55:19.132869: No export window planned 2026-08-14 18:55:19.132997: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 18:55:19.133062: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 18:55:19.133182: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 18:55:19.133423: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 18:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 18:55:19.133497: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 18:55:19.133576: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 18:55:19.133701: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:55:19.133761: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:55:19.133814: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:55:19.133855: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:55:19.133942: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:55:19.133983: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:55:19.134024: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 18:55:19.134138: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:55:19.134208: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:55:19.134254: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:55:19.134310: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:55:19.134355: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:55:19.134416: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:55:19.134449: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 18:55:19.134480: Inverter 0 count register writes 0 2026-08-14 18:55:19.154075: Total inverter register writes now 815 2026-08-14 18:55:19.183481: Info: Completed run status Demand 2026-08-14 18:55:19.190266: Info: record_status Demand 2026-08-14 18:55:19.196134: Saved current settings to /config/predbat_config.json 2026-08-14 18:55:19.196423: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 18:55:57.300859: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:55:57.301152: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:55:57.301213: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:55:57.301380: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:55:57.301452: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:55:57.301473: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:55:57.301490: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:56:47.149255: TemperatureAPI: Using coordinates latitude 53.4, longitude -2.2 2026-08-14 18:56:47.301758: TemperatureAPI: Successfully fetched temperature data from Open-Meteo API 2026-08-14 18:57:08.762235: Info: HAHistory: Pruning history data started. 2026-08-14 18:57:08.764469: Info: HAHistory: Pruning history data completed. 2026-08-14 18:58:11.531541: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 18:58:11.531803: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 18:58:11.531847: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 18:58:11.532009: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 18:58:11.532057: Note: Inverter does not support discharge freeze - disabled 2026-08-14 18:58:11.532080: Note: Inverter does not support charge freeze - disabled 2026-08-14 18:58:11.532097: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 18:59:29.341454: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 18:59:30.311371: Processing 1297 30-minute periods for power integration 2026-08-14 18:59:30.414644: ML Component: Car charging hold False, car energy reported load False 2026-08-14 18:59:30.510702: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 18:59:30.604372: ML Temperature data points: 47826 2026-08-14 18:59:30.848692: ML Component: Fetched 7776 load data points, 27.0 days of history 2026-08-14 18:59:30.881975: ML Component: Data fetch completed, load data age 56.0 days, 16204 data points 2026-08-14 18:59:30.882105: ML Component: No training needed, model age is 1.63 hours 2026-08-14 18:59:30.882214: ML Component: Generating predictions load data age 56.0 days, 16204 data points 2026-08-14 18:59:30.995272: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.1476 max_dow {0: 0.10282812496256083, 1: 0.11130937486607581, 2: 0.11949062483031303, 3: 0.1146749994263053, 4: 0.1683562503574416, 5: 0.10359687502831222, 6: 0.10919687573947012} 2026-08-14 18:59:31.467675: ML Component: Generated 576 predictions (total 40.78 kWh over 48h) 2026-08-14 18:59:31.501339: ML Component: Prediction cycle completed 2026-08-14 18:59:31.603563: ML Component: Saved 16204 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 19:00:00.031649: --------------- PredBat - update at 2026-08-14 19:00:00+01:00 with clock skew 0 minutes, minutes now 1140 2026-08-14 19:00:00.033796: Saved current settings to /config/predbat_config.json 2026-08-14 19:00:00.033916: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 70.0 minutes 2026-08-14 19:00:00.034011: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 19:00:00.034082: Autoupdate: Currently up to date 2026-08-14 19:00:00.063414: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 19:00:00.063589: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 19:00:00.063877: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 19:00:00.064817: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 19:00:00.065050: Predbat mode is set to Control charge & discharge 2026-08-14 19:00:00.274446: Found 21602 load_today datapoints going back 27 days 2026-08-14 19:00:00.274598: Using load_power data to fill gaps in load_today data 2026-08-14 19:00:01.031094: Processing 721 30-minute periods for power integration 2026-08-14 19:00:01.196976: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 19:00:01.197146: Car charging hold False, threshold 6.0kWh 2026-08-14 19:00:01.197194: Current data so far today: load 19.55kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 19:00:01.214591: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 19:00:01.215109: Standing charge is set to 49.98p 2026-08-14 19:00:01.255077: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 19:00:01.255186: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 19:00:01.255431: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 505.0 minutes 2026-08-14 19:00:01.255840: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 505.0 minutes 2026-08-14 19:00:01.264585: Loaded 95 datapoints of futurerate analysis 2026-08-14 19:00:01.394170: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96'] 2026-08-14 19:00:01.431226: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 19:00:01.431572: Import rates: min 13.77p, max 43.82p, average 26.39p 2026-08-14 19:00:01.470286: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 19:00:01.470421: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 19:00:01.471756: High export rate found rates in range 99p to -99p 2026-08-14 19:00:01.569532: Low Import rate found rates in range 13.77p to 42.31p 2026-08-14 19:00:01.569687: Car 0 charging is not planned as it is not plugged in 2026-08-14 19:00:01.584822: Battery level now 8.36kWh, -1hr ago 10.08kWh, at midnight 2.43kWh, battery value change in the last hour -20.34p, change today 70.1p, rate_forward 11.83p 2026-08-14 19:00:01.585270: Last hour: net energy 0.05kWh, import 0.05kWh, export 0.0kWh, car 0kWh, load 1.85kWh, net cost 2.6p, import 2.6p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 19:00:01.660566: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 19:00:01.660739: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 19:00:01.749162: Using weighted-bucket historical load forecast over 14 days 2026-08-14 19:00:01.785873: Today's load divergence 137.91%, in-day adjustment 138.27%, damping 0.95x, yesterday 146.81% today 136.02% blend 20.83% 2026-08-14 19:00:01.785998: Today's predicted so far 10.83kWh with 0.0kWh car/iBoost excluded, 17.37kWh import ignored, and 10.83kWh forecast extra. 2026-08-14 19:00:01.786043: Today's actual load so far 19.53kWh with 0.0kWh car/iBoost excluded, and 17.37kWh import ignored. 2026-08-14 19:00:01.819479: Inverter 0: Type SK Sunsynk 2026-08-14 19:00:01.819558: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 19:00:01.819999: Reserve min: 7%, battery_min: 7% 2026-08-14 19:00:01.820062: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 19:00:01.820297: Inverter 0 SoC: 8.36kW 52%, current charge rate 5000W, current discharge rate 5250W, current battery power 1669W, current battery voltage 51.2V, grid power -55W, load power 1727W, PV Power 0W 2026-08-14 19:00:01.820431: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:00:01.820506: Inverter 0 scheduled charge enable is False 2026-08-14 19:00:01.820535: Inverter 0 charge windows currently [] 2026-08-14 19:00:01.820558: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 19:00:01.820646: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:00:01.820674: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:00:01.820704: Inverter 0 scheduled discharge enable is False 2026-08-14 19:00:01.820830: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:00:01.820860: Inverter 0 discharge windows currently [] 2026-08-14 19:00:01.820879: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:00:01.820893: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:00:01.820907: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:00:01.880658: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 19:00:01.880776: Plan was last updated on 2026-08-14 18:55:00+01:00 and is now 5.0 minutes old 2026-08-14 19:00:01.881080: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 19:00:01.881133: Best export window [ ] 2026-08-14 19:00:01.881987: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 19:00:01.885160: Load divergence over 8.0 hours mean 460.65W, min 279.0W, max 1138.2W, std dev 140.35W, divergence 15.23% 2026-08-14 19:00:01.905689: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 19:00:01.905826: LoadML is_calculating False 2026-08-14 19:00:01.905904: Creating pool of 12 processes to match your CPU count 2026-08-14 19:00:02.019724: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1324.48p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:25:00, load 46.01kWh, PV 0.0kWh 2026-08-14 19:00:02.172056: Battery has 7.42 hours left - now at 8.36kWh 2026-08-14 19:00:02.224182: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1356.19p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:05:00, load 47.27kWh, PV 0.0kWh 2026-08-14 19:00:02.298813: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1227.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:05:00, load 47.27kWh, PV 0.0kWh 2026-08-14 19:00:02.379927: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1201.19p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:25:00, load 46.01kWh, PV 0.0kWh 2026-08-14 19:00:02.380017: Saving plan best values to HA entities 2026-08-14 19:00:02.546000: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 19:00:02.551745: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 19:00:02.557573: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.83kWh, house 5.08kWh, export 0.0kWh, metric 1201.19p, metric10 1227.62p 2026-08-14 19:00:02.634421: Marginal costs baseline metric (no standing charge): 1101.2194 2026-08-14 19:00:02.948891: Marginal energy costs matrix computed: min=24.72 max=34.65 2026-08-14 19:00:03.033579: Rate array import [{'start': 1140, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1140, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 19:00:03.034269: - Your estimated bill for today is £7.31 and tomorrow is £4.09 2026-08-14 19:00:03.034315: - Import rates are very expensive (34.7p - 42.3p) for the next 3 hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 19:00:03.034335: - The battery is currently at 52% and is in eco mode for the next 16 hours. 2026-08-14 19:00:03.034350: - For the next 48 hours there will be no solar generation. 2026-08-14 19:00:03.034364: - You will run out of battery in 7 and a half hours. 2026-08-14 19:00:03.034378: - Your next charge slot will be in 16 hours where import rates will be cheap (15.5p). 2026-08-14 19:00:03.034391: 2026-08-14 19:00:03.099816: Plan calculation took 1.22 seconds 2026-08-14 19:00:03.103034: No high rate period found 2026-08-14 19:00:03.153555: Import threshold used for optimisation was 17.0p 2026-08-14 19:00:03.215206: Low import rate windows [0: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 1: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 2: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 3: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 4: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 5: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 6: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 7: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 8: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 9: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 10: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 11: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 12: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 13: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 14: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 15: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 16: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 17: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 18: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 19: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 20: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 21: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 22: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 23: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 24: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 25: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 26: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 27: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 28: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 29: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 30: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 31: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 32: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 33: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 34: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 35: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 36: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 37: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 38: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 39: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 40: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 41: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 42: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 43: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 44: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 45: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 46: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 47: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 48: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 49: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 50: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 51: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 52: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 53: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 54: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 55: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 56: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 57: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 58: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 59: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 60: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 61: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 62: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 63: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 64: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 65: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 66: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 67: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 68: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 69: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 70: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 71: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 72: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 73: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 74: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 75: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 76: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 77: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 78: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 79: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 80: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 81: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 82: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 83: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 84: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 85: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 86: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 87: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 88: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 89: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 90: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 91: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 92: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 93: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55] 2026-08-14 19:00:03.226075: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 52%, target 19% 2026-08-14 19:00:03.226235: Inverter 0 disabled charge window while waiting for schedule (now 08-14 19:00:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 19:00:03.226384: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:00:03.226729: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:00:03.226832: No export window planned 2026-08-14 19:00:03.226973: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 19:00:03.227012: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:00:03.227155: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:00:03.227364: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 19:00:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 19:00:03.227433: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 19:00:03.227519: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 19:00:03.227614: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:00:03.227678: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:00:03.227723: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:00:03.227750: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:00:03.227780: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:00:03.227804: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:00:03.227836: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:00:03.227903: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:00:03.227938: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:00:03.227963: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:00:03.227993: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:00:03.228017: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:00:03.228046: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:00:03.228071: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:00:03.228096: Inverter 0 count register writes 0 2026-08-14 19:00:03.250561: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 19:00:03.259511: Total inverter register writes now 815 2026-08-14 19:00:03.298203: Info: Completed run status Demand 2026-08-14 19:00:03.306139: Info: record_status Demand 2026-08-14 19:00:03.314215: Saved current settings to /config/predbat_config.json 2026-08-14 19:00:03.314583: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 19:00:42.434201: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:00:42.434478: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:00:42.434527: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:00:42.434682: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:00:42.434731: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:00:42.434754: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:00:42.434771: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:02:56.673716: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:02:56.673959: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:02:56.673994: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:02:56.674194: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:02:56.674244: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:02:56.674274: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:02:56.674339: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:04:56.909270: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:04:56.909593: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:04:56.909642: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:04:56.909906: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:04:56.909961: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:04:56.909984: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:04:56.910001: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:05:00.998466: --------------- PredBat - update at 2026-08-14 19:05:00+01:00 with clock skew 0 minutes, minutes now 1145 2026-08-14 19:05:00.999320: Saved current settings to /config/predbat_config.json 2026-08-14 19:05:00.999464: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 75.0 minutes 2026-08-14 19:05:00.999610: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 19:05:00.999708: Autoupdate: Currently up to date 2026-08-14 19:05:01.021692: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 19:05:01.021827: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 19:05:01.021994: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 19:05:01.022575: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 19:05:01.022701: Predbat mode is set to Control charge & discharge 2026-08-14 19:05:01.239411: Found 21602 load_today datapoints going back 27 days 2026-08-14 19:05:01.239578: Using load_power data to fill gaps in load_today data 2026-08-14 19:05:02.075800: Processing 721 30-minute periods for power integration 2026-08-14 19:05:02.270382: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 19:05:02.270539: Car charging hold False, threshold 6.0kWh 2026-08-14 19:05:02.270588: Current data so far today: load 19.7kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 19:05:02.287910: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 19:05:02.288407: Standing charge is set to 49.98p 2026-08-14 19:05:02.343046: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 19:05:02.343157: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 19:05:02.343388: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 510.0 minutes 2026-08-14 19:05:02.343826: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 510.0 minutes 2026-08-14 19:05:02.350623: Loaded 95 datapoints of futurerate analysis 2026-08-14 19:05:02.500990: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96'] 2026-08-14 19:05:02.549050: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 19:05:02.549526: Import rates: min 13.77p, max 43.82p, average 26.37p 2026-08-14 19:05:02.592569: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 19:05:02.592702: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 19:05:02.594134: High export rate found rates in range 99p to -99p 2026-08-14 19:05:02.698543: Low Import rate found rates in range 13.77p to 42.31p 2026-08-14 19:05:02.698687: Car 0 charging is not planned as it is not plugged in 2026-08-14 19:05:02.711325: Battery level now 8.36kWh, -1hr ago 9.95kWh, at midnight 2.43kWh, battery value change in the last hour -18.83p, change today 70.1p, rate_forward 11.83p 2026-08-14 19:05:02.711629: Last hour: net energy 0.05kWh, import 0.05kWh, export 0.0kWh, car 0kWh, load 1.9kWh, net cost 2.38p, import 2.38p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 19:05:02.770841: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 19:05:02.771025: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 19:05:02.851766: Using weighted-bucket historical load forecast over 14 days 2026-08-14 19:05:02.876131: Today's load divergence 138.35%, in-day adjustment 138.56%, damping 0.95x, yesterday 146.81% today 136.43% blend 20.49% 2026-08-14 19:05:02.876230: Today's predicted so far 10.9kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 10.9kWh forecast extra. 2026-08-14 19:05:02.876258: Today's actual load so far 19.76kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 19:05:02.909637: Inverter 0: Type SK Sunsynk 2026-08-14 19:05:02.909720: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 19:05:02.910205: Reserve min: 7%, battery_min: 7% 2026-08-14 19:05:02.910275: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 19:05:02.910502: Inverter 0 SoC: 8.09kW 51%, current charge rate 5000W, current discharge rate 5250W, current battery power 1827W, current battery voltage 51.2V, grid power -55W, load power 1882W, PV Power 0W 2026-08-14 19:05:02.910632: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:05:02.910705: Inverter 0 scheduled charge enable is False 2026-08-14 19:05:02.910729: Inverter 0 charge windows currently [] 2026-08-14 19:05:02.910749: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 19:05:02.910831: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:05:02.910879: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:05:02.910909: Inverter 0 scheduled discharge enable is False 2026-08-14 19:05:02.911014: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:05:02.911044: Inverter 0 discharge windows currently [] 2026-08-14 19:05:02.911061: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:05:02.911076: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:05:02.911092: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:05:02.963055: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 19:05:02.963152: Plan was last updated on 2026-08-14 18:55:00+01:00 and is now 10.0 minutes old 2026-08-14 19:05:02.963378: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 19:05:02.963428: Best export window [ ] 2026-08-14 19:05:02.964097: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 19:05:02.966618: Load divergence over 8.0 hours mean 462.14W, min 267.0W, max 1243.8W, std dev 162.05W, divergence 17.53% 2026-08-14 19:05:02.981879: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 19:05:02.981989: LoadML is_calculating False 2026-08-14 19:05:02.982046: Creating pool of 12 processes to match your CPU count 2026-08-14 19:05:03.084082: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1330.69p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:15:00, load 46.19kWh, PV 0.0kWh 2026-08-14 19:05:03.210297: Battery has 7.17 hours left - now at 8.09kWh 2026-08-14 19:05:03.248679: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1362.49p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 47.45kWh, PV 0.0kWh 2026-08-14 19:05:03.318733: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1239.41p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 47.45kWh, PV 0.0kWh 2026-08-14 19:05:03.407288: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1213.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:15:00, load 46.19kWh, PV 0.0kWh 2026-08-14 19:05:03.407386: Saving plan best values to HA entities 2026-08-14 19:05:03.662267: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 19:05:03.668835: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 19:05:03.675242: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.33kWh, house 5.27kWh, export 0.0kWh, metric 1213.95p, metric10 1239.41p 2026-08-14 19:05:03.759618: Marginal costs baseline metric (no standing charge): 1113.9791 2026-08-14 19:05:04.050143: Marginal energy costs matrix computed: min=24.73 max=34.81 2026-08-14 19:05:04.139070: Rate array import [{'start': 1145, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1145, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 19:05:04.139998: - Your estimated bill for today is £7.31 and tomorrow is £4.14 2026-08-14 19:05:04.140046: - Import rates are very expensive (34.7p - 42.3p) for the next 2 hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 19:05:04.140070: - The battery is currently at 51% and is in eco mode for the next 16 hours. 2026-08-14 19:05:04.140088: - For the next 48 hours there will be no solar generation. 2026-08-14 19:05:04.140111: - You will run out of battery in 7 and a quarter hours. 2026-08-14 19:05:04.140128: - Your next charge slot will be in 16 hours where import rates will be cheap (15.5p). 2026-08-14 19:05:04.140188: 2026-08-14 19:05:04.214622: Plan calculation took 1.25 seconds 2026-08-14 19:05:04.218501: No high rate period found 2026-08-14 19:05:04.272210: Import threshold used for optimisation was 17.0p 2026-08-14 19:05:04.331183: Low import rate windows [0: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 1: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 2: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 3: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 4: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 5: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 6: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 7: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 8: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 9: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 10: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 11: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 12: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 13: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 14: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 15: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 16: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 17: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 18: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 19: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 20: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 21: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 22: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 23: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 24: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 25: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 26: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 27: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 28: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 29: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 30: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 31: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 32: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 33: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 34: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 35: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 36: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 37: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 38: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 39: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 40: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 41: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 42: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 43: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 44: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 45: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 46: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 47: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 48: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 49: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 50: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 51: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 52: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 53: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 54: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 55: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 56: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 57: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 58: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 59: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 60: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 61: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 62: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 63: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 64: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 65: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 66: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 67: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 68: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 69: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 70: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 71: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 72: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 73: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 74: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 75: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 76: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 77: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 78: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 79: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 80: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 81: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 82: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 83: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 84: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 85: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 86: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 87: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 88: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 89: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 90: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 91: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 92: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 93: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 94: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58] 2026-08-14 19:05:04.339865: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 51%, target 19% 2026-08-14 19:05:04.340011: Inverter 0 disabled charge window while waiting for schedule (now 08-14 19:05:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 19:05:04.340186: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:05:04.340490: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:05:04.340584: No export window planned 2026-08-14 19:05:04.340710: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 19:05:04.340746: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:05:04.340880: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:05:04.341104: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 19:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 19:05:04.341200: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 19:05:04.341267: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 19:05:04.341365: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:05:04.341399: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:05:04.341431: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:05:04.341457: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:05:04.341481: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:05:04.341505: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:05:04.341536: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:05:04.341597: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:05:04.341633: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:05:04.341658: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:05:04.341703: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:05:04.341733: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:05:04.341763: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:05:04.341795: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:05:04.341816: Inverter 0 count register writes 0 2026-08-14 19:05:04.359866: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 19:05:04.360065: Recompute is saving previous plan... 2026-08-14 19:05:04.363400: Best charge window [ 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0% ] 2026-08-14 19:05:04.363485: Best export window [ ] 2026-08-14 19:05:04.364373: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 19:05:04.367723: Load divergence over 8.0 hours mean 462.14W, min 267.0W, max 1243.8W, std dev 162.05W, divergence 17.53% 2026-08-14 19:05:04.385733: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 19:05:04.385845: LoadML is_calculating False 2026-08-14 19:05:04.385910: Creating pool of 12 processes to match your CPU count 2026-08-14 19:05:04.485012: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 19:05:04.488005: Optimise levels pass started at 2026-08-14 19:05:04 2026-08-14 19:05:04.488089: Optimise all windows, total charge 94 export 1 2026-08-14 19:05:05.735577: >> Region optimisation pass width 960 gives best_metric 1166.61p, best_cost 1173.17p, best_cycle 37.82kWh, best_import 26.68kWh 2026-08-14 19:05:06.180543: >> Region optimisation pass width 480 gives best_metric 1166.61p, best_cost 1173.17p, best_cycle 37.82kWh, best_import 26.68kWh 2026-08-14 19:05:06.719722: >> Region optimisation pass width 240 gives best_metric 1166.61p, best_cost 1173.17p, best_cycle 37.82kWh, best_import 26.68kWh 2026-08-14 19:05:08.036074: >> Region optimisation pass width 120 gives best_metric 1166.61p, best_cost 1173.17p, best_cycle 37.82kWh, best_import 26.68kWh 2026-08-14 19:05:08.036697: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 80 2026-08-14 19:05:08.036827: Optimise levels pass ended at 2026-08-14 19:05:08, duration 3.5 seconds tried 324 combinations 2026-08-14 19:05:08.037033: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1166.61p, best_keep 0kWh, best_cycle 37.82kWh, best_carbon 0kg, best_import 26.68kWh 2026-08-14 19:05:08.064032: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 19:05:13.498147: Tweak plan optimisation started metric 1089.29p, cost 1098.41p 2026-08-14 19:05:13.807885: Tweak optimisation finished metric 1089.29p, cost 1098.41p, metric_keep 0kWh, cycle 31.53kWh, carbon 0kg, import 21.6kWh, changed 8 window(s) 2026-08-14 19:05:13.832192: Swap charge optimisation started metric 1089.29p, cost 1098.41p, min_improvement_swap 0.1p 2026-08-14 19:05:21.005035: Swap charge optimisation finished metric 1089.29p, cost 1098.41p 2026-08-14 19:05:21.111476: Raw charge windows [ 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100% ] reserve 1.12 2026-08-14 19:05:21.112110: Unclipped charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100% ] reserve 1.12 2026-08-14 19:05:21.112423: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100% ] reserve 1.12 2026-08-14 19:05:21.112686: Filtered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100% ] reserve 1.12 2026-08-14 19:05:21.150432: Previous plan best metric is 1089.29 (cost 1098.41) and new plan best metric is 1089.29 (cost 1098.41) 2026-08-14 19:05:21.150662: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 19:05:21.150854: Plan valid is now true after recompute was False 2026-08-14 19:05:21.180421: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1328.01p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:15:00, load 46.02kWh, PV 0.0kWh 2026-08-14 19:05:21.286786: Battery has 7.17 hours left - now at 8.09kWh 2026-08-14 19:05:21.325221: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1359.68p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 47.27kWh, PV 0.0kWh 2026-08-14 19:05:21.397601: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1225.86p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 47.27kWh, PV 0.0kWh 2026-08-14 19:05:21.470005: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1198.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:15:00, load 46.02kWh, PV 0.0kWh 2026-08-14 19:05:21.470097: Saving plan best values to HA entities 2026-08-14 19:05:21.616668: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 19:05:21.621805: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 19:05:21.626625: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.32kWh, house 5.27kWh, export 0.0kWh, metric 1198.38p, metric10 1225.86p 2026-08-14 19:05:21.695793: Marginal costs baseline metric (no standing charge): 1098.4144 2026-08-14 19:05:21.971896: Marginal energy costs matrix computed: min=24.73 max=34.81 2026-08-14 19:05:22.055816: Rate array import [{'start': 1145, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1145, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 19:05:22.056649: - Your estimated bill for today is £7.31 and tomorrow is £4.14 2026-08-14 19:05:22.056697: - Import rates are very expensive (34.7p - 42.3p) for the next 2 hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 19:05:22.056721: - The battery is currently at 51% and is in eco mode for the next 16 hours. 2026-08-14 19:05:22.056739: - For the next 48 hours there will be no solar generation. 2026-08-14 19:05:22.056761: - You will run out of battery in 7 and a quarter hours. 2026-08-14 19:05:22.056777: - Your next charge slot will be in 16 hours where import rates will be cheap (15.5p). 2026-08-14 19:05:22.056794: 2026-08-14 19:05:22.121100: Plan calculation took 17.76 seconds 2026-08-14 19:05:22.121553: Inverter 0: Type SK Sunsynk 2026-08-14 19:05:22.121621: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 19:05:22.122414: Reserve min: 7%, battery_min: 7% 2026-08-14 19:05:22.122526: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 19:05:22.122907: Inverter 0 SoC: 8.09kW 51%, current charge rate 5000W, current discharge rate 5250W, current battery power 1827W, current battery voltage 51.2V, grid power -55W, load power 1882W, PV Power 0W 2026-08-14 19:05:22.123201: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:05:22.123338: Inverter 0 scheduled charge enable is False 2026-08-14 19:05:22.123387: Inverter 0 charge windows currently [] 2026-08-14 19:05:22.123429: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 19:05:22.123593: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:05:22.123634: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:05:22.123683: Inverter 0 scheduled discharge enable is False 2026-08-14 19:05:22.123867: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:05:22.123910: Inverter 0 discharge windows currently [] 2026-08-14 19:05:22.123939: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:05:22.123981: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:05:22.124020: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:05:22.175861: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 51%, target 19% 2026-08-14 19:05:22.176016: Inverter 0 disabled charge window while waiting for schedule (now 08-14 19:05:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 19:05:22.176080: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:05:22.176296: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:05:22.176370: No export window planned 2026-08-14 19:05:22.176469: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 19:05:22.176526: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:05:22.176638: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:05:22.176829: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 19:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 19:05:22.176896: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 19:05:22.176942: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 19:05:22.177079: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:05:22.177122: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:05:22.177146: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:05:22.177183: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:05:22.177207: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:05:22.177232: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:05:22.177252: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:05:22.177301: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:05:22.177324: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:05:22.177344: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:05:22.177371: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:05:22.177392: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:05:22.177410: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:05:22.177429: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:05:22.177451: Inverter 0 count register writes 0 2026-08-14 19:05:22.196001: Total inverter register writes now 815 2026-08-14 19:05:22.234397: Info: Completed run status Demand 2026-08-14 19:05:22.243014: Info: record_status Demand 2026-08-14 19:05:22.251236: Saved current settings to /config/predbat_config.json 2026-08-14 19:05:22.251499: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 19:05:57.353011: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:05:57.353401: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:05:57.353461: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:05:57.353679: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:05:57.353728: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:05:57.353756: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:05:57.353791: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:08:11.590647: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:08:11.590916: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:08:11.590962: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:08:11.591195: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:08:11.591255: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:08:11.591276: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:08:11.591309: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:10:00.794763: --------------- PredBat - update at 2026-08-14 19:10:00+01:00 with clock skew 0 minutes, minutes now 1150 2026-08-14 19:10:00.795782: Saved current settings to /config/predbat_config.json 2026-08-14 19:10:00.796050: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 80.0 minutes 2026-08-14 19:10:00.796210: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 19:10:00.796310: Autoupdate: Currently up to date 2026-08-14 19:10:00.817969: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 19:10:00.818105: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 19:10:00.818334: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 19:10:00.818913: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 19:10:00.819060: Predbat mode is set to Control charge & discharge 2026-08-14 19:10:00.982789: Found 21602 load_today datapoints going back 28 days 2026-08-14 19:10:00.982946: Using load_power data to fill gaps in load_today data 2026-08-14 19:10:01.681322: Processing 721 30-minute periods for power integration 2026-08-14 19:10:01.848335: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 19:10:01.848459: Car charging hold False, threshold 6.0kWh 2026-08-14 19:10:01.848496: Current data so far today: load 19.85kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 19:10:01.862344: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 19:10:01.862774: Standing charge is set to 49.98p 2026-08-14 19:10:01.908092: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 19:10:01.908222: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 19:10:01.908435: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 515.0 minutes 2026-08-14 19:10:01.908829: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 515.0 minutes 2026-08-14 19:10:01.915482: Loaded 95 datapoints of futurerate analysis 2026-08-14 19:10:02.055150: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96'] 2026-08-14 19:10:02.096090: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 19:10:02.096500: Import rates: min 13.77p, max 43.82p, average 26.36p 2026-08-14 19:10:02.132075: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 19:10:02.132203: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 19:10:02.133346: High export rate found rates in range 99p to -99p 2026-08-14 19:10:02.215069: Low Import rate found rates in range 13.77p to 42.31p 2026-08-14 19:10:02.215204: Car 0 charging is not planned as it is not plugged in 2026-08-14 19:10:02.227785: Battery level now 8.09kWh, -1hr ago 9.92kWh, at midnight 2.43kWh, battery value change in the last hour -21.67p, change today 66.89p, rate_forward 11.83p 2026-08-14 19:10:02.228177: Last hour: net energy 0.04kWh, import 0.04kWh, export 0.0kWh, car 0kWh, load 1.9kWh, net cost 2.14p, import 2.14p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 19:10:02.300613: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 19:10:02.300774: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 19:10:02.396002: Using weighted-bucket historical load forecast over 14 days 2026-08-14 19:10:02.427974: Today's load divergence 138.63%, in-day adjustment 138.74%, damping 0.95x, yesterday 146.81% today 136.7% blend 20.14% 2026-08-14 19:10:02.428091: Today's predicted so far 10.9kWh with 0.0kWh car/iBoost excluded, 17.18kWh import ignored, and 10.9kWh forecast extra. 2026-08-14 19:10:02.428167: Today's actual load so far 19.87kWh with 0.0kWh car/iBoost excluded, and 17.18kWh import ignored. 2026-08-14 19:10:02.457423: Inverter 0: Type SK Sunsynk 2026-08-14 19:10:02.457500: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 19:10:02.457931: Reserve min: 7%, battery_min: 7% 2026-08-14 19:10:02.457995: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 19:10:02.458228: Inverter 0 SoC: 8.09kW 51%, current charge rate 5000W, current discharge rate 5250W, current battery power 1520W, current battery voltage 51.2V, grid power -54W, load power 1579W, PV Power 0W 2026-08-14 19:10:02.458360: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:10:02.458431: Inverter 0 scheduled charge enable is False 2026-08-14 19:10:02.458454: Inverter 0 charge windows currently [] 2026-08-14 19:10:02.458475: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 19:10:02.458560: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:10:02.458589: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:10:02.458618: Inverter 0 scheduled discharge enable is False 2026-08-14 19:10:02.458723: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:10:02.458754: Inverter 0 discharge windows currently [] 2026-08-14 19:10:02.458772: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:10:02.458787: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:10:02.458820: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:10:02.513775: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 19:10:02.513885: Plan was last updated on 2026-08-14 19:05:00+01:00 and is now 5.0 minutes old 2026-08-14 19:10:02.514153: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 19:10:02.514200: Best export window [ ] 2026-08-14 19:10:02.515192: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 19:10:02.518475: Load divergence over 8.0 hours mean 463.66W, min 274.8W, max 1206.0W, std dev 159.51W, divergence 17.2% 2026-08-14 19:10:02.537026: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 19:10:02.537154: LoadML is_calculating False 2026-08-14 19:10:02.537220: Creating pool of 12 processes to match your CPU count 2026-08-14 19:10:02.650839: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1328.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:15:00, load 46.23kWh, PV 0.0kWh 2026-08-14 19:10:02.773248: Battery has 7.08 hours left - now at 8.09kWh 2026-08-14 19:10:02.817552: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1360.21p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:55:00, load 47.48kWh, PV 0.0kWh 2026-08-14 19:10:02.893634: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1231.68p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:55:00, load 47.48kWh, PV 0.0kWh 2026-08-14 19:10:02.969562: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1205.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:15:00, load 46.23kWh, PV 0.0kWh 2026-08-14 19:10:02.969872: Saving plan best values to HA entities 2026-08-14 19:10:03.144590: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 19:10:03.150314: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 19:10:03.156214: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.82kWh, house 5.25kWh, export 0.0kWh, metric 1205.25p, metric10 1231.68p 2026-08-14 19:10:03.233155: Marginal costs baseline metric (no standing charge): 1105.2863 2026-08-14 19:10:03.487877: Marginal energy costs matrix computed: min=24.75 max=34.78 2026-08-14 19:10:03.567879: Rate array import [{'start': 1150, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1150, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 19:10:03.568574: - Your estimated bill for today is £7.31 and tomorrow is £4.13 2026-08-14 19:10:03.568616: - Import rates are very expensive (34.7p - 42.3p) for the next 2 and three quarters hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 19:10:03.568650: - The battery is currently at 51% and is in eco mode for the next 16 hours. 2026-08-14 19:10:03.568666: - For the next 48 hours there will be no solar generation. 2026-08-14 19:10:03.568684: - You will run out of battery in 7 hours. 2026-08-14 19:10:03.568698: - Your next charge slot will be in 16 hours where import rates will be cheap (15.5p). 2026-08-14 19:10:03.568712: 2026-08-14 19:10:03.626012: Plan calculation took 1.11 seconds 2026-08-14 19:10:03.629785: No high rate period found 2026-08-14 19:10:03.682556: Import threshold used for optimisation was 17.0p 2026-08-14 19:10:03.741075: Low import rate windows [0: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 1: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 2: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 3: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 4: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 5: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 6: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 7: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 8: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 9: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 10: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 11: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 12: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 13: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 14: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 15: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 16: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 17: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 18: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 19: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 20: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 21: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 22: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 23: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 24: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 25: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 26: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 27: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 28: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 29: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 30: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 31: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 32: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 33: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 34: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 35: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 36: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 37: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 38: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 39: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 40: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 41: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 42: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 43: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 44: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 45: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 46: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 47: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 48: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 49: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 50: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 51: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 52: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 53: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 54: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 55: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 56: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 57: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 58: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 59: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 60: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 61: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 62: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 63: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 64: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 65: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 66: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 67: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 68: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 69: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 70: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 71: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 72: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 73: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 74: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 75: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 76: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 77: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 78: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 79: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 80: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 81: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 82: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 83: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 84: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 85: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 86: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 87: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 88: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 89: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 90: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 91: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 92: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 93: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 94: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58] 2026-08-14 19:10:03.750149: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 51%, target 19% 2026-08-14 19:10:03.750300: Inverter 0 disabled charge window while waiting for schedule (now 08-14 19:10:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 19:10:03.750429: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:10:03.750692: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:10:03.750786: No export window planned 2026-08-14 19:10:03.750902: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 19:10:03.750937: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:10:03.751072: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:10:03.751378: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 19:10:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 19:10:03.751465: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 19:10:03.751549: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 19:10:03.751651: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:10:03.751686: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:10:03.751723: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:10:03.751748: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:10:03.751772: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:10:03.751802: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:10:03.751827: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:10:03.751888: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:10:03.751916: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:10:03.751941: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:10:03.751970: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:10:03.751993: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:10:03.752024: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:10:03.752048: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:10:03.752089: Inverter 0 count register writes 0 2026-08-14 19:10:03.769671: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 19:10:03.775392: Total inverter register writes now 815 2026-08-14 19:10:03.817557: Info: Completed run status Demand 2026-08-14 19:10:03.824570: Info: record_status Demand 2026-08-14 19:10:03.833168: Saved current settings to /config/predbat_config.json 2026-08-14 19:10:03.833510: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 19:10:41.948593: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:10:41.948834: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:10:41.948881: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:10:41.949054: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:10:41.949133: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:10:41.949171: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:10:41.949190: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:12:42.169533: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:12:42.169814: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:12:42.169851: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:12:42.170024: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:12:42.170107: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:12:42.170131: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:12:42.170149: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:14:42.382600: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:14:42.382867: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:14:42.382913: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:14:42.383113: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:14:42.383153: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:14:42.383192: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:14:42.383209: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:15:00.487578: --------------- PredBat - update at 2026-08-14 19:15:00+01:00 with clock skew 0 minutes, minutes now 1155 2026-08-14 19:15:00.488478: Saved current settings to /config/predbat_config.json 2026-08-14 19:15:00.488691: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 85.0 minutes 2026-08-14 19:15:00.488818: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 19:15:00.489080: Autoupdate: Currently up to date 2026-08-14 19:15:00.508094: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 19:15:00.508229: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 19:15:00.508483: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 19:15:00.509187: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 19:15:00.509383: Predbat mode is set to Control charge & discharge 2026-08-14 19:15:00.672886: Found 21602 load_today datapoints going back 28 days 2026-08-14 19:15:00.673142: Using load_power data to fill gaps in load_today data 2026-08-14 19:15:01.407068: Processing 721 30-minute periods for power integration 2026-08-14 19:15:01.579467: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 19:15:01.579594: Car charging hold False, threshold 6.0kWh 2026-08-14 19:15:01.579633: Current data so far today: load 20.0kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 19:15:01.593668: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 19:15:01.594103: Standing charge is set to 49.98p 2026-08-14 19:15:01.641914: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 19:15:01.642023: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 19:15:01.642248: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 520.0 minutes 2026-08-14 19:15:01.642647: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 520.0 minutes 2026-08-14 19:15:01.649573: Loaded 95 datapoints of futurerate analysis 2026-08-14 19:15:01.798641: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96'] 2026-08-14 19:15:01.843896: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 19:15:01.844321: Import rates: min 13.77p, max 43.82p, average 26.35p 2026-08-14 19:15:01.886641: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 19:15:01.886782: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 19:15:01.888138: High export rate found rates in range 99p to -99p 2026-08-14 19:15:01.988346: Low Import rate found rates in range 13.77p to 42.31p 2026-08-14 19:15:01.988500: Car 0 charging is not planned as it is not plugged in 2026-08-14 19:15:02.002420: Battery level now 8.09kWh, -1hr ago 9.84kWh, at midnight 2.43kWh, battery value change in the last hour -20.72p, change today 66.89p, rate_forward 11.83p 2026-08-14 19:15:02.003082: Last hour: net energy 0.04kWh, import 0.04kWh, export 0.0kWh, car 0kWh, load 1.9kWh, net cost 1.91p, import 1.91p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 19:15:02.071942: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 19:15:02.072132: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 19:15:02.166922: Using weighted-bucket historical load forecast over 14 days 2026-08-14 19:15:02.196910: Today's load divergence 138.88%, in-day adjustment 138.89%, damping 0.95x, yesterday 146.81% today 136.94% blend 19.79% 2026-08-14 19:15:02.197038: Today's predicted so far 10.91kWh with 0.0kWh car/iBoost excluded, 17.19kWh import ignored, and 10.91kWh forecast extra. 2026-08-14 19:15:02.197086: Today's actual load so far 19.97kWh with 0.0kWh car/iBoost excluded, and 17.19kWh import ignored. 2026-08-14 19:15:02.229812: Inverter 0: Type SK Sunsynk 2026-08-14 19:15:02.229907: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 19:15:02.230479: Reserve min: 7%, battery_min: 7% 2026-08-14 19:15:02.230565: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 19:15:02.230837: Inverter 0 SoC: 7.96kW 50%, current charge rate 5000W, current discharge rate 5250W, current battery power 1544W, current battery voltage 51.2V, grid power -54W, load power 1603W, PV Power 0W 2026-08-14 19:15:02.230994: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:15:02.231158: Inverter 0 scheduled charge enable is False 2026-08-14 19:15:02.231201: Inverter 0 charge windows currently [] 2026-08-14 19:15:02.231229: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 19:15:02.231352: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:15:02.231388: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:15:02.231423: Inverter 0 scheduled discharge enable is False 2026-08-14 19:15:02.231554: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:15:02.231590: Inverter 0 discharge windows currently [] 2026-08-14 19:15:02.231612: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:15:02.231635: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:15:02.231653: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:15:02.288110: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 19:15:02.288225: Plan was last updated on 2026-08-14 19:05:00+01:00 and is now 10.0 minutes old 2026-08-14 19:15:02.288487: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 19:15:02.288531: Best export window [ ] 2026-08-14 19:15:02.289439: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 19:15:02.292719: Load divergence over 8.0 hours mean 465.24W, min 279.0W, max 1164.0W, std dev 159.09W, divergence 17.1% 2026-08-14 19:15:02.312272: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 19:15:02.312407: LoadML is_calculating False 2026-08-14 19:15:02.312478: Creating pool of 12 processes to match your CPU count 2026-08-14 19:15:02.433727: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1332.02p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:10:00, load 46.44kWh, PV 0.0kWh 2026-08-14 19:15:02.569498: Battery has 6.92 hours left - now at 7.96kWh 2026-08-14 19:15:02.617365: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1363.83p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 47.7kWh, PV 0.0kWh 2026-08-14 19:15:02.701342: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1240.74p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 47.7kWh, PV 0.0kWh 2026-08-14 19:15:02.782917: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1215.28p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:10:00, load 46.44kWh, PV 0.0kWh 2026-08-14 19:15:02.783011: Saving plan best values to HA entities 2026-08-14 19:15:02.945347: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 19:15:02.950613: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 19:15:02.955951: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.34kWh, house 5.32kWh, export 0.0kWh, metric 1215.28p, metric10 1240.74p 2026-08-14 19:15:03.042008: Marginal costs baseline metric (no standing charge): 1115.3118 2026-08-14 19:15:03.335279: Marginal energy costs matrix computed: min=24.76 max=34.84 2026-08-14 19:15:03.428109: Rate array import [{'start': 1155, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1155, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 19:15:03.428788: - Your estimated bill for today is £7.31 and tomorrow is £4.15 2026-08-14 19:15:03.428827: - Import rates are very expensive (34.7p - 42.3p) for the next 2 and three quarters hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 19:15:03.428846: - The battery is currently at 50% and is in eco mode for the next 16 hours. 2026-08-14 19:15:03.428860: - For the next 48 hours there will be no solar generation. 2026-08-14 19:15:03.428874: - You will run out of battery in 6 hours. 2026-08-14 19:15:03.428899: - Your next charge slot will be in 16 hours where import rates will be cheap (15.5p). 2026-08-14 19:15:03.428913: 2026-08-14 19:15:03.496861: Plan calculation took 1.21 seconds 2026-08-14 19:15:03.500616: No high rate period found 2026-08-14 19:15:03.558672: Import threshold used for optimisation was 17.0p 2026-08-14 19:15:03.620189: Low import rate windows [0: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 1: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 2: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 3: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 4: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 5: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 6: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 7: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 8: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 9: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 10: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 11: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 12: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 13: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 14: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 15: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 16: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 17: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 18: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 19: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 20: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 21: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 22: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 23: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 24: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 25: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 26: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 27: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 28: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 29: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 30: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 31: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 32: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 33: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 34: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 35: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 36: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 37: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 38: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 39: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 40: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 41: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 42: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 43: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 44: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 45: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 46: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 47: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 48: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 49: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 50: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 51: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 52: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 53: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 54: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 55: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 56: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 57: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 58: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 59: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 60: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 61: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 62: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 63: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 64: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 65: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 66: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 67: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 68: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 69: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 70: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 71: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 72: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 73: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 74: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 75: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 76: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 77: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 78: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 79: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 80: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 81: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 82: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 83: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 84: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 85: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 86: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 87: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 88: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 89: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 90: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 91: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 92: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 93: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 94: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58] 2026-08-14 19:15:03.630103: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 50%, target 19% 2026-08-14 19:15:03.630264: Inverter 0 disabled charge window while waiting for schedule (now 08-14 19:15:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 19:15:03.630381: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:15:03.630659: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:15:03.630756: No export window planned 2026-08-14 19:15:03.630883: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 19:15:03.630923: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:15:03.631087: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:15:03.631312: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 19:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 19:15:03.631382: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 19:15:03.631443: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 19:15:03.631542: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:15:03.631579: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:15:03.631607: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:15:03.631631: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:15:03.631656: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:15:03.631690: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:15:03.631716: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:15:03.631786: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:15:03.631825: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:15:03.631857: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:15:03.631882: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:15:03.631913: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:15:03.631936: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:15:03.631968: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:15:03.631989: Inverter 0 count register writes 0 2026-08-14 19:15:03.657271: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 19:15:03.657542: Recompute is saving previous plan... 2026-08-14 19:15:03.661567: Best charge window [ 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0% ] 2026-08-14 19:15:03.661702: Best export window [ ] 2026-08-14 19:15:03.662863: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 19:15:03.667594: Load divergence over 8.0 hours mean 465.24W, min 279.0W, max 1164.0W, std dev 159.09W, divergence 17.1% 2026-08-14 19:15:03.685982: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 19:15:03.686140: LoadML is_calculating False 2026-08-14 19:15:03.686218: Creating pool of 12 processes to match your CPU count 2026-08-14 19:15:03.777656: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 19:15:03.780241: Optimise levels pass started at 2026-08-14 19:15:03 2026-08-14 19:15:03.780328: Optimise all windows, total charge 94 export 1 2026-08-14 19:15:05.029017: >> Region optimisation pass width 960 gives best_metric 1168.9p, best_cost 1174.56p, best_cycle 37.74kWh, best_import 26.75kWh 2026-08-14 19:15:05.444816: >> Region optimisation pass width 480 gives best_metric 1168.9p, best_cost 1174.56p, best_cycle 37.74kWh, best_import 26.75kWh 2026-08-14 19:15:05.985981: >> Region optimisation pass width 240 gives best_metric 1168.9p, best_cost 1174.56p, best_cycle 37.74kWh, best_import 26.75kWh 2026-08-14 19:15:07.396266: >> Region optimisation pass width 120 gives best_metric 1168.9p, best_cost 1174.56p, best_cycle 37.74kWh, best_import 26.75kWh 2026-08-14 19:15:07.396647: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 80 2026-08-14 19:15:07.396724: Optimise levels pass ended at 2026-08-14 19:15:07, duration 3.6 seconds tried 324 combinations 2026-08-14 19:15:07.396787: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1168.9p, best_keep 0kWh, best_cycle 37.74kWh, best_carbon 0kg, best_import 26.75kWh 2026-08-14 19:15:07.417339: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 19:15:12.529629: Tweak plan optimisation started metric 1090.39p, cost 1099.51p 2026-08-14 19:15:12.850249: Tweak optimisation finished metric 1090.39p, cost 1099.51p, metric_keep 0kWh, cycle 31.41kWh, carbon 0kg, import 21.64kWh, changed 8 window(s) 2026-08-14 19:15:12.870182: Swap charge optimisation started metric 1090.39p, cost 1099.51p, min_improvement_swap 0.1p 2026-08-14 19:15:18.827995: Swap charge optimisation finished metric 1090.39p, cost 1099.51p 2026-08-14 19:15:18.919007: Raw charge windows [ 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100% ] reserve 1.12 2026-08-14 19:15:18.919493: Unclipped charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100% ] reserve 1.12 2026-08-14 19:15:18.919722: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100% ] reserve 1.12 2026-08-14 19:15:18.919912: Filtered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100% ] reserve 1.12 2026-08-14 19:15:18.949665: Previous plan best metric is 1090.39 (cost 1099.51) and new plan best metric is 1090.39 (cost 1099.51) 2026-08-14 19:15:18.950253: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 19:15:18.950440: Plan valid is now true after recompute was False 2026-08-14 19:15:18.974842: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1329.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:10:00, load 46.25kWh, PV 0.0kWh 2026-08-14 19:15:19.080697: Battery has 6.92 hours left - now at 7.96kWh 2026-08-14 19:15:19.118814: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1360.77p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 47.5kWh, PV 0.0kWh 2026-08-14 19:15:19.185557: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1226.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 47.5kWh, PV 0.0kWh 2026-08-14 19:15:19.257314: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1199.48p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:10:00, load 46.25kWh, PV 0.0kWh 2026-08-14 19:15:19.257409: Saving plan best values to HA entities 2026-08-14 19:15:19.405763: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 19:15:19.411089: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 19:15:19.416883: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.32kWh, house 5.32kWh, export 0.0kWh, metric 1199.48p, metric10 1226.95p 2026-08-14 19:15:19.492834: Marginal costs baseline metric (no standing charge): 1099.5107 2026-08-14 19:15:19.748457: Marginal energy costs matrix computed: min=24.76 max=34.84 2026-08-14 19:15:19.839760: Rate array import [{'start': 1155, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1155, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 19:15:19.840988: - Your estimated bill for today is £7.31 and tomorrow is £4.15 2026-08-14 19:15:19.841084: - Import rates are very expensive (34.7p - 42.3p) for the next 2 and three quarters hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 19:15:19.841125: - The battery is currently at 50% and is in eco mode for the next 16 hours. 2026-08-14 19:15:19.841169: - For the next 48 hours there will be no solar generation. 2026-08-14 19:15:19.841191: - You will run out of battery in 6 hours. 2026-08-14 19:15:19.841222: - Your next charge slot will be in 16 hours where import rates will be cheap (15.5p). 2026-08-14 19:15:19.841256: 2026-08-14 19:15:19.915440: Plan calculation took 16.26 seconds 2026-08-14 19:15:19.915813: Inverter 0: Type SK Sunsynk 2026-08-14 19:15:19.915869: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 19:15:19.916485: Reserve min: 7%, battery_min: 7% 2026-08-14 19:15:19.916593: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 19:15:19.916913: Inverter 0 SoC: 7.84kW 49%, current charge rate 5000W, current discharge rate 5250W, current battery power 1540W, current battery voltage 51.2V, grid power -54W, load power 1598W, PV Power 0W 2026-08-14 19:15:19.917231: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:15:19.917366: Inverter 0 scheduled charge enable is False 2026-08-14 19:15:19.917422: Inverter 0 charge windows currently [] 2026-08-14 19:15:19.917470: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 19:15:19.917619: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:15:19.917662: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:15:19.917717: Inverter 0 scheduled discharge enable is False 2026-08-14 19:15:19.917884: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:15:19.917930: Inverter 0 discharge windows currently [] 2026-08-14 19:15:19.917965: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:15:19.917994: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:15:19.918022: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:15:19.971387: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 49%, target 19% 2026-08-14 19:15:19.971540: Inverter 0 disabled charge window while waiting for schedule (now 08-14 19:15:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 19:15:19.971614: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:15:19.971834: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:15:19.971914: No export window planned 2026-08-14 19:15:19.972028: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 19:15:19.972080: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:15:19.972237: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:15:19.972401: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 19:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 19:15:19.972455: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 19:15:19.972512: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 19:15:19.972603: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:15:19.972643: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:15:19.972676: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:15:19.972701: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:15:19.972725: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:15:19.972753: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:15:19.972778: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:15:19.972833: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:15:19.972866: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:15:19.972891: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:15:19.972919: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:15:19.972943: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:15:19.973113: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:15:19.973152: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:15:19.973175: Inverter 0 count register writes 0 2026-08-14 19:15:20.007705: Total inverter register writes now 815 2026-08-14 19:15:20.039830: Info: Completed run status Demand 2026-08-14 19:15:20.046539: Info: record_status Demand 2026-08-14 19:15:20.053355: Saved current settings to /config/predbat_config.json 2026-08-14 19:15:20.053730: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 19:15:57.165701: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:15:57.165983: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:15:57.166090: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:15:57.166262: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:15:57.166311: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:15:57.166332: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:15:57.166357: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:17:57.381898: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:17:57.382186: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:17:57.382231: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:17:57.382418: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:17:57.382457: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:17:57.382478: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:17:57.382495: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:20:00.605972: --------------- PredBat - update at 2026-08-14 19:20:00+01:00 with clock skew 0 minutes, minutes now 1160 2026-08-14 19:20:00.606893: Saved current settings to /config/predbat_config.json 2026-08-14 19:20:00.607056: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 90.0 minutes 2026-08-14 19:20:00.607227: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 19:20:00.607376: Autoupdate: Currently up to date 2026-08-14 19:20:00.627064: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 19:20:00.627228: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 19:20:00.627396: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 19:20:00.627959: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 19:20:00.628083: Predbat mode is set to Control charge & discharge 2026-08-14 19:20:00.866653: Found 21602 load_today datapoints going back 28 days 2026-08-14 19:20:00.866823: Using load_power data to fill gaps in load_today data 2026-08-14 19:20:01.661793: Processing 721 30-minute periods for power integration 2026-08-14 19:20:01.849765: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 19:20:01.849901: Car charging hold False, threshold 6.0kWh 2026-08-14 19:20:01.849972: Current data so far today: load 20.0kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 19:20:01.867737: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 19:20:01.868256: Standing charge is set to 49.98p 2026-08-14 19:20:01.931191: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 19:20:01.931299: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 19:20:01.931522: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 525.0 minutes 2026-08-14 19:20:01.931941: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 525.0 minutes 2026-08-14 19:20:01.940153: Loaded 95 datapoints of futurerate analysis 2026-08-14 19:20:02.101658: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96'] 2026-08-14 19:20:02.147140: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 19:20:02.147560: Import rates: min 13.77p, max 43.82p, average 26.33p 2026-08-14 19:20:02.189771: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 19:20:02.189886: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 19:20:02.191186: High export rate found rates in range 99p to -99p 2026-08-14 19:20:02.295491: Low Import rate found rates in range 13.77p to 42.31p 2026-08-14 19:20:02.295620: Car 0 charging is not planned as it is not plugged in 2026-08-14 19:20:02.307854: Battery level now 7.96kWh, -1hr ago 9.43kWh, at midnight 2.43kWh, battery value change in the last hour -17.41p, change today 65.37p, rate_forward 11.83p 2026-08-14 19:20:02.308248: Last hour: net energy 0.03kWh, import 0.03kWh, export 0.0kWh, car 0kWh, load 1.7kWh, net cost 1.68p, import 1.68p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 19:20:02.362807: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 19:20:02.362957: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 19:20:02.456185: Using weighted-bucket historical load forecast over 14 days 2026-08-14 19:20:02.486546: Today's load divergence 138.73%, in-day adjustment 138.74%, damping 0.95x, yesterday 146.81% today 136.79% blend 19.44% 2026-08-14 19:20:02.486656: Today's predicted so far 10.93kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 10.93kWh forecast extra. 2026-08-14 19:20:02.486697: Today's actual load so far 19.94kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 19:20:02.519030: Inverter 0: Type SK Sunsynk 2026-08-14 19:20:02.519136: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 19:20:02.519676: Reserve min: 7%, battery_min: 7% 2026-08-14 19:20:02.519752: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 19:20:02.520013: Inverter 0 SoC: 7.84kW 49%, current charge rate 5000W, current discharge rate 5250W, current battery power 1513W, current battery voltage 51.2V, grid power -54W, load power 1575W, PV Power 0W 2026-08-14 19:20:02.520190: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:20:02.520282: Inverter 0 scheduled charge enable is False 2026-08-14 19:20:02.520312: Inverter 0 charge windows currently [] 2026-08-14 19:20:02.520341: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 19:20:02.520444: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:20:02.520480: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:20:02.520515: Inverter 0 scheduled discharge enable is False 2026-08-14 19:20:02.520637: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:20:02.520673: Inverter 0 discharge windows currently [] 2026-08-14 19:20:02.520695: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:20:02.520715: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:20:02.520732: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:20:02.583036: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 19:20:02.583171: Plan was last updated on 2026-08-14 19:15:00+01:00 and is now 5.0 minutes old 2026-08-14 19:20:02.583411: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 19:20:02.583454: Best export window [ ] 2026-08-14 19:20:02.584330: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 19:20:02.587472: Load divergence over 8.0 hours mean 466.78W, min 319.8W, max 1182.6W, std dev 146.58W, divergence 15.7% 2026-08-14 19:20:02.606056: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 19:20:02.606171: LoadML is_calculating False 2026-08-14 19:20:02.606235: Creating pool of 12 processes to match your CPU count 2026-08-14 19:20:02.721432: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1332.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:05:00, load 46.3kWh, PV 0.0kWh 2026-08-14 19:20:02.839604: Battery has 6.75 hours left - now at 7.84kWh 2026-08-14 19:20:02.885019: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1364.14p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:40:00, load 47.55kWh, PV 0.0kWh 2026-08-14 19:20:02.959182: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1235.6p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:40:00, load 47.55kWh, PV 0.0kWh 2026-08-14 19:20:03.039145: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1209.14p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:05:00, load 46.3kWh, PV 0.0kWh 2026-08-14 19:20:03.039262: Saving plan best values to HA entities 2026-08-14 19:20:03.225750: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 19:20:03.231102: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 19:20:03.236362: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.83kWh, house 5.39kWh, export 0.0kWh, metric 1209.14p, metric10 1235.6p 2026-08-14 19:20:03.324485: Marginal costs baseline metric (no standing charge): 1109.1736 2026-08-14 19:20:03.538167: Marginal energy costs matrix computed: min=24.78 max=34.87 2026-08-14 19:20:03.608019: Rate array import [{'start': 1160, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1160, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 19:20:03.608757: - Your estimated bill for today is £7.31 and tomorrow is £4.17 2026-08-14 19:20:03.608801: - Import rates are very expensive (34.7p - 42.3p) for the next 2 and three quarters hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 19:20:03.608820: - The battery is currently at 49% and is in eco mode for the next 16 hours. 2026-08-14 19:20:03.608835: - For the next 48 hours there will be no solar generation. 2026-08-14 19:20:03.608853: - You will run out of battery in 6 and three quarters hours. 2026-08-14 19:20:03.608882: - Your next charge slot will be in 16 hours where import rates will be cheap (15.5p). 2026-08-14 19:20:03.608910: 2026-08-14 19:20:03.672103: Plan calculation took 1.09 seconds 2026-08-14 19:20:03.675157: No high rate period found 2026-08-14 19:20:03.728056: Import threshold used for optimisation was 17.0p 2026-08-14 19:20:03.773507: Low import rate windows [0: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 1: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 2: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 3: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 4: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 5: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 6: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 7: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 8: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 9: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 10: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 11: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 12: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 13: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 14: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 15: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 16: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 17: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 18: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 19: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 20: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 21: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 22: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 23: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 24: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 25: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 26: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 27: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 28: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 29: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 30: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 31: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 32: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 33: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 34: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 35: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 36: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 37: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 38: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 39: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 40: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 41: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 42: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 43: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 44: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 45: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 46: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 47: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 48: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 49: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 50: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 51: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 52: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 53: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 54: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 55: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 56: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 57: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 58: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 59: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 60: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 61: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 62: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 63: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 64: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 65: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 66: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 67: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 68: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 69: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 70: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 71: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 72: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 73: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 74: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 75: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 76: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 77: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 78: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 79: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 80: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 81: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 82: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 83: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 84: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 85: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 86: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 87: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 88: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 89: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 90: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 91: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 92: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 93: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 94: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58] 2026-08-14 19:20:03.780647: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 49%, target 19% 2026-08-14 19:20:03.780771: Inverter 0 disabled charge window while waiting for schedule (now 08-14 19:20:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 19:20:03.780900: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:20:03.781191: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:20:03.781282: No export window planned 2026-08-14 19:20:03.781377: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 19:20:03.781401: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:20:03.781533: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:20:03.781689: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 19:20:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 19:20:03.781742: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 19:20:03.781791: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 19:20:03.781871: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:20:03.781923: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:20:03.781947: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:20:03.781967: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:20:03.781988: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:20:03.782012: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:20:03.782032: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:20:03.782083: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:20:03.782111: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:20:03.782146: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:20:03.782165: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:20:03.782185: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:20:03.782208: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:20:03.782227: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:20:03.782244: Inverter 0 count register writes 0 2026-08-14 19:20:03.796782: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 19:20:03.801794: Total inverter register writes now 815 2026-08-14 19:20:03.834596: Info: Completed run status Demand 2026-08-14 19:20:03.840243: Info: record_status Demand 2026-08-14 19:20:03.846233: Saved current settings to /config/predbat_config.json 2026-08-14 19:20:03.846490: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 19:20:32.775264: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 19:20:33.882509: Processing 1345 30-minute periods for power integration 2026-08-14 19:20:33.983225: ML Component: Car charging hold False, car energy reported load False 2026-08-14 19:20:34.086340: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 19:20:34.184236: ML Temperature data points: 49241 2026-08-14 19:20:34.440482: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 19:20:34.488633: ML Component: Data fetch completed, load data age 56.0 days, 16209 data points 2026-08-14 19:20:34.488776: ML Component: Starting fine-tune training (2h interval), model age is 2.0456058008333335 hours 2026-08-14 19:20:34.488840: ML Component: Doing training... 2026-08-14 19:20:34.506351: ML Predictor: Curriculum training - capped to last 4 intermediate passes (starting at window=53.0 days) 2026-08-14 19:20:34.506504: ML Predictor: Curriculum training - 5 passes, window 53.0→56.0 days + final full pass (56.3 days) 2026-08-14 19:20:34.564489: ML Predictor: Curriculum pass 1/5: window=53.0 days (1272 hours of data) 2026-08-14 19:20:34.564623: ML Predictor: Starting initial training with 30 epochs 2026-08-14 19:20:35.090743: ML Predictor: Creating dataset with 1272 hours of training data, 48 hours validation 2026-08-14 19:20:39.656203: ML Predictor: Created 14976 training samples, 576 validation samples 2026-08-14 19:20:39.957257: ML Predictor: Normalization stats [fit] target(mean=0.0587 std=0.0472) load(mean=0.0589 std=0.0470) pv(mean=0.0000 std=0.0100) temp(mean=19.4859 std=4.4023) import_rate(mean=24.2395 std=1.9636) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1907 std=0.5232) 2026-08-14 19:20:41.662022: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:20:41.662336: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:20:41.662391: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:20:41.662707: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:20:41.662757: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:20:41.662781: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:20:41.662801: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:20:53.702445: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0108 val_mae=0.0027 kWh val_bias=+0.0000 kWh (+0.0%) combined=0.0016 kWh ema_combined=0.0016 kWh 2026-08-14 19:21:08.612689: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0103 val_mae=0.0028 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0015 kWh ema_combined=0.0016 kWh 2026-08-14 19:21:22.718597: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0102 val_mae=0.0024 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0013 kWh ema_combined=0.0015 kWh 2026-08-14 19:21:36.932504: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0094 val_mae=0.0024 kWh val_bias=+0.0002 kWh (+0.4%) combined=0.0014 kWh ema_combined=0.0015 kWh 2026-08-14 19:21:57.538721: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0094 val_mae=0.0026 kWh val_bias=-0.0013 kWh (-2.3%) combined=0.0025 kWh ema_combined=0.0018 kWh 2026-08-14 19:22:18.178867: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0091 val_mae=0.0026 kWh val_bias=-0.0005 kWh (-0.9%) combined=0.0013 kWh ema_combined=0.0016 kWh 2026-08-14 19:22:38.940258: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0103 val_mae=0.0023 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0012 kWh ema_combined=0.0015 kWh 2026-08-14 19:22:41.971557: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:22:41.971889: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:22:41.972068: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:22:41.972607: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:22:41.972814: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:22:41.973252: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:22:41.973322: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:22:58.723553: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0098 val_mae=0.0027 kWh val_bias=+0.0009 kWh (+1.5%) combined=0.0014 kWh ema_combined=0.0015 kWh 2026-08-14 19:23:22.592768: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0102 val_mae=0.0024 kWh val_bias=+0.0005 kWh (+0.9%) combined=0.0019 kWh ema_combined=0.0016 kWh 2026-08-14 19:23:44.001479: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0085 val_mae=0.0020 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0010 kWh ema_combined=0.0014 kWh 2026-08-14 19:24:04.116638: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0099 val_mae=0.0024 kWh val_bias=+0.0004 kWh (+0.6%) combined=0.0020 kWh ema_combined=0.0016 kWh 2026-08-14 19:24:24.215629: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0088 val_mae=0.0019 kWh val_bias=+0.0004 kWh (+0.7%) combined=0.0014 kWh ema_combined=0.0015 kWh 2026-08-14 19:24:42.449977: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:24:42.450435: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:24:42.450545: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:24:42.450812: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:24:42.450874: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:24:42.451000: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:24:42.451048: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:24:44.260622: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0070 val_mae=0.0019 kWh val_bias=-0.0002 kWh (-0.3%) combined=0.0010 kWh ema_combined=0.0014 kWh 2026-08-14 19:25:00.755295: --------------- PredBat - update at 2026-08-14 19:25:00+01:00 with clock skew 0 minutes, minutes now 1165 2026-08-14 19:25:00.756388: Saved current settings to /config/predbat_config.json 2026-08-14 19:25:00.756578: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 95.0 minutes 2026-08-14 19:25:00.756709: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 19:25:00.756832: Autoupdate: Currently up to date 2026-08-14 19:25:00.787077: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 19:25:00.787431: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 19:25:00.787818: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 19:25:00.788545: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 19:25:00.789744: Predbat mode is set to Control charge & discharge 2026-08-14 19:25:01.124009: Found 21602 load_today datapoints going back 28 days 2026-08-14 19:25:01.124196: Using load_power data to fill gaps in load_today data 2026-08-14 19:25:02.470833: Processing 721 30-minute periods for power integration 2026-08-14 19:25:02.818422: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 19:25:02.818623: Car charging hold False, threshold 6.0kWh 2026-08-14 19:25:02.818704: Current data so far today: load 20.1kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 19:25:02.840531: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 19:25:02.841071: Standing charge is set to 49.98p 2026-08-14 19:25:03.027011: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 19:25:03.027268: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 19:25:03.027584: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 530.0 minutes 2026-08-14 19:25:03.028147: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 530.0 minutes 2026-08-14 19:25:03.035254: Loaded 95 datapoints of futurerate analysis 2026-08-14 19:25:03.211777: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96'] 2026-08-14 19:25:03.280848: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 19:25:03.281503: Import rates: min 13.77p, max 43.82p, average 26.32p 2026-08-14 19:25:03.349130: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 19:25:03.349583: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 19:25:03.351794: High export rate found rates in range 99p to -99p 2026-08-14 19:25:03.689306: Low Import rate found rates in range 13.77p to 42.31p 2026-08-14 19:25:03.703863: Car 0 charging is not planned as it is not plugged in 2026-08-14 19:25:03.735427: Battery level now 7.84kWh, -1hr ago 9.43kWh, at midnight 2.43kWh, battery value change in the last hour -18.83p, change today 63.96p, rate_forward 11.83p 2026-08-14 19:25:03.736019: Last hour: net energy 0.03kWh, import 0.03kWh, export 0.0kWh, car 0kWh, load 1.6kWh, net cost 1.45p, import 1.45p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 19:25:03.927541: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 19:25:03.931778: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 19:25:04.106673: Using weighted-bucket historical load forecast over 14 days 2026-08-14 19:25:04.140405: Today's load divergence 138.8%, in-day adjustment 138.76%, damping 0.95x, yesterday 146.81% today 136.86% blend 19.1% 2026-08-14 19:25:04.140622: Today's predicted so far 10.95kWh with 0.0kWh car/iBoost excluded, 17.38kWh import ignored, and 10.95kWh forecast extra. 2026-08-14 19:25:04.140709: Today's actual load so far 19.99kWh with 0.0kWh car/iBoost excluded, and 17.38kWh import ignored. 2026-08-14 19:25:04.216347: Inverter 0: Type SK Sunsynk 2026-08-14 19:25:04.216612: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 19:25:04.217734: Reserve min: 7%, battery_min: 7% 2026-08-14 19:25:04.218043: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 19:25:04.218580: Inverter 0 SoC: 7.68kW 48%, current charge rate 5000W, current discharge rate 5250W, current battery power 1570W, current battery voltage 51.2V, grid power -55W, load power 1631W, PV Power 0W 2026-08-14 19:25:04.218956: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:25:04.219254: Inverter 0 scheduled charge enable is False 2026-08-14 19:25:04.219493: Inverter 0 charge windows currently [] 2026-08-14 19:25:04.219685: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 19:25:04.220014: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:25:04.220223: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:25:04.220510: Inverter 0 scheduled discharge enable is False 2026-08-14 19:25:04.220862: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:25:04.221118: Inverter 0 discharge windows currently [] 2026-08-14 19:25:04.221349: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:25:04.221555: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:25:04.221695: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:25:04.466387: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 19:25:04.466831: Plan was last updated on 2026-08-14 19:15:00+01:00 and is now 10.0 minutes old 2026-08-14 19:25:04.467407: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 19:25:04.467883: Best export window [ ] 2026-08-14 19:25:04.469368: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 19:25:04.489967: Load divergence over 8.0 hours mean 468.41W, min 291.0W, max 1057.8W, std dev 135.01W, divergence 14.41% 2026-08-14 19:25:04.534924: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 19:25:04.543300: LoadML is_calculating True 2026-08-14 19:25:04.543541: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 19:25:04.583164: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1336.64p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:55:00, load 46.45kWh, PV 0.0kWh 2026-08-14 19:25:04.814904: Battery has 6.5 hours left - now at 7.68kWh 2026-08-14 19:25:04.876523: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1368.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:35:00, load 47.7kWh, PV 0.0kWh 2026-08-14 19:25:04.994007: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1245.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:35:00, load 47.7kWh, PV 0.0kWh 2026-08-14 19:25:05.201322: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1219.81p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:55:00, load 46.45kWh, PV 0.0kWh 2026-08-14 19:25:05.205651: Saving plan best values to HA entities 2026-08-14 19:25:05.527315: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 19:25:05.542466: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 19:25:05.549722: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.35kWh, house 5.49kWh, export 0.0kWh, metric 1219.81p, metric10 1245.29p 2026-08-14 19:25:05.689668: Marginal costs baseline metric (no standing charge): 1119.8432 2026-08-14 19:25:06.105550: Marginal energy costs matrix computed: min=24.8 max=34.94 2026-08-14 19:25:06.300265: Rate array import [{'start': 1165, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1165, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 19:25:06.301169: - Your estimated bill for today is £7.31 and tomorrow is £4.20 2026-08-14 19:25:06.301230: - Import rates are very expensive (34.7p - 42.3p) for the next 2 and a half hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 19:25:06.301254: - The battery is currently at 48% and is in eco mode for the next 16 hours. 2026-08-14 19:25:06.301272: - For the next 48 hours there will be no solar generation. 2026-08-14 19:25:06.301306: - You will run out of battery in 6 and a half hours. 2026-08-14 19:25:06.301323: - Your next charge slot will be in 16 hours where import rates will be cheap (15.5p). 2026-08-14 19:25:06.301340: 2026-08-14 19:25:06.362785: Plan calculation took 1.90 seconds 2026-08-14 19:25:06.368835: No high rate period found 2026-08-14 19:25:06.469810: Import threshold used for optimisation was 17.0p 2026-08-14 19:25:06.637132: Low import rate windows [0: 08-14 19:00:00 - 08-14 19:30:00 @ 40.1, 1: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 2: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 3: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 4: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 5: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 6: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 7: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 8: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 9: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 10: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 11: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 12: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 13: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 14: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 15: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 16: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 17: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 18: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 19: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 20: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 21: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 22: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 23: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 24: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 25: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 26: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 27: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 28: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 29: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 30: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 31: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 32: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 33: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 34: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 35: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 36: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 37: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 38: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 39: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 40: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 41: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 42: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 43: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 44: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 45: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 46: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 47: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 48: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 49: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 50: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 51: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 52: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 53: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 54: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 55: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 56: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 57: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 58: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 59: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 60: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 61: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 62: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 63: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 64: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 65: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 66: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 67: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 68: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 69: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 70: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 71: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 72: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 73: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 74: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 75: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 76: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 77: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 78: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 79: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 80: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 81: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 82: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 83: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 84: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 85: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 86: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 87: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 88: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 89: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 90: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 91: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 92: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 93: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 94: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58] 2026-08-14 19:25:06.652046: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 48%, target 19% 2026-08-14 19:25:06.653258: Inverter 0 disabled charge window while waiting for schedule (now 08-14 19:25:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 19:25:06.653432: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:25:06.653747: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:25:06.653851: No export window planned 2026-08-14 19:25:06.654092: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 19:25:06.654154: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:25:06.654401: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:25:06.654619: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 19:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 19:25:06.654701: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 19:25:06.654776: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 19:25:06.654894: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:25:06.654955: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:25:06.655001: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:25:06.655049: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:25:06.655092: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:25:06.655136: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:25:06.655179: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:25:06.655269: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:25:06.655346: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:25:06.655399: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:25:06.655442: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:25:06.655702: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:25:06.655762: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:25:06.655815: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:25:06.655854: Inverter 0 count register writes 0 2026-08-14 19:25:06.700530: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 19:25:06.700791: Recompute is saving previous plan... 2026-08-14 19:25:06.709961: Best charge window [ 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0% ] 2026-08-14 19:25:06.710117: Best export window [ ] 2026-08-14 19:25:06.711599: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 19:25:06.716465: Load divergence over 8.0 hours mean 468.41W, min 291.0W, max 1057.8W, std dev 135.01W, divergence 14.41% 2026-08-14 19:25:06.745152: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 19:25:06.745313: LoadML is_calculating True 2026-08-14 19:25:06.745351: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 19:25:06.764834: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 19:25:06.782586: Optimise levels pass started at 2026-08-14 19:25:06 2026-08-14 19:25:06.782770: Optimise all windows, total charge 94 export 1 2026-08-14 19:25:12.915831: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0074 val_mae=0.0018 kWh val_bias=-0.0004 kWh (-0.7%) combined=0.0011 kWh ema_combined=0.0013 kWh 2026-08-14 19:25:14.117499: >> Region optimisation pass width 960 gives best_metric 1176.56p, best_cost 1182.12p, best_cycle 37.5kWh, best_import 27.01kWh 2026-08-14 19:25:15.124001: >> Region optimisation pass width 480 gives best_metric 1176.56p, best_cost 1182.12p, best_cycle 37.5kWh, best_import 27.01kWh 2026-08-14 19:25:16.218695: >> Region optimisation pass width 240 gives best_metric 1176.56p, best_cost 1182.12p, best_cycle 37.5kWh, best_import 27.01kWh 2026-08-14 19:25:20.168497: >> Region optimisation pass width 120 gives best_metric 1176.56p, best_cost 1182.12p, best_cycle 37.5kWh, best_import 27.01kWh 2026-08-14 19:25:20.168992: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 80 2026-08-14 19:25:20.169079: Optimise levels pass ended at 2026-08-14 19:25:20, duration 13.4 seconds tried 324 combinations 2026-08-14 19:25:20.170417: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1176.56p, best_keep 0kWh, best_cycle 37.5kWh, best_carbon 0kg, best_import 27.01kWh 2026-08-14 19:25:20.208108: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 19:25:54.844864: Tweak plan optimisation started metric 1095.0p, cost 1104.12p 2026-08-14 19:25:57.307640: Tweak optimisation finished metric 1095.0p, cost 1104.12p, metric_keep 0kWh, cycle 31.13kWh, carbon 0kg, import 21.82kWh, changed 8 window(s) 2026-08-14 19:25:57.340650: Swap charge optimisation started metric 1095.0p, cost 1104.12p, min_improvement_swap 0.1p 2026-08-14 19:26:07.571090: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0066 val_mae=0.0020 kWh val_bias=+0.0009 kWh (+1.5%) combined=0.0020 kWh ema_combined=0.0015 kWh 2026-08-14 19:26:09.958010: Swap charge optimisation finished metric 1095.0p, cost 1104.12p 2026-08-14 19:26:10.073879: Raw charge windows [ 14-08 19:00:00 - 14-08 19:30:00 @ 40.1p 0%, 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100% ] reserve 1.12 2026-08-14 19:26:10.074533: Unclipped charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100% ] reserve 1.12 2026-08-14 19:26:10.074812: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100% ] reserve 1.12 2026-08-14 19:26:10.075050: Filtered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100% ] reserve 1.12 2026-08-14 19:26:10.116821: Previous plan best metric is 1095.0 (cost 1104.12) and new plan best metric is 1095.0 (cost 1104.12) 2026-08-14 19:26:10.117065: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 19:26:10.117198: Plan valid is now true after recompute was False 2026-08-14 19:26:10.147993: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1333.8p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:55:00, load 46.26kWh, PV 0.0kWh 2026-08-14 19:26:10.359888: Battery has 6.5 hours left - now at 7.68kWh 2026-08-14 19:26:10.446872: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1365.49p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:35:00, load 47.51kWh, PV 0.0kWh 2026-08-14 19:26:10.552710: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1231.58p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:35:00, load 47.51kWh, PV 0.0kWh 2026-08-14 19:26:10.701926: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1204.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:55:00, load 46.26kWh, PV 0.0kWh 2026-08-14 19:26:10.712058: Saving plan best values to HA entities 2026-08-14 19:26:11.038702: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 19:26:11.045598: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 19:26:11.053220: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.33kWh, house 5.49kWh, export 0.0kWh, metric 1204.09p, metric10 1231.58p 2026-08-14 19:26:11.185512: Marginal costs baseline metric (no standing charge): 1104.1223 2026-08-14 19:26:11.834886: Marginal energy costs matrix computed: min=24.8 max=34.94 2026-08-14 19:26:12.004823: Rate array import [{'start': 1165, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1165, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 19:26:12.006084: - Your estimated bill for today is £7.31 and tomorrow is £4.20 2026-08-14 19:26:12.006159: - Import rates are very expensive (34.7p - 42.3p) for the next 2 and a half hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 19:26:12.006192: - The battery is currently at 48% and is in eco mode for the next 16 hours. 2026-08-14 19:26:12.006217: - For the next 48 hours there will be no solar generation. 2026-08-14 19:26:12.006251: - You will run out of battery in 6 and a half hours. 2026-08-14 19:26:12.006284: - Your next charge slot will be in 16 hours where import rates will be cheap (15.5p). 2026-08-14 19:26:12.006325: 2026-08-14 19:26:12.106975: Plan calculation took 65.41 seconds 2026-08-14 19:26:12.107345: Inverter 0: Type SK Sunsynk 2026-08-14 19:26:12.107400: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 19:26:12.108063: Reserve min: 7%, battery_min: 7% 2026-08-14 19:26:12.108153: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 19:26:12.108627: Inverter 0 SoC: 7.56kW 47%, current charge rate 5000W, current discharge rate 5250W, current battery power 1526W, current battery voltage 51.2V, grid power -54W, load power 1587W, PV Power 0W 2026-08-14 19:26:12.108874: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:26:12.109056: Inverter 0 scheduled charge enable is False 2026-08-14 19:26:12.109118: Inverter 0 charge windows currently [] 2026-08-14 19:26:12.109148: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 19:26:12.109266: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:26:12.109372: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:26:12.109425: Inverter 0 scheduled discharge enable is False 2026-08-14 19:26:12.109656: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:26:12.110414: Inverter 0 discharge windows currently [] 2026-08-14 19:26:12.110610: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:26:12.110782: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:26:12.110932: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:26:12.212222: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 47%, target 19% 2026-08-14 19:26:12.212567: Inverter 0 disabled charge window while waiting for schedule (now 08-14 19:25:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 19:26:12.212779: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:26:12.213176: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:26:12.213411: No export window planned 2026-08-14 19:26:12.213665: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 19:26:12.213848: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:26:12.214153: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:26:12.214492: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 19:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 19:26:12.214647: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 19:26:12.214837: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 19:26:12.215040: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:26:12.215214: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:26:12.215379: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:26:12.215546: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:26:12.215682: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:26:12.215845: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:26:12.215979: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:26:12.216194: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:26:12.216353: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:26:12.216517: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:26:12.216651: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:26:12.216811: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:26:12.216969: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:26:12.217136: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:26:12.217260: Inverter 0 count register writes 0 2026-08-14 19:26:12.252385: Total inverter register writes now 815 2026-08-14 19:26:12.306025: Info: Completed run status Demand 2026-08-14 19:26:12.332849: Info: record_status Demand 2026-08-14 19:26:12.346997: Saved current settings to /config/predbat_config.json 2026-08-14 19:26:12.347623: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 19:26:31.028774: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0073 val_mae=0.0020 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0014 kWh ema_combined=0.0015 kWh 2026-08-14 19:26:49.723622: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0063 val_mae=0.0017 kWh val_bias=-0.0005 kWh (-0.8%) combined=0.0013 kWh ema_combined=0.0014 kWh 2026-08-14 19:26:56.515723: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:26:56.517375: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:26:56.517962: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:26:56.518569: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:26:56.518631: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:26:56.518741: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:26:56.518849: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:27:10.450464: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0065 val_mae=0.0019 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0014 kWh ema_combined=0.0014 kWh 2026-08-14 19:27:30.886350: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0062 val_mae=0.0018 kWh val_bias=-0.0002 kWh (-0.4%) combined=0.0010 kWh ema_combined=0.0013 kWh 2026-08-14 19:27:50.779568: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0054 val_mae=0.0016 kWh val_bias=-0.0004 kWh (-0.7%) combined=0.0011 kWh ema_combined=0.0012 kWh 2026-08-14 19:28:09.726861: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0056 val_mae=0.0015 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0010 kWh ema_combined=0.0012 kWh 2026-08-14 19:28:28.678494: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0056 val_mae=0.0021 kWh val_bias=-0.0012 kWh (-2.1%) combined=0.0016 kWh ema_combined=0.0013 kWh 2026-08-14 19:28:48.277039: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0055 val_mae=0.0014 kWh val_bias=-0.0004 kWh (-0.6%) combined=0.0010 kWh ema_combined=0.0012 kWh 2026-08-14 19:28:56.979627: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:28:56.979955: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:28:56.980024: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:28:56.980208: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:28:56.980256: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:28:56.980284: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:28:56.987609: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:29:07.753096: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0050 val_mae=0.0015 kWh val_bias=-0.0002 kWh (-0.4%) combined=0.0008 kWh ema_combined=0.0011 kWh 2026-08-14 19:29:28.025971: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0049 val_mae=0.0014 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0010 kWh ema_combined=0.0011 kWh 2026-08-14 19:29:48.228726: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0051 val_mae=0.0014 kWh val_bias=-0.0000 kWh (-0.0%) combined=0.0008 kWh ema_combined=0.0010 kWh 2026-08-14 19:30:00.347198: --------------- PredBat - update at 2026-08-14 19:30:00+01:00 with clock skew 0 minutes, minutes now 1170 2026-08-14 19:30:00.349391: Saved current settings to /config/predbat_config.json 2026-08-14 19:30:00.349707: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 100.0 minutes 2026-08-14 19:30:00.349964: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 19:30:00.350198: Autoupdate: Currently up to date 2026-08-14 19:30:00.461627: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 19:30:00.461959: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 19:30:00.462342: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 19:30:00.463246: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 19:30:00.463547: Predbat mode is set to Control charge & discharge 2026-08-14 19:30:00.895754: Found 21602 load_today datapoints going back 28 days 2026-08-14 19:30:00.909070: Using load_power data to fill gaps in load_today data 2026-08-14 19:30:02.648847: Processing 721 30-minute periods for power integration 2026-08-14 19:30:03.026608: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 19:30:03.026864: Car charging hold False, threshold 6.0kWh 2026-08-14 19:30:03.026919: Current data so far today: load 20.35kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 19:30:03.066497: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 19:30:03.067080: Standing charge is set to 49.98p 2026-08-14 19:30:03.200249: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 19:30:03.200384: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 19:30:03.200594: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 535.0 minutes 2026-08-14 19:30:03.201037: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 535.0 minutes 2026-08-14 19:30:03.207496: Loaded 95 datapoints of futurerate analysis 2026-08-14 19:30:03.501060: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96'] 2026-08-14 19:30:03.563366: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 19:30:03.563946: Import rates: min 13.77p, max 43.82p, average 26.31p 2026-08-14 19:30:03.626507: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 19:30:03.626812: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 19:30:03.629072: High export rate found rates in range 99p to -99p 2026-08-14 19:30:03.797904: Low Import rate found rates in range 13.77p to 42.31p 2026-08-14 19:30:03.798085: Car 0 charging is not planned as it is not plugged in 2026-08-14 19:30:03.826758: Battery level now 7.68kWh, -1hr ago 9.24kWh, at midnight 2.43kWh, battery value change in the last hour -18.45p, change today 62.06p, rate_forward 11.83p 2026-08-14 19:30:03.827229: Last hour: net energy 0.02kWh, import 0.02kWh, export 0.0kWh, car 0kWh, load 1.7kWh, net cost 1.21p, import 1.21p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 19:30:03.952212: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 19:30:03.952500: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 19:30:04.219593: Using weighted-bucket historical load forecast over 14 days 2026-08-14 19:30:04.260011: Today's load divergence 139.47%, in-day adjustment 139.24%, damping 0.95x, yesterday 146.81% today 137.49% blend 18.75% 2026-08-14 19:30:04.260184: Today's predicted so far 11.06kWh with 0.0kWh car/iBoost excluded, 17.37kWh import ignored, and 11.06kWh forecast extra. 2026-08-14 19:30:04.260223: Today's actual load so far 20.35kWh with 0.0kWh car/iBoost excluded, and 17.37kWh import ignored. 2026-08-14 19:30:04.336726: Inverter 0: Type SK Sunsynk 2026-08-14 19:30:04.336989: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 19:30:04.337904: Reserve min: 7%, battery_min: 7% 2026-08-14 19:30:04.338084: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 19:30:04.338538: Inverter 0 SoC: 7.44kW 47%, current charge rate 5000W, current discharge rate 5250W, current battery power 1500W, current battery voltage 51.2V, grid power -54W, load power 1563W, PV Power 0W 2026-08-14 19:30:04.345204: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:30:04.345690: Inverter 0 scheduled charge enable is False 2026-08-14 19:30:04.345875: Inverter 0 charge windows currently [] 2026-08-14 19:30:04.346032: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 19:30:04.346311: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:30:04.346483: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:30:04.346649: Inverter 0 scheduled discharge enable is False 2026-08-14 19:30:04.346979: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:30:04.347141: Inverter 0 discharge windows currently [] 2026-08-14 19:30:04.347253: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:30:04.347406: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:30:04.347539: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:30:04.498675: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 19:30:04.513170: Plan was last updated on 2026-08-14 19:25:00+01:00 and is now 5.0 minutes old 2026-08-14 19:30:04.513747: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 19:30:04.513911: Best export window [ ] 2026-08-14 19:30:04.515327: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 19:30:04.557143: Load divergence over 8.0 hours mean 468.52W, min 279.0W, max 1138.2W, std dev 138.66W, divergence 14.8% 2026-08-14 19:30:04.618398: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 19:30:04.618638: LoadML is_calculating True 2026-08-14 19:30:04.618759: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 19:30:04.709309: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1338.77p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 46.51kWh, PV 0.0kWh 2026-08-14 19:30:04.973026: Battery has 6.25 hours left - now at 7.44kWh 2026-08-14 19:30:05.084817: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1370.44p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:25:00, load 47.76kWh, PV 0.0kWh 2026-08-14 19:30:05.240933: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1241.88p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:25:00, load 47.76kWh, PV 0.0kWh 2026-08-14 19:30:05.348749: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1215.48p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 46.51kWh, PV 0.0kWh 2026-08-14 19:30:05.361261: Saving plan best values to HA entities 2026-08-14 19:30:05.730906: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 19:30:05.741698: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 19:30:05.770779: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.83kWh, house 5.63kWh, export 0.0kWh, metric 1215.48p, metric10 1241.88p 2026-08-14 19:30:05.984148: Marginal costs baseline metric (no standing charge): 1115.5088 2026-08-14 19:30:06.451517: Marginal energy costs matrix computed: min=24.81 max=35.03 2026-08-14 19:30:06.611391: Rate array import [{'start': 1170, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1170, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 19:30:06.612173: - Your estimated bill for today is £7.31 and tomorrow is £4.23 2026-08-14 19:30:06.612226: - Import rates are very expensive (34.7p - 42.3p) for the next 2 and a half hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 19:30:06.612249: - The battery is currently at 47% and is in eco mode for the next 16 hours. 2026-08-14 19:30:06.612271: - For the next 48 hours there will be no solar generation. 2026-08-14 19:30:06.612303: - You will run out of battery in 6 and a quarter hours. 2026-08-14 19:30:06.612331: - Your next charge slot will be in 16 hours where import rates will be cheap (15.5p). 2026-08-14 19:30:06.612358: 2026-08-14 19:30:06.690821: Plan calculation took 2.18 seconds 2026-08-14 19:30:06.697349: No high rate period found 2026-08-14 19:30:06.849127: Import threshold used for optimisation was 17.0p 2026-08-14 19:30:07.039728: Low import rate windows [0: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 1: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 2: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 3: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 4: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 5: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 6: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 7: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 8: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 9: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 10: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 11: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 12: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 13: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 14: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 15: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 16: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 17: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 18: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 19: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 20: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 21: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 22: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 23: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 24: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 25: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 26: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 27: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 28: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 29: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 30: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 31: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 32: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 33: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 34: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 35: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 36: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 37: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 38: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 39: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 40: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 41: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 42: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 43: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 44: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 45: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 46: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 47: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 48: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 49: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 50: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 51: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 52: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 53: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 54: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 55: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 56: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 57: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 58: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 59: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 60: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 61: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 62: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 63: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 64: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 65: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 66: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 67: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 68: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 69: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 70: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 71: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 72: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 73: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 74: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 75: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 76: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 77: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 78: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 79: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 80: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 81: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 82: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 83: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 84: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 85: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 86: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 87: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 88: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 89: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 90: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 91: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 92: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 93: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58] 2026-08-14 19:30:07.076983: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 47%, target 19% 2026-08-14 19:30:07.077265: Inverter 0 disabled charge window while waiting for schedule (now 08-14 19:30:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 19:30:07.077449: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:30:07.077726: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:30:07.077871: No export window planned 2026-08-14 19:30:07.078060: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 19:30:07.078170: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:30:07.078396: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:30:07.078627: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 19:30:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 19:30:07.078754: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 19:30:07.078903: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 19:30:07.079060: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:30:07.079176: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:30:07.079277: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:30:07.079403: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:30:07.079521: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:30:07.079632: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:30:07.079736: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:30:07.079883: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:30:07.079996: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:30:07.080100: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:30:07.080210: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:30:07.080314: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:30:07.080433: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:30:07.080542: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:30:07.080635: Inverter 0 count register writes 0 2026-08-14 19:30:07.121216: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 19:30:07.127030: Total inverter register writes now 815 2026-08-14 19:30:07.195224: Info: Completed run status Demand 2026-08-14 19:30:07.217195: Info: record_status Demand 2026-08-14 19:30:07.226602: Saved current settings to /config/predbat_config.json 2026-08-14 19:30:07.226893: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 19:30:16.387853: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0048 val_mae=0.0014 kWh val_bias=-0.0000 kWh (-0.1%) combined=0.0007 kWh ema_combined=0.0009 kWh 2026-08-14 19:30:38.819742: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0052 val_mae=0.0013 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0008 kWh ema_combined=0.0009 kWh 2026-08-14 19:30:42.453217: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:30:42.453521: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:30:42.453575: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:30:42.453747: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:30:42.453794: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:30:42.453822: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:30:42.453847: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:30:59.206897: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0050 val_mae=0.0014 kWh val_bias=-0.0002 kWh (-0.3%) combined=0.0008 kWh ema_combined=0.0008 kWh 2026-08-14 19:31:17.990094: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0046 val_mae=0.0014 kWh val_bias=-0.0002 kWh (-0.4%) combined=0.0009 kWh ema_combined=0.0008 kWh 2026-08-14 19:31:17.991464: ML Predictor: Restored best weights from epoch with val_mae=0.0014 kWh val_bias=-0.0002 kWh (-0.3%) 2026-08-14 19:31:17.997098: ML Predictor: Training complete, final val_mae=0.0014 kWh val_bias=-0.0002 kWh (-0.3%) 2026-08-14 19:31:20.324157: ML Predictor: AR rollout over holdout: ar_mae=0.0014 kWh ar_bias=-0.0002 kWh (-0.3%) [drift vs teacher-forced: +0.0001 kWh] 2026-08-14 19:31:20.365340: ML Predictor: Curriculum pass 1/5 complete, val_mae=0.0014 kWh 2026-08-14 19:31:20.472028: ML Predictor: Curriculum pass 2/5: window=54.0 days (1296 hours of data) 2026-08-14 19:31:20.472280: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 19:31:21.157034: ML Predictor: Creating dataset with 1296 hours of training data, 48 hours validation 2026-08-14 19:31:26.018170: ML Predictor: Created 15264 training samples, 576 validation samples 2026-08-14 19:31:26.075288: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0470) load(mean=0.0589 std=0.0470) pv(mean=0.0000 std=0.0100) temp(mean=19.4873 std=4.4036) import_rate(mean=24.2399 std=1.9618) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1905 std=0.5233) 2026-08-14 19:31:26.164058: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 19:31:26.181718: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 19:31:26.219908: ML Predictor: Baseline (pre-finetune) val_mae=0.0023 kWh val_bias=-0.0004 kWh 2026-08-14 19:31:46.332792: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0071 val_mae=0.0023 kWh val_bias=+0.0001 kWh (+0.1%) combined=0.0014 kWh ema_combined=0.0014 kWh 2026-08-14 19:32:08.690609: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0084 val_mae=0.0028 kWh val_bias=-0.0006 kWh (-1.1%) combined=0.0016 kWh ema_combined=0.0014 kWh 2026-08-14 19:32:29.445937: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0096 val_mae=0.0023 kWh val_bias=-0.0002 kWh (-0.3%) combined=0.0012 kWh ema_combined=0.0014 kWh 2026-08-14 19:32:50.343628: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0147 val_mae=0.0025 kWh val_bias=-0.0013 kWh (-2.5%) combined=0.0024 kWh ema_combined=0.0017 kWh 2026-08-14 19:32:57.431180: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:32:57.431686: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:32:57.431856: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:32:57.432180: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:32:57.432338: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:32:57.432517: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:32:57.432655: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:33:10.394169: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0105 val_mae=0.0022 kWh val_bias=-0.0004 kWh (-0.8%) combined=0.0013 kWh ema_combined=0.0016 kWh 2026-08-14 19:33:33.023495: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0089 val_mae=0.0031 kWh val_bias=+0.0003 kWh (+0.6%) combined=0.0019 kWh ema_combined=0.0017 kWh 2026-08-14 19:33:56.576144: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0102 val_mae=0.0025 kWh val_bias=-0.0008 kWh (-1.5%) combined=0.0021 kWh ema_combined=0.0018 kWh 2026-08-14 19:34:17.687473: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0101 val_mae=0.0024 kWh val_bias=-0.0006 kWh (-1.1%) combined=0.0018 kWh ema_combined=0.0018 kWh 2026-08-14 19:34:38.652048: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0091 val_mae=0.0021 kWh val_bias=-0.0002 kWh (-0.4%) combined=0.0011 kWh ema_combined=0.0016 kWh 2026-08-14 19:34:57.937627: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0082 val_mae=0.0020 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0013 kWh ema_combined=0.0015 kWh 2026-08-14 19:35:00.929536: --------------- PredBat - update at 2026-08-14 19:35:00+01:00 with clock skew 0 minutes, minutes now 1175 2026-08-14 19:35:00.931181: Saved current settings to /config/predbat_config.json 2026-08-14 19:35:00.931699: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 105.0 minutes 2026-08-14 19:35:00.931982: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 19:35:00.932225: Autoupdate: Currently up to date 2026-08-14 19:35:00.989390: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 19:35:00.989710: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 19:35:00.990070: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 19:35:00.990976: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 19:35:00.991254: Predbat mode is set to Control charge & discharge 2026-08-14 19:35:01.356886: Found 21602 load_today datapoints going back 28 days 2026-08-14 19:35:01.357098: Using load_power data to fill gaps in load_today data 2026-08-14 19:35:02.878741: Processing 721 30-minute periods for power integration 2026-08-14 19:35:03.163605: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 19:35:03.163743: Car charging hold False, threshold 6.0kWh 2026-08-14 19:35:03.163790: Current data so far today: load 20.5kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 19:35:03.183298: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 19:35:03.183862: Standing charge is set to 49.98p 2026-08-14 19:35:03.397162: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 19:35:03.397287: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 19:35:03.397531: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 540.0 minutes 2026-08-14 19:35:03.397978: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 540.0 minutes 2026-08-14 19:35:03.403880: Loaded 95 datapoints of futurerate analysis 2026-08-14 19:35:03.557310: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96'] 2026-08-14 19:35:03.627441: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 19:35:03.627915: Import rates: min 13.77p, max 43.82p, average 26.29p 2026-08-14 19:35:03.707214: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 19:35:03.707543: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 19:35:03.709560: High export rate found rates in range 99p to -99p 2026-08-14 19:35:04.008542: Low Import rate found rates in range 13.77p to 42.31p 2026-08-14 19:35:04.008876: Car 0 charging is not planned as it is not plugged in 2026-08-14 19:35:04.033195: Battery level now 7.44kWh, -1hr ago 8.94kWh, at midnight 2.43kWh, battery value change in the last hour -17.79p, change today 59.22p, rate_forward 11.83p 2026-08-14 19:35:04.033603: Last hour: net energy 0.02kWh, import 0.02kWh, export 0.0kWh, car 0kWh, load 1.7kWh, net cost 0.97p, import 0.97p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 19:35:04.121348: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 19:35:04.121533: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 19:35:04.334442: Using weighted-bucket historical load forecast over 14 days 2026-08-14 19:35:04.385987: Today's load divergence 139.81%, in-day adjustment 139.48%, damping 0.95x, yesterday 146.81% today 137.82% blend 18.4% 2026-08-14 19:35:04.391538: Today's predicted so far 11.16kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 11.16kWh forecast extra. 2026-08-14 19:35:04.391631: Today's actual load so far 20.57kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 19:35:04.458285: Inverter 0: Type SK Sunsynk 2026-08-14 19:35:04.458399: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 19:35:04.459196: Reserve min: 7%, battery_min: 7% 2026-08-14 19:35:04.459423: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 19:35:04.459913: Inverter 0 SoC: 7.32kW 46%, current charge rate 5000W, current discharge rate 5250W, current battery power 1564W, current battery voltage 51.2V, grid power -54W, load power 1623W, PV Power 0W 2026-08-14 19:35:04.460218: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:35:04.460461: Inverter 0 scheduled charge enable is False 2026-08-14 19:35:04.460600: Inverter 0 charge windows currently [] 2026-08-14 19:35:04.460720: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 19:35:04.460924: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:35:04.461000: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:35:04.461135: Inverter 0 scheduled discharge enable is False 2026-08-14 19:35:04.461357: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:35:04.461409: Inverter 0 discharge windows currently [] 2026-08-14 19:35:04.461500: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:35:04.461569: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:35:04.461625: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:35:04.606618: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 19:35:04.606735: Plan was last updated on 2026-08-14 19:25:00+01:00 and is now 10.0 minutes old 2026-08-14 19:35:04.607137: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 19:35:04.607187: Best export window [ ] 2026-08-14 19:35:04.608301: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 19:35:04.612188: Load divergence over 8.0 hours mean 468.63W, min 267.0W, max 1243.8W, std dev 161.23W, divergence 17.2% 2026-08-14 19:35:04.663240: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 19:35:04.663370: LoadML is_calculating True 2026-08-14 19:35:04.663398: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 19:35:04.745125: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1340.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 46.65kWh, PV 0.0kWh 2026-08-14 19:35:05.005345: Battery has 6.17 hours left - now at 7.32kWh 2026-08-14 19:35:05.075195: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1371.89p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:25:00, load 47.89kWh, PV 0.0kWh 2026-08-14 19:35:05.249205: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1248.8p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:25:00, load 47.89kWh, PV 0.0kWh 2026-08-14 19:35:05.398967: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1223.52p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 46.65kWh, PV 0.0kWh 2026-08-14 19:35:05.399217: Saving plan best values to HA entities 2026-08-14 19:35:05.738087: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 19:35:05.748082: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 19:35:05.770699: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.33kWh, house 5.64kWh, export 0.0kWh, metric 1223.52p, metric10 1248.8p 2026-08-14 19:35:05.979515: Marginal costs baseline metric (no standing charge): 1123.5577 2026-08-14 19:35:06.465379: Marginal energy costs matrix computed: min=24.46 max=34.94 2026-08-14 19:35:06.624329: Rate array import [{'start': 1175, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1175, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 19:35:06.624996: - Your estimated bill for today is £7.31 and tomorrow is £4.23 2026-08-14 19:35:06.625048: - Import rates are very expensive (34.7p - 42.3p) for the next 2 and a half hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 19:35:06.625072: - The battery is currently at 46% and is in eco mode for the next 15 hours. 2026-08-14 19:35:06.625204: - For the next 48 hours there will be no solar generation. 2026-08-14 19:35:06.625256: - You will run out of battery in 6 and a quarter hours. 2026-08-14 19:35:06.625279: - Your next charge slot will be in 15 hours where import rates will be cheap (15.5p). 2026-08-14 19:35:06.625309: 2026-08-14 19:35:06.679604: Plan calculation took 2.07 seconds 2026-08-14 19:35:06.684012: No high rate period found 2026-08-14 19:35:06.756851: Import threshold used for optimisation was 17.0p 2026-08-14 19:35:06.863602: Low import rate windows [0: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 1: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 2: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 3: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 4: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 5: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 6: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 7: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 8: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 9: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 10: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 11: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 12: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 13: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 14: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 15: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 16: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 17: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 18: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 19: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 20: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 21: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 22: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 23: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 24: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 25: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 26: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 27: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 28: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 29: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 30: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 31: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 32: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 33: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 34: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 35: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 36: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 37: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 38: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 39: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 40: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 41: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 42: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 43: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 44: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 45: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 46: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 47: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 48: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 49: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 50: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 51: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 52: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 53: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 54: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 55: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 56: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 57: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 58: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 59: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 60: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 61: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 62: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 63: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 64: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 65: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 66: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 67: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 68: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 69: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 70: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 71: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 72: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 73: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 74: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 75: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 76: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 77: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 78: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 79: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 80: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 81: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 82: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 83: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 84: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 85: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 86: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 87: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 88: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 89: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 90: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 91: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 92: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 93: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 94: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9] 2026-08-14 19:35:06.883184: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 46%, target 19% 2026-08-14 19:35:06.883367: Inverter 0 disabled charge window while waiting for schedule (now 08-14 19:35:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 19:35:06.883474: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:35:06.883878: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:35:06.884218: No export window planned 2026-08-14 19:35:06.884377: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 19:35:06.884424: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:35:06.884641: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:35:06.884825: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 19:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 19:35:06.884886: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 19:35:06.884942: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 19:35:06.885092: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:35:06.885145: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:35:06.885188: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:35:06.885642: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:35:06.885699: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:35:06.885741: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:35:06.885775: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:35:06.885872: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:35:06.885921: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:35:06.885964: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:35:06.886071: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:35:06.886109: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:35:06.886143: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:35:06.886176: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:35:06.886204: Inverter 0 count register writes 0 2026-08-14 19:35:06.953755: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 19:35:06.954170: Recompute is saving previous plan... 2026-08-14 19:35:06.959584: Best charge window [ 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0% ] 2026-08-14 19:35:06.963658: Best export window [ ] 2026-08-14 19:35:06.965388: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 19:35:06.978822: Load divergence over 8.0 hours mean 468.63W, min 267.0W, max 1243.8W, std dev 161.23W, divergence 17.2% 2026-08-14 19:35:07.003283: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 19:35:07.003615: LoadML is_calculating True 2026-08-14 19:35:07.003761: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 19:35:07.013786: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 19:35:07.015527: Optimise levels pass started at 2026-08-14 19:35:07 2026-08-14 19:35:07.015690: Optimise all windows, total charge 94 export 1 2026-08-14 19:35:16.104450: >> Region optimisation pass width 960 gives best_metric 1183.88p, best_cost 1189.31p, best_cycle 36.97kWh, best_import 27.25kWh 2026-08-14 19:35:17.171814: >> Region optimisation pass width 480 gives best_metric 1184.0p, best_cost 1189.46p, best_cycle 37.13kWh, best_import 27.26kWh 2026-08-14 19:35:18.488927: >> Region optimisation pass width 240 gives best_metric 1184.0p, best_cost 1189.46p, best_cycle 37.13kWh, best_import 27.26kWh 2026-08-14 19:35:22.254487: >> Region optimisation pass width 120 gives best_metric 1184.0p, best_cost 1189.46p, best_cycle 37.13kWh, best_import 27.26kWh 2026-08-14 19:35:22.269521: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 79 2026-08-14 19:35:22.269614: Optimise levels pass ended at 2026-08-14 19:35:22, duration 15.3 seconds tried 322 combinations 2026-08-14 19:35:22.269801: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1184.0p, best_keep 0kWh, best_cycle 37.13kWh, best_carbon 0kg, best_import 27.26kWh 2026-08-14 19:35:22.318299: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3.0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 19:35:48.862040: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0079 val_mae=0.0020 kWh val_bias=+0.0008 kWh (+1.6%) combined=0.0017 kWh ema_combined=0.0016 kWh 2026-08-14 19:35:48.862169: ML Predictor: Early stopping at epoch 11 2026-08-14 19:35:48.863103: ML Predictor: Restored best weights from epoch with val_mae=0.0023 kWh val_bias=+0.0001 kWh (+0.1%) 2026-08-14 19:35:48.863358: ML Predictor: Training complete, final val_mae=0.0023 kWh val_bias=+0.0001 kWh (+0.1%) 2026-08-14 19:35:51.795682: ML Predictor: AR rollout over holdout: ar_mae=0.0057 kWh ar_bias=+0.0027 kWh (+5.1%) [drift vs teacher-forced: +0.0034 kWh] 2026-08-14 19:35:51.803167: ML Predictor: Curriculum pass 2/5 complete, val_mae=0.0023 kWh 2026-08-14 19:35:51.963739: ML Predictor: Curriculum pass 3/5: window=55.0 days (1320 hours of data) 2026-08-14 19:35:51.965835: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 19:35:53.297625: ML Predictor: Creating dataset with 1320 hours of training data, 48 hours validation 2026-08-14 19:36:01.391651: Tweak plan optimisation started metric 1098.84p, cost 1107.99p 2026-08-14 19:36:03.074860: Tweak optimisation finished metric 1098.84p, cost 1107.99p, metric_keep 0kWh, cycle 30.79kWh, carbon 0kg, import 21.97kWh, changed 8 window(s) 2026-08-14 19:36:03.091213: Swap charge optimisation started metric 1098.84p, cost 1107.99p, min_improvement_swap 0.1p 2026-08-14 19:36:10.358261: Swap charge optimisation finished metric 1098.84p, cost 1107.99p 2026-08-14 19:36:10.452801: ML Predictor: Created 15552 training samples, 576 validation samples 2026-08-14 19:36:10.545550: Raw charge windows [ 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100% ] reserve 1.12 2026-08-14 19:36:10.546142: Unclipped charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 20:00:00 @ 32.74p 100% ] reserve 1.12 2026-08-14 19:36:10.546407: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 20:00:00 @ 32.74p 100% ] reserve 1.12 2026-08-14 19:36:10.546736: Filtered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 20:00:00 @ 32.74p 100% ] reserve 1.12 2026-08-14 19:36:10.559366: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0470) load(mean=0.0589 std=0.0470) pv(mean=0.0000 std=0.0100) temp(mean=19.4979 std=4.4109) import_rate(mean=24.2408 std=1.9586) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1903 std=0.5235) 2026-08-14 19:36:10.597504: Previous plan best metric is 1098.84 (cost 1107.99) and new plan best metric is 1098.84 (cost 1107.99) 2026-08-14 19:36:10.597783: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 19:36:10.597913: Plan valid is now true after recompute was False 2026-08-14 19:36:10.630743: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1337.59p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 46.47kWh, PV 0.0kWh 2026-08-14 19:36:10.664399: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 19:36:10.682118: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 19:36:10.719486: ML Predictor: Baseline (pre-finetune) val_mae=0.0045 kWh val_bias=-0.0005 kWh 2026-08-14 19:36:10.836067: Battery has 6.17 hours left - now at 7.32kWh 2026-08-14 19:36:10.920527: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1369.07p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:25:00, load 47.71kWh, PV 0.0kWh 2026-08-14 19:36:11.083629: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1235.26p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:25:00, load 47.71kWh, PV 0.0kWh 2026-08-14 19:36:11.217175: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1207.96p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 46.47kWh, PV 0.0kWh 2026-08-14 19:36:11.217427: Saving plan best values to HA entities 2026-08-14 19:36:11.614643: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 19:36:11.625925: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 19:36:11.638751: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.32kWh, house 5.64kWh, export 0.0kWh, metric 1207.96p, metric10 1235.26p 2026-08-14 19:36:11.792019: Marginal costs baseline metric (no standing charge): 1107.993 2026-08-14 19:36:12.262023: Marginal energy costs matrix computed: min=24.46 max=34.94 2026-08-14 19:36:12.388081: Rate array import [{'start': 1175, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1175, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 19:36:12.389051: - Your estimated bill for today is £7.31 and tomorrow is £4.23 2026-08-14 19:36:12.389101: - Import rates are very expensive (34.7p - 42.3p) for the next 2 and a half hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 19:36:12.389124: - The battery is currently at 46% and is in eco mode for the next 15 hours. 2026-08-14 19:36:12.389143: - For the next 48 hours there will be no solar generation. 2026-08-14 19:36:12.389161: - You will run out of battery in 6 and a quarter hours. 2026-08-14 19:36:12.389181: - Your next charge slot will be in 15 hours where import rates will be cheap (15.5p). 2026-08-14 19:36:12.389200: 2026-08-14 19:36:12.448308: Plan calculation took 65.49 seconds 2026-08-14 19:36:12.448591: Inverter 0: Type SK Sunsynk 2026-08-14 19:36:12.448637: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 19:36:12.449362: Reserve min: 7%, battery_min: 7% 2026-08-14 19:36:12.449672: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 19:36:12.449981: Inverter 0 SoC: 7.32kW 46%, current charge rate 5000W, current discharge rate 5250W, current battery power 1551W, current battery voltage 51.2V, grid power -54W, load power 1610W, PV Power 0W 2026-08-14 19:36:12.450144: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:36:12.450236: Inverter 0 scheduled charge enable is False 2026-08-14 19:36:12.450273: Inverter 0 charge windows currently [] 2026-08-14 19:36:12.450426: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 19:36:12.450592: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:36:12.450632: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:36:12.450670: Inverter 0 scheduled discharge enable is False 2026-08-14 19:36:12.450811: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:36:12.450851: Inverter 0 discharge windows currently [] 2026-08-14 19:36:12.450875: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:36:12.450895: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:36:12.450915: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:36:12.573427: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 46%, target 19% 2026-08-14 19:36:12.573648: Inverter 0 disabled charge window while waiting for schedule (now 08-14 19:35:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 19:36:12.573749: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:36:12.574029: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:36:12.574160: No export window planned 2026-08-14 19:36:12.574321: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 19:36:12.574372: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:36:12.574602: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:36:12.574808: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 19:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 19:36:12.574874: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 19:36:12.574947: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 19:36:12.575061: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:36:12.575115: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:36:12.575161: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:36:12.575216: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:36:12.575268: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:36:12.575334: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:36:12.575379: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:36:12.575571: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:36:12.575633: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:36:12.575722: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:36:12.575905: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:36:12.575962: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:36:12.575999: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:36:12.576143: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:36:12.576287: Inverter 0 count register writes 0 2026-08-14 19:36:12.628108: Total inverter register writes now 815 2026-08-14 19:36:12.683876: Info: Completed run status Demand 2026-08-14 19:36:12.692993: Info: record_status Demand 2026-08-14 19:36:12.702655: Saved current settings to /config/predbat_config.json 2026-08-14 19:36:12.703033: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 19:36:28.961045: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0089 val_mae=0.0050 kWh val_bias=-0.0014 kWh (-2.0%) combined=0.0029 kWh ema_combined=0.0029 kWh 2026-08-14 19:36:47.549320: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0088 val_mae=0.0039 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0021 kWh ema_combined=0.0027 kWh 2026-08-14 19:36:56.861333: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:36:56.861643: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:36:56.861824: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:36:56.862141: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:36:56.862290: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:36:56.862418: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:36:56.862561: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:37:09.916868: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0110 val_mae=0.0037 kWh val_bias=+0.0019 kWh (+2.7%) combined=0.0030 kWh ema_combined=0.0028 kWh 2026-08-14 19:37:30.516489: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0131 val_mae=0.0062 kWh val_bias=-0.0041 kWh (-5.7%) combined=0.0040 kWh ema_combined=0.0031 kWh 2026-08-14 19:37:51.521817: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0113 val_mae=0.0032 kWh val_bias=+0.0014 kWh (+2.1%) combined=0.0025 kWh ema_combined=0.0029 kWh 2026-08-14 19:38:11.699768: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0093 val_mae=0.0028 kWh val_bias=-0.0002 kWh (-0.3%) combined=0.0016 kWh ema_combined=0.0025 kWh 2026-08-14 19:38:33.238132: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0094 val_mae=0.0035 kWh val_bias=-0.0022 kWh (-3.1%) combined=0.0030 kWh ema_combined=0.0027 kWh 2026-08-14 19:38:54.640349: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0098 val_mae=0.0035 kWh val_bias=-0.0012 kWh (-1.6%) combined=0.0021 kWh ema_combined=0.0025 kWh 2026-08-14 19:38:57.280790: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:38:57.281261: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:38:57.281437: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:38:57.281750: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:38:57.281861: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:38:57.282004: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:38:57.282135: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:39:14.988079: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0087 val_mae=0.0028 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0016 kWh ema_combined=0.0022 kWh 2026-08-14 19:39:35.672120: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0080 val_mae=0.0032 kWh val_bias=-0.0012 kWh (-1.6%) combined=0.0019 kWh ema_combined=0.0021 kWh 2026-08-14 19:39:55.574930: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0082 val_mae=0.0034 kWh val_bias=-0.0008 kWh (-1.2%) combined=0.0019 kWh ema_combined=0.0020 kWh 2026-08-14 19:40:00.589984: --------------- PredBat - update at 2026-08-14 19:40:00+01:00 with clock skew 0 minutes, minutes now 1180 2026-08-14 19:40:00.591647: Saved current settings to /config/predbat_config.json 2026-08-14 19:40:00.592058: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 110.0 minutes 2026-08-14 19:40:00.592373: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 19:40:00.592699: Autoupdate: Currently up to date 2026-08-14 19:40:00.651081: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 19:40:00.653275: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 19:40:00.653709: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 19:40:00.654621: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 19:40:00.663544: Predbat mode is set to Control charge & discharge 2026-08-14 19:40:01.053822: Found 21602 load_today datapoints going back 28 days 2026-08-14 19:40:01.054235: Using load_power data to fill gaps in load_today data 2026-08-14 19:40:02.470871: Processing 721 30-minute periods for power integration 2026-08-14 19:40:02.672628: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 19:40:02.672769: Car charging hold False, threshold 6.0kWh 2026-08-14 19:40:02.672816: Current data so far today: load 20.65kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 19:40:02.691294: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 19:40:02.691885: Standing charge is set to 49.98p 2026-08-14 19:40:02.814161: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 19:40:02.824633: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 19:40:02.825339: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 545.0 minutes 2026-08-14 19:40:02.826252: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 545.0 minutes 2026-08-14 19:40:02.834634: Loaded 95 datapoints of futurerate analysis 2026-08-14 19:40:03.116333: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96'] 2026-08-14 19:40:03.172241: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 19:40:03.172621: Import rates: min 13.77p, max 43.82p, average 26.28p 2026-08-14 19:40:03.229853: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 19:40:03.230133: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 19:40:03.232262: High export rate found rates in range 99p to -99p 2026-08-14 19:40:03.408808: Low Import rate found rates in range 13.77p to 42.31p 2026-08-14 19:40:03.411553: Car 0 charging is not planned as it is not plugged in 2026-08-14 19:40:03.433583: Battery level now 7.32kWh, -1hr ago 8.94kWh, at midnight 2.43kWh, battery value change in the last hour -19.21p, change today 57.81p, rate_forward 11.83p 2026-08-14 19:40:03.434274: Last hour: net energy 0.01kWh, import 0.01kWh, export 0.0kWh, car 0kWh, load 1.7kWh, net cost 0.73p, import 0.73p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 19:40:03.561172: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 19:40:03.561499: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 19:40:03.710350: Using weighted-bucket historical load forecast over 14 days 2026-08-14 19:40:03.744338: Today's load divergence 140.03%, in-day adjustment 139.61%, damping 0.95x, yesterday 146.81% today 138.03% blend 18.06% 2026-08-14 19:40:03.744529: Today's predicted so far 11.17kWh with 0.0kWh car/iBoost excluded, 17.18kWh import ignored, and 11.17kWh forecast extra. 2026-08-14 19:40:03.744569: Today's actual load so far 20.67kWh with 0.0kWh car/iBoost excluded, and 17.18kWh import ignored. 2026-08-14 19:40:03.808534: Inverter 0: Type SK Sunsynk 2026-08-14 19:40:03.808646: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 19:40:03.809426: Reserve min: 7%, battery_min: 7% 2026-08-14 19:40:03.809552: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 19:40:03.809891: Inverter 0 SoC: 7.32kW 46%, current charge rate 5000W, current discharge rate 5250W, current battery power 1507W, current battery voltage 51.2V, grid power -55W, load power 1566W, PV Power 0W 2026-08-14 19:40:03.810076: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:40:03.810183: Inverter 0 scheduled charge enable is False 2026-08-14 19:40:03.810229: Inverter 0 charge windows currently [] 2026-08-14 19:40:03.810264: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 19:40:03.810393: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:40:03.810439: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:40:03.810500: Inverter 0 scheduled discharge enable is False 2026-08-14 19:40:03.810669: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:40:03.810717: Inverter 0 discharge windows currently [] 2026-08-14 19:40:03.810746: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:40:03.810780: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:40:03.810804: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:40:04.000599: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 19:40:04.000859: Plan was last updated on 2026-08-14 19:35:00+01:00 and is now 5.0 minutes old 2026-08-14 19:40:04.001289: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 19:40:04.001454: Best export window [ ] 2026-08-14 19:40:04.003135: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 19:40:04.009292: Load divergence over 8.0 hours mean 470.14W, min 274.8W, max 1206.0W, std dev 157.67W, divergence 16.77% 2026-08-14 19:40:04.058108: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 19:40:04.061706: LoadML is_calculating True 2026-08-14 19:40:04.062221: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 19:40:04.175669: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1337.67p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 46.67kWh, PV 0.0kWh 2026-08-14 19:40:04.410618: Battery has 6.17 hours left - now at 7.32kWh 2026-08-14 19:40:04.484854: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1369.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:25:00, load 47.9kWh, PV 0.0kWh 2026-08-14 19:40:04.652898: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1240.59p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:25:00, load 47.9kWh, PV 0.0kWh 2026-08-14 19:40:04.783741: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1214.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 46.67kWh, PV 0.0kWh 2026-08-14 19:40:04.785532: Saving plan best values to HA entities 2026-08-14 19:40:05.107533: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 19:40:05.117640: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 19:40:05.126530: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.82kWh, house 5.6kWh, export 0.0kWh, metric 1214.42p, metric10 1240.59p 2026-08-14 19:40:05.318195: Marginal costs baseline metric (no standing charge): 1114.4488 2026-08-14 19:40:05.716597: Marginal energy costs matrix computed: min=24.11 max=34.81 2026-08-14 19:40:05.882702: Rate array import [{'start': 1180, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1180, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 19:40:05.883788: - Your estimated bill for today is £7.31 and tomorrow is £4.22 2026-08-14 19:40:05.884065: - Import rates are very expensive (34.7p - 42.3p) for the next 2 and a quarter hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 19:40:05.884190: - The battery is currently at 46% and is in eco mode for the next 15 hours. 2026-08-14 19:40:05.884285: - For the next 48 hours there will be no solar generation. 2026-08-14 19:40:05.885758: - You will run out of battery in 6 and a quarter hours. 2026-08-14 19:40:05.885934: - Your next charge slot will be in 15 hours where import rates will be cheap (15.5p). 2026-08-14 19:40:05.886050: 2026-08-14 19:40:05.970367: Plan calculation took 1.97 seconds 2026-08-14 19:40:05.975507: No high rate period found 2026-08-14 19:40:06.086443: Import threshold used for optimisation was 17.0p 2026-08-14 19:40:06.177704: Low import rate windows [0: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 1: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 2: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 3: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 4: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 5: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 6: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 7: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 8: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 9: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 10: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 11: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 12: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 13: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 14: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 15: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 16: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 17: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 18: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 19: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 20: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 21: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 22: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 23: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 24: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 25: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 26: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 27: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 28: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 29: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 30: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 31: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 32: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 33: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 34: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 35: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 36: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 37: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 38: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 39: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 40: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 41: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 42: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 43: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 44: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 45: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 46: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 47: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 48: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 49: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 50: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 51: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 52: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 53: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 54: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 55: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 56: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 57: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 58: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 59: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 60: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 61: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 62: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 63: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 64: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 65: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 66: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 67: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 68: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 69: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 70: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 71: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 72: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 73: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 74: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 75: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 76: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 77: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 78: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 79: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 80: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 81: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 82: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 83: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 84: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 85: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 86: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 87: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 88: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 89: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 90: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 91: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 92: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 93: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 94: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9] 2026-08-14 19:40:06.191180: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 46%, target 19% 2026-08-14 19:40:06.191499: Inverter 0 disabled charge window while waiting for schedule (now 08-14 19:40:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 19:40:06.191639: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:40:06.192005: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:40:06.192209: No export window planned 2026-08-14 19:40:06.192443: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 19:40:06.192550: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:40:06.192801: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:40:06.193104: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 19:40:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 19:40:06.193221: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 19:40:06.193351: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 19:40:06.193588: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:40:06.193689: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:40:06.193790: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:40:06.193889: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:40:06.193987: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:40:06.194084: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:40:06.194176: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:40:06.194360: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:40:06.194452: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:40:06.194571: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:40:06.194669: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:40:06.194765: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:40:06.194857: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:40:06.194956: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:40:06.195044: Inverter 0 count register writes 0 2026-08-14 19:40:06.222137: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 19:40:06.231029: Total inverter register writes now 815 2026-08-14 19:40:06.305433: Info: Completed run status Demand 2026-08-14 19:40:06.334686: Info: record_status Demand 2026-08-14 19:40:06.346183: Saved current settings to /config/predbat_config.json 2026-08-14 19:40:06.346447: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 19:40:21.045369: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0077 val_mae=0.0026 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0014 kWh ema_combined=0.0018 kWh 2026-08-14 19:40:40.637676: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0085 val_mae=0.0032 kWh val_bias=-0.0010 kWh (-1.5%) combined=0.0018 kWh ema_combined=0.0018 kWh 2026-08-14 19:40:41.525856: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:40:41.526285: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:40:41.526452: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:40:41.526782: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:40:41.526842: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:40:41.526953: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:40:41.526998: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:41:03.164029: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0069 val_mae=0.0027 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0017 kWh ema_combined=0.0018 kWh 2026-08-14 19:41:23.664495: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0080 val_mae=0.0035 kWh val_bias=-0.0021 kWh (-3.0%) combined=0.0028 kWh ema_combined=0.0021 kWh 2026-08-14 19:41:44.039496: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0073 val_mae=0.0023 kWh val_bias=-0.0010 kWh (-1.4%) combined=0.0019 kWh ema_combined=0.0020 kWh 2026-08-14 19:42:02.490293: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0060 val_mae=0.0026 kWh val_bias=-0.0010 kWh (-1.5%) combined=0.0016 kWh ema_combined=0.0019 kWh 2026-08-14 19:42:23.652569: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0063 val_mae=0.0020 kWh val_bias=-0.0000 kWh (-0.1%) combined=0.0011 kWh ema_combined=0.0017 kWh 2026-08-14 19:42:41.943597: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:42:41.944081: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:42:41.944225: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:42:41.944570: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:42:41.944716: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:42:41.944892: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:42:41.945064: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:42:44.243364: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0060 val_mae=0.0022 kWh val_bias=-0.0005 kWh (-0.7%) combined=0.0015 kWh ema_combined=0.0016 kWh 2026-08-14 19:43:05.887969: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0063 val_mae=0.0024 kWh val_bias=-0.0007 kWh (-1.1%) combined=0.0014 kWh ema_combined=0.0015 kWh 2026-08-14 19:43:26.566410: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0054 val_mae=0.0020 kWh val_bias=-0.0009 kWh (-1.3%) combined=0.0018 kWh ema_combined=0.0016 kWh 2026-08-14 19:43:48.051206: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0055 val_mae=0.0021 kWh val_bias=-0.0011 kWh (-1.6%) combined=0.0018 kWh ema_combined=0.0017 kWh 2026-08-14 19:44:10.356296: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0053 val_mae=0.0018 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0010 kWh ema_combined=0.0015 kWh 2026-08-14 19:44:30.496107: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0054 val_mae=0.0021 kWh val_bias=-0.0006 kWh (-0.8%) combined=0.0011 kWh ema_combined=0.0014 kWh 2026-08-14 19:44:42.369635: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:44:42.369932: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:44:42.370009: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:44:42.370194: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:44:42.370398: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:44:42.370484: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:44:42.370565: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:44:51.757665: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0049 val_mae=0.0020 kWh val_bias=-0.0008 kWh (-1.1%) combined=0.0014 kWh ema_combined=0.0014 kWh 2026-08-14 19:45:00.545362: --------------- PredBat - update at 2026-08-14 19:45:00+01:00 with clock skew 0 minutes, minutes now 1185 2026-08-14 19:45:00.546530: Saved current settings to /config/predbat_config.json 2026-08-14 19:45:00.546790: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 115.0 minutes 2026-08-14 19:45:00.546996: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 19:45:00.547158: Autoupdate: Currently up to date 2026-08-14 19:45:00.620805: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 19:45:00.621200: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 19:45:00.621535: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 19:45:00.622422: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 19:45:00.623327: Predbat mode is set to Control charge & discharge 2026-08-14 19:45:00.933554: Found 21602 load_today datapoints going back 28 days 2026-08-14 19:45:00.933869: Using load_power data to fill gaps in load_today data 2026-08-14 19:45:02.291661: Processing 721 30-minute periods for power integration 2026-08-14 19:45:02.585261: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 19:45:02.585622: Car charging hold False, threshold 6.0kWh 2026-08-14 19:45:02.585702: Current data so far today: load 20.8kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 19:45:02.616072: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 19:45:02.616675: Standing charge is set to 49.98p 2026-08-14 19:45:02.762005: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 19:45:02.762647: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 19:45:02.763037: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 550.0 minutes 2026-08-14 19:45:02.769102: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 550.0 minutes 2026-08-14 19:45:02.777516: Loaded 95 datapoints of futurerate analysis 2026-08-14 19:45:02.955709: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96'] 2026-08-14 19:45:03.053110: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 19:45:03.053511: Import rates: min 13.77p, max 43.82p, average 26.26p 2026-08-14 19:45:03.135371: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 19:45:03.135521: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 19:45:03.136844: High export rate found rates in range 99p to -99p 2026-08-14 19:45:03.270092: Low Import rate found rates in range 13.77p to 42.31p 2026-08-14 19:45:03.270316: Car 0 charging is not planned as it is not plugged in 2026-08-14 19:45:03.299042: Battery level now 7.32kWh, -1hr ago 8.8kWh, at midnight 2.43kWh, battery value change in the last hour -17.5p, change today 57.81p, rate_forward 11.83p 2026-08-14 19:45:03.299615: Last hour: net energy 0.01kWh, import 0.01kWh, export 0.0kWh, car 0kWh, load 1.7kWh, net cost 0.49p, import 0.49p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 19:45:03.409012: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 19:45:03.409371: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 19:45:03.685457: Using weighted-bucket historical load forecast over 14 days 2026-08-14 19:45:03.791982: Today's load divergence 140.23%, in-day adjustment 139.74%, damping 0.95x, yesterday 146.81% today 138.22% blend 17.71% 2026-08-14 19:45:03.792335: Today's predicted so far 11.18kWh with 0.0kWh car/iBoost excluded, 17.19kWh import ignored, and 11.18kWh forecast extra. 2026-08-14 19:45:03.792608: Today's actual load so far 20.76kWh with 0.0kWh car/iBoost excluded, and 17.19kWh import ignored. 2026-08-14 19:45:03.851185: Inverter 0: Type SK Sunsynk 2026-08-14 19:45:03.851522: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 19:45:03.852445: Reserve min: 7%, battery_min: 7% 2026-08-14 19:45:03.852725: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 19:45:03.853255: Inverter 0 SoC: 7.04kW 44%, current charge rate 5000W, current discharge rate 5250W, current battery power 1494W, current battery voltage 51.2V, grid power -54W, load power 1554W, PV Power 0W 2026-08-14 19:45:03.853650: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:45:03.853909: Inverter 0 scheduled charge enable is False 2026-08-14 19:45:03.854061: Inverter 0 charge windows currently [] 2026-08-14 19:45:03.854202: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 19:45:03.854537: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:45:03.854675: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:45:03.854847: Inverter 0 scheduled discharge enable is False 2026-08-14 19:45:03.855167: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:45:03.855323: Inverter 0 discharge windows currently [] 2026-08-14 19:45:03.855454: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:45:03.855607: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:45:03.855726: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:45:03.965113: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 19:45:03.965343: Plan was last updated on 2026-08-14 19:35:00+01:00 and is now 10.0 minutes old 2026-08-14 19:45:03.965924: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 19:45:03.966093: Best export window [ ] 2026-08-14 19:45:03.967581: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 19:45:03.973026: Load divergence over 8.0 hours mean 471.66W, min 279.0W, max 1164.0W, std dev 156.24W, divergence 16.56% 2026-08-14 19:45:04.033988: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 19:45:04.034143: LoadML is_calculating True 2026-08-14 19:45:04.034176: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 19:45:04.137380: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1344.6p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:30:00, load 46.86kWh, PV 0.0kWh 2026-08-14 19:45:04.422229: Battery has 5.75 hours left - now at 7.04kWh 2026-08-14 19:45:04.519733: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1376.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 48.1kWh, PV 0.0kWh 2026-08-14 19:45:04.647367: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1253.24p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 48.1kWh, PV 0.0kWh 2026-08-14 19:45:04.845142: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1227.86p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:30:00, load 46.86kWh, PV 0.0kWh 2026-08-14 19:45:04.845244: Saving plan best values to HA entities 2026-08-14 19:45:06.120358: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 19:45:06.143522: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 19:45:06.166286: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.34kWh, house 5.8kWh, export 0.0kWh, metric 1227.86p, metric10 1253.24p 2026-08-14 19:45:06.313440: Marginal costs baseline metric (no standing charge): 1127.8977 2026-08-14 19:45:06.808518: Marginal energy costs matrix computed: min=23.76 max=34.94 2026-08-14 19:45:07.042979: Rate array import [{'start': 1185, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1185, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 19:45:07.044139: - Your estimated bill for today is £7.31 and tomorrow is £4.27 2026-08-14 19:45:07.044203: - Import rates are very expensive (34.7p - 42.3p) for the next 2 and a quarter hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 19:45:07.044232: - The battery is currently at 44% and is in eco mode for the next 15 hours. 2026-08-14 19:45:07.044266: - For the next 48 hours there will be no solar generation. 2026-08-14 19:45:07.044292: - You will run out of battery in 5 and three quarters hours. 2026-08-14 19:45:07.044333: - Your next charge slot will be in 15 hours where import rates will be cheap (15.5p). 2026-08-14 19:45:07.044364: 2026-08-14 19:45:07.166076: Plan calculation took 3.20 seconds 2026-08-14 19:45:07.172192: No high rate period found 2026-08-14 19:45:07.258756: Import threshold used for optimisation was 17.0p 2026-08-14 19:45:07.413924: Low import rate windows [0: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 1: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 2: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 3: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 4: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 5: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 6: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 7: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 8: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 9: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 10: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 11: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 12: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 13: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 14: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 15: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 16: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 17: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 18: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 19: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 20: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 21: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 22: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 23: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 24: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 25: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 26: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 27: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 28: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 29: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 30: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 31: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 32: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 33: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 34: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 35: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 36: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 37: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 38: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 39: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 40: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 41: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 42: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 43: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 44: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 45: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 46: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 47: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 48: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 49: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 50: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 51: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 52: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 53: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 54: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 55: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 56: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 57: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 58: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 59: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 60: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 61: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 62: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 63: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 64: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 65: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 66: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 67: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 68: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 69: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 70: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 71: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 72: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 73: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 74: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 75: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 76: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 77: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 78: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 79: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 80: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 81: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 82: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 83: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 84: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 85: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 86: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 87: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 88: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 89: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 90: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 91: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 92: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 93: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 94: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9] 2026-08-14 19:45:07.442038: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 44%, target 19% 2026-08-14 19:45:07.442415: Inverter 0 disabled charge window while waiting for schedule (now 08-14 19:45:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 19:45:07.442623: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:45:07.443013: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:45:07.443185: No export window planned 2026-08-14 19:45:07.443403: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 19:45:07.444409: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:45:07.444776: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:45:07.445085: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 19:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 19:45:07.446386: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 19:45:07.446557: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 19:45:07.446730: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:45:07.446835: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:45:07.446937: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:45:07.447031: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:45:07.447128: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:45:07.447219: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:45:07.447315: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:45:07.447462: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:45:07.447579: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:45:07.447695: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:45:07.447824: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:45:07.447964: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:45:07.448119: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:45:07.448252: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:45:07.448312: Inverter 0 count register writes 0 2026-08-14 19:45:07.503157: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 19:45:07.503548: Recompute is saving previous plan... 2026-08-14 19:45:07.507178: Best charge window [ 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0% ] 2026-08-14 19:45:07.508506: Best export window [ ] 2026-08-14 19:45:07.509806: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 19:45:07.514889: Load divergence over 8.0 hours mean 471.66W, min 279.0W, max 1164.0W, std dev 156.24W, divergence 16.56% 2026-08-14 19:45:07.536694: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 19:45:07.536988: LoadML is_calculating True 2026-08-14 19:45:07.537058: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 19:45:07.547693: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 19:45:07.549983: Optimise levels pass started at 2026-08-14 19:45:07 2026-08-14 19:45:07.550127: Optimise all windows, total charge 94 export 1 2026-08-14 19:45:17.108915: >> Region optimisation pass width 960 gives best_metric 1190.63p, best_cost 1196.1p, best_cycle 36.69kWh, best_import 27.5kWh 2026-08-14 19:45:18.284526: >> Region optimisation pass width 480 gives best_metric 1190.87p, best_cost 1196.35p, best_cycle 36.84kWh, best_import 27.51kWh 2026-08-14 19:45:19.634483: >> Region optimisation pass width 240 gives best_metric 1190.87p, best_cost 1196.35p, best_cycle 36.84kWh, best_import 27.51kWh 2026-08-14 19:45:23.316433: >> Region optimisation pass width 120 gives best_metric 1190.87p, best_cost 1196.35p, best_cycle 36.84kWh, best_import 27.51kWh 2026-08-14 19:45:23.317226: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 79 2026-08-14 19:45:23.317449: Optimise levels pass ended at 2026-08-14 19:45:23, duration 15.8 seconds tried 322 combinations 2026-08-14 19:45:23.317670: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1190.87p, best_keep 0kWh, best_cycle 36.84kWh, best_carbon 0kg, best_import 27.51kWh 2026-08-14 19:45:23.363082: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3.0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 19:45:32.851433: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0048 val_mae=0.0017 kWh val_bias=-0.0002 kWh (-0.3%) combined=0.0010 kWh ema_combined=0.0012 kWh 2026-08-14 19:45:56.528777: Tweak plan optimisation started metric 1102.96p, cost 1112.1p 2026-08-14 19:45:58.937190: Tweak optimisation finished metric 1102.96p, cost 1112.1p, metric_keep 0kWh, cycle 30.51kWh, carbon 0kg, import 22.12kWh, changed 8 window(s) 2026-08-14 19:45:58.955051: Swap charge optimisation started metric 1102.96p, cost 1112.1p, min_improvement_swap 0.1p 2026-08-14 19:46:10.725348: Swap charge optimisation finished metric 1102.96p, cost 1112.1p 2026-08-14 19:46:10.925540: Raw charge windows [ 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100% ] reserve 1.12 2026-08-14 19:46:10.926517: Unclipped charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 20:00:00 @ 32.74p 100% ] reserve 1.12 2026-08-14 19:46:10.927026: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 20:00:00 @ 32.74p 100% ] reserve 1.12 2026-08-14 19:46:10.927919: Filtered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 20:00:00 @ 32.74p 100% ] reserve 1.12 2026-08-14 19:46:10.978911: Previous plan best metric is 1102.96 (cost 1112.1) and new plan best metric is 1102.96 (cost 1112.1) 2026-08-14 19:46:10.979298: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 19:46:10.979550: Plan valid is now true after recompute was False 2026-08-14 19:46:11.063033: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1341.68p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:30:00, load 46.67kWh, PV 0.0kWh 2026-08-14 19:46:11.362024: Battery has 5.75 hours left - now at 7.04kWh 2026-08-14 19:46:11.415892: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1373.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 47.9kWh, PV 0.0kWh 2026-08-14 19:46:11.571884: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1239.44p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 47.9kWh, PV 0.0kWh 2026-08-14 19:46:11.719555: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1212.06p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:30:00, load 46.67kWh, PV 0.0kWh 2026-08-14 19:46:11.720064: Saving plan best values to HA entities 2026-08-14 19:46:11.988339: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 19:46:11.997374: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 19:46:12.017665: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.32kWh, house 5.8kWh, export 0.0kWh, metric 1212.06p, metric10 1239.44p 2026-08-14 19:46:12.133303: Marginal costs baseline metric (no standing charge): 1112.0965 2026-08-14 19:46:12.642010: Marginal energy costs matrix computed: min=23.76 max=34.94 2026-08-14 19:46:12.817256: Rate array import [{'start': 1185, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1185, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 19:46:12.818511: - Your estimated bill for today is £7.31 and tomorrow is £4.27 2026-08-14 19:46:12.818808: - Import rates are very expensive (34.7p - 42.3p) for the next 2 and a quarter hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 19:46:12.818881: - The battery is currently at 44% and is in eco mode for the next 15 hours. 2026-08-14 19:46:12.818910: - For the next 48 hours there will be no solar generation. 2026-08-14 19:46:12.818935: - You will run out of battery in 5 and three quarters hours. 2026-08-14 19:46:12.818969: - Your next charge slot will be in 15 hours where import rates will be cheap (15.5p). 2026-08-14 19:46:12.818993: 2026-08-14 19:46:12.917692: Plan calculation took 65.41 seconds 2026-08-14 19:46:12.917991: Inverter 0: Type SK Sunsynk 2026-08-14 19:46:12.918037: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 19:46:12.918679: Reserve min: 7%, battery_min: 7% 2026-08-14 19:46:12.918762: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 19:46:12.919029: Inverter 0 SoC: 7.04kW 44%, current charge rate 5000W, current discharge rate 5250W, current battery power 1430W, current battery voltage 51.2V, grid power -54W, load power 1489W, PV Power 0W 2026-08-14 19:46:12.919198: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:46:12.919293: Inverter 0 scheduled charge enable is False 2026-08-14 19:46:12.919331: Inverter 0 charge windows currently [] 2026-08-14 19:46:12.919358: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 19:46:12.919485: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:46:12.919526: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:46:12.919564: Inverter 0 scheduled discharge enable is False 2026-08-14 19:46:12.919698: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:46:12.919735: Inverter 0 discharge windows currently [] 2026-08-14 19:46:12.919759: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:46:12.919783: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:46:12.919802: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:46:13.108479: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 44%, target 19% 2026-08-14 19:46:13.108651: Inverter 0 disabled charge window while waiting for schedule (now 08-14 19:45:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 19:46:13.110118: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:46:13.115761: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:46:13.115907: No export window planned 2026-08-14 19:46:13.116079: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 19:46:13.116207: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:46:13.116461: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:46:13.116744: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 19:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 19:46:13.116883: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 19:46:13.117057: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 19:46:13.117242: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:46:13.117371: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:46:13.117537: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:46:13.117662: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:46:13.117781: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:46:13.117897: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:46:13.118013: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:46:13.118165: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:46:13.118275: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:46:13.118392: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:46:13.118527: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:46:13.118647: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:46:13.118764: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:46:13.118879: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:46:13.118986: Inverter 0 count register writes 0 2026-08-14 19:46:13.182649: Total inverter register writes now 815 2026-08-14 19:46:13.265140: Info: Completed run status Demand 2026-08-14 19:46:13.279844: Info: record_status Demand 2026-08-14 19:46:13.296909: Saved current settings to /config/predbat_config.json 2026-08-14 19:46:13.297323: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 19:46:19.767022: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0049 val_mae=0.0019 kWh val_bias=-0.0008 kWh (-1.2%) combined=0.0014 kWh ema_combined=0.0013 kWh 2026-08-14 19:46:41.783420: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0047 val_mae=0.0021 kWh val_bias=-0.0013 kWh (-1.8%) combined=0.0018 kWh ema_combined=0.0014 kWh 2026-08-14 19:46:56.525647: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:46:56.526018: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:46:56.526092: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:46:56.526318: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:46:56.526380: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:46:56.526413: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:46:56.526562: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:47:03.152827: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0051 val_mae=0.0017 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0010 kWh ema_combined=0.0013 kWh 2026-08-14 19:47:23.840511: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0048 val_mae=0.0020 kWh val_bias=-0.0009 kWh (-1.3%) combined=0.0014 kWh ema_combined=0.0013 kWh 2026-08-14 19:47:23.841726: ML Predictor: Restored best weights from epoch with val_mae=0.0017 kWh val_bias=-0.0002 kWh (-0.3%) 2026-08-14 19:47:23.842007: ML Predictor: Training complete, final val_mae=0.0017 kWh val_bias=-0.0002 kWh (-0.3%) 2026-08-14 19:47:24.804049: ML Predictor: AR rollout over holdout: ar_mae=0.0018 kWh ar_bias=-0.0003 kWh (-0.5%) [drift vs teacher-forced: +0.0001 kWh] 2026-08-14 19:47:24.812013: ML Predictor: Curriculum pass 3/5 complete, val_mae=0.0017 kWh 2026-08-14 19:47:24.883812: ML Predictor: Curriculum pass 4/5: window=56.0 days (1344 hours of data) 2026-08-14 19:47:24.884048: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 19:47:25.540290: ML Predictor: Creating dataset with 1344 hours of training data, 48 hours validation 2026-08-14 19:47:30.542126: ML Predictor: Created 15840 training samples, 576 validation samples 2026-08-14 19:47:30.593117: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0470) load(mean=0.0589 std=0.0471) pv(mean=0.0000 std=0.0100) temp(mean=19.5204 std=4.4281) import_rate(mean=24.2518 std=2.0164) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1905 std=0.5239) 2026-08-14 19:47:30.670640: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 19:47:30.684263: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 19:47:30.713371: ML Predictor: Baseline (pre-finetune) val_mae=0.0088 kWh val_bias=-0.0062 kWh 2026-08-14 19:47:51.959610: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0108 val_mae=0.0070 kWh val_bias=-0.0026 kWh (-2.9%) combined=0.0047 kWh ema_combined=0.0047 kWh 2026-08-14 19:48:11.348229: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0117 val_mae=0.0068 kWh val_bias=+0.0001 kWh (+0.1%) combined=0.0035 kWh ema_combined=0.0043 kWh 2026-08-14 19:48:32.436588: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0118 val_mae=0.0061 kWh val_bias=-0.0006 kWh (-0.7%) combined=0.0032 kWh ema_combined=0.0040 kWh 2026-08-14 19:48:53.027551: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0125 val_mae=0.0069 kWh val_bias=-0.0013 kWh (-1.5%) combined=0.0037 kWh ema_combined=0.0039 kWh 2026-08-14 19:48:57.152811: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:48:57.153147: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:48:57.153196: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:48:57.153362: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:48:57.153399: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:48:57.153426: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:48:57.153451: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:49:16.447221: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0141 val_mae=0.0067 kWh val_bias=-0.0029 kWh (-3.3%) combined=0.0049 kWh ema_combined=0.0042 kWh 2026-08-14 19:49:40.808020: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0133 val_mae=0.0084 kWh val_bias=-0.0041 kWh (-4.6%) combined=0.0052 kWh ema_combined=0.0045 kWh 2026-08-14 19:50:00.437354: --------------- PredBat - update at 2026-08-14 19:50:00+01:00 with clock skew 0 minutes, minutes now 1190 2026-08-14 19:50:00.438344: Saved current settings to /config/predbat_config.json 2026-08-14 19:50:00.438508: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 120.0 minutes 2026-08-14 19:50:00.438638: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 19:50:00.438733: Autoupdate: Currently up to date 2026-08-14 19:50:00.501514: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 19:50:00.501680: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 19:50:00.512276: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 19:50:00.513099: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 19:50:00.513289: Predbat mode is set to Control charge & discharge 2026-08-14 19:50:00.803459: Found 21602 load_today datapoints going back 28 days 2026-08-14 19:50:00.804036: Using load_power data to fill gaps in load_today data 2026-08-14 19:50:01.562606: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0141 val_mae=0.0092 kWh val_bias=-0.0035 kWh (-4.0%) combined=0.0048 kWh ema_combined=0.0046 kWh 2026-08-14 19:50:02.340337: Processing 721 30-minute periods for power integration 2026-08-14 19:50:02.694512: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 19:50:02.695137: Car charging hold False, threshold 6.0kWh 2026-08-14 19:50:02.695259: Current data so far today: load 20.8kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 19:50:02.722103: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 19:50:02.723024: Standing charge is set to 49.98p 2026-08-14 19:50:02.830603: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 19:50:02.830735: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 19:50:02.830977: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 555.0 minutes 2026-08-14 19:50:02.831578: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 555.0 minutes 2026-08-14 19:50:02.844381: Loaded 95 datapoints of futurerate analysis 2026-08-14 19:50:03.194656: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96'] 2026-08-14 19:50:03.243640: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 19:50:03.244293: Import rates: min 13.77p, max 43.82p, average 26.24p 2026-08-14 19:50:03.296835: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 19:50:03.297083: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 19:50:03.298412: High export rate found rates in range 99p to -99p 2026-08-14 19:50:03.409149: Low Import rate found rates in range 13.77p to 42.31p 2026-08-14 19:50:03.409417: Car 0 charging is not planned as it is not plugged in 2026-08-14 19:50:03.424454: Battery level now 7.04kWh, -1hr ago 8.64kWh, at midnight 2.43kWh, battery value change in the last hour -18.92p, change today 54.49p, rate_forward 11.83p 2026-08-14 19:50:03.425013: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.55kWh, net cost 0.24p, import 0.24p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 19:50:03.516075: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 19:50:03.516244: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 19:50:03.741908: Using weighted-bucket historical load forecast over 14 days 2026-08-14 19:50:03.773195: Today's load divergence 140.07%, in-day adjustment 139.59%, damping 0.95x, yesterday 146.81% today 138.07% blend 17.36% 2026-08-14 19:50:03.773361: Today's predicted so far 11.21kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 11.21kWh forecast extra. 2026-08-14 19:50:03.773395: Today's actual load so far 20.73kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 19:50:03.823818: Inverter 0: Type SK Sunsynk 2026-08-14 19:50:03.823913: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 19:50:03.824626: Reserve min: 7%, battery_min: 7% 2026-08-14 19:50:03.824732: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 19:50:03.825685: Inverter 0 SoC: 7.04kW 44%, current charge rate 5000W, current discharge rate 5250W, current battery power 1721W, current battery voltage 51.2V, grid power -55W, load power 1780W, PV Power 0W 2026-08-14 19:50:03.825876: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:50:03.825979: Inverter 0 scheduled charge enable is False 2026-08-14 19:50:03.826013: Inverter 0 charge windows currently [] 2026-08-14 19:50:03.826042: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 19:50:03.826195: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:50:03.826249: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:50:03.826297: Inverter 0 scheduled discharge enable is False 2026-08-14 19:50:03.826508: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:50:03.826559: Inverter 0 discharge windows currently [] 2026-08-14 19:50:03.826586: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:50:03.826607: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:50:03.826635: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:50:03.952296: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 19:50:03.952558: Plan was last updated on 2026-08-14 19:45:00+01:00 and is now 5.0 minutes old 2026-08-14 19:50:03.952837: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 19:50:03.952883: Best export window [ ] 2026-08-14 19:50:03.953748: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 19:50:03.966142: Load divergence over 8.0 hours mean 471.72W, min 319.8W, max 1182.6W, std dev 143.79W, divergence 15.24% 2026-08-14 19:50:04.012570: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 19:50:04.013822: LoadML is_calculating True 2026-08-14 19:50:04.013978: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 19:50:04.060819: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1341.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:35:00, load 46.72kWh, PV 0.0kWh 2026-08-14 19:50:04.357103: Battery has 5.75 hours left - now at 7.04kWh 2026-08-14 19:50:04.424725: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1373.46p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 47.95kWh, PV 0.0kWh 2026-08-14 19:50:04.605077: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1244.92p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 47.95kWh, PV 0.0kWh 2026-08-14 19:50:04.738012: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1218.68p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:35:00, load 46.72kWh, PV 0.0kWh 2026-08-14 19:50:04.738106: Saving plan best values to HA entities 2026-08-14 19:50:05.053069: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 19:50:05.062204: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 19:50:05.082749: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.83kWh, house 5.76kWh, export 0.0kWh, metric 1218.68p, metric10 1244.92p 2026-08-14 19:50:05.237549: Marginal costs baseline metric (no standing charge): 1118.7115 2026-08-14 19:50:05.675154: Marginal energy costs matrix computed: min=23.4 max=34.8 2026-08-14 19:50:05.796076: Rate array import [{'start': 1190, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1190, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 19:50:05.797316: - Your estimated bill for today is £7.31 and tomorrow is £4.26 2026-08-14 19:50:05.797504: - Import rates are very expensive (34.7p - 42.3p) for the next 2 and a quarter hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 19:50:05.797559: - The battery is currently at 44% and is in eco mode for the next 15 hours. 2026-08-14 19:50:05.797658: - For the next 48 hours there will be no solar generation. 2026-08-14 19:50:05.797704: - You will run out of battery in 5 and three quarters hours. 2026-08-14 19:50:05.797859: - Your next charge slot will be in 15 hours where import rates will be cheap (15.5p). 2026-08-14 19:50:05.798020: 2026-08-14 19:50:05.885498: Plan calculation took 1.93 seconds 2026-08-14 19:50:05.903999: No high rate period found 2026-08-14 19:50:06.102256: Import threshold used for optimisation was 17.0p 2026-08-14 19:50:06.238093: Low import rate windows [0: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 1: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 2: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 3: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 4: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 5: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 6: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 7: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 8: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 9: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 10: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 11: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 12: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 13: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 14: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 15: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 16: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 17: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 18: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 19: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 20: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 21: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 22: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 23: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 24: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 25: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 26: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 27: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 28: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 29: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 30: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 31: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 32: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 33: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 34: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 35: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 36: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 37: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 38: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 39: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 40: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 41: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 42: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 43: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 44: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 45: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 46: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 47: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 48: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 49: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 50: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 51: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 52: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 53: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 54: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 55: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 56: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 57: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 58: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 59: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 60: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 61: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 62: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 63: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 64: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 65: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 66: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 67: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 68: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 69: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 70: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 71: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 72: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 73: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 74: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 75: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 76: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 77: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 78: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 79: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 80: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 81: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 82: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 83: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 84: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 85: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 86: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 87: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 88: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 89: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 90: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 91: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 92: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 93: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 94: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9] 2026-08-14 19:50:06.265860: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 44%, target 19% 2026-08-14 19:50:06.266143: Inverter 0 disabled charge window while waiting for schedule (now 08-14 19:50:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 19:50:06.266289: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:50:06.266667: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:50:06.266833: No export window planned 2026-08-14 19:50:06.267074: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 19:50:06.267132: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:50:06.267412: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:50:06.267727: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 19:50:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 19:50:06.267856: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 19:50:06.268008: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 19:50:06.268201: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:50:06.268305: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:50:06.268363: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:50:06.268487: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:50:06.268545: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:50:06.268670: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:50:06.268842: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:50:06.269092: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:50:06.269267: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:50:06.269404: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:50:06.269582: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:50:06.269723: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:50:06.269925: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:50:06.270123: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:50:06.270359: Inverter 0 count register writes 0 2026-08-14 19:50:06.318308: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 19:50:06.326544: Total inverter register writes now 815 2026-08-14 19:50:06.432294: Info: Completed run status Demand 2026-08-14 19:50:06.447299: Info: record_status Demand 2026-08-14 19:50:06.461582: Saved current settings to /config/predbat_config.json 2026-08-14 19:50:06.461915: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 19:50:24.927063: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0148 val_mae=0.0063 kWh val_bias=-0.0009 kWh (-1.0%) combined=0.0033 kWh ema_combined=0.0042 kWh 2026-08-14 19:50:41.613667: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:50:41.614739: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:50:41.614806: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:50:41.614979: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:50:41.615029: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:50:41.615056: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:50:41.615104: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:50:45.268351: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0108 val_mae=0.0057 kWh val_bias=-0.0006 kWh (-0.7%) combined=0.0032 kWh ema_combined=0.0039 kWh 2026-08-14 19:51:06.879597: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0113 val_mae=0.0057 kWh val_bias=+0.0018 kWh (+2.1%) combined=0.0040 kWh ema_combined=0.0039 kWh 2026-08-14 19:51:25.574150: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0090 val_mae=0.0049 kWh val_bias=-0.0010 kWh (-1.1%) combined=0.0027 kWh ema_combined=0.0036 kWh 2026-08-14 19:51:46.079915: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0085 val_mae=0.0085 kWh val_bias=-0.0060 kWh (-6.7%) combined=0.0070 kWh ema_combined=0.0046 kWh 2026-08-14 19:52:08.479972: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0093 val_mae=0.0055 kWh val_bias=-0.0019 kWh (-2.2%) combined=0.0030 kWh ema_combined=0.0041 kWh 2026-08-14 19:52:29.835759: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0079 val_mae=0.0055 kWh val_bias=-0.0018 kWh (-2.0%) combined=0.0034 kWh ema_combined=0.0039 kWh 2026-08-14 19:52:42.153085: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:52:42.153671: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:52:42.153742: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:52:42.153922: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:52:42.153972: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:52:42.154000: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:52:42.154024: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:52:50.645668: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0079 val_mae=0.0053 kWh val_bias=-0.0015 kWh (-1.7%) combined=0.0037 kWh ema_combined=0.0038 kWh 2026-08-14 19:53:11.767148: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0078 val_mae=0.0049 kWh val_bias=-0.0017 kWh (-1.9%) combined=0.0034 kWh ema_combined=0.0037 kWh 2026-08-14 19:53:31.587319: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0079 val_mae=0.0047 kWh val_bias=-0.0008 kWh (-0.9%) combined=0.0024 kWh ema_combined=0.0033 kWh 2026-08-14 19:53:53.672501: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0073 val_mae=0.0046 kWh val_bias=-0.0010 kWh (-1.1%) combined=0.0026 kWh ema_combined=0.0031 kWh 2026-08-14 19:54:15.843079: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0068 val_mae=0.0048 kWh val_bias=-0.0016 kWh (-1.8%) combined=0.0025 kWh ema_combined=0.0029 kWh 2026-08-14 19:54:38.737932: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0070 val_mae=0.0045 kWh val_bias=-0.0010 kWh (-1.1%) combined=0.0023 kWh ema_combined=0.0027 kWh 2026-08-14 19:54:56.640614: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:54:56.641770: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:54:56.641824: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:54:56.641970: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:54:56.643037: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:54:56.643165: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:54:56.643310: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:54:59.323378: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0069 val_mae=0.0045 kWh val_bias=-0.0014 kWh (-1.5%) combined=0.0026 kWh ema_combined=0.0027 kWh 2026-08-14 19:55:00.843504: --------------- PredBat - update at 2026-08-14 19:55:00+01:00 with clock skew 0 minutes, minutes now 1195 2026-08-14 19:55:00.844537: Saved current settings to /config/predbat_config.json 2026-08-14 19:55:01.142801: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 19:55:01.142992: Autoupdate: Currently up to date 2026-08-14 19:55:01.175720: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 19:55:01.175889: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 19:55:01.176123: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 19:55:01.176815: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 19:55:01.177032: Predbat mode is set to Control charge & discharge 2026-08-14 19:55:01.599632: Found 21602 load_today datapoints going back 28 days 2026-08-14 19:55:01.599869: Using load_power data to fill gaps in load_today data 2026-08-14 19:55:02.940895: Processing 721 30-minute periods for power integration 2026-08-14 19:55:03.182657: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 19:55:03.182922: Car charging hold False, threshold 6.0kWh 2026-08-14 19:55:03.183089: Current data so far today: load 20.9kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 19:55:03.209948: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 19:55:03.210583: Standing charge is set to 49.98p 2026-08-14 19:55:03.395811: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 19:55:03.396077: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 19:55:03.396396: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 560.0 minutes 2026-08-14 19:55:03.397022: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 560.0 minutes 2026-08-14 19:55:03.403218: Loaded 95 datapoints of futurerate analysis 2026-08-14 19:55:03.564218: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96'] 2026-08-14 19:55:03.609630: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 19:55:03.609991: Import rates: min 13.77p, max 43.82p, average 26.23p 2026-08-14 19:55:03.652674: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 19:55:03.652807: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 19:55:03.654167: High export rate found rates in range 99p to -99p 2026-08-14 19:55:03.797756: Low Import rate found rates in range 13.77p to 42.31p 2026-08-14 19:55:03.797903: Car 0 charging is not planned as it is not plugged in 2026-08-14 19:55:03.834423: Battery level now 7.04kWh, -1hr ago 8.36kWh, at midnight 2.43kWh, battery value change in the last hour -15.61p, change today 54.49p, rate_forward 11.83p 2026-08-14 19:55:03.834830: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.5kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 19:55:03.930572: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 19:55:03.930745: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 19:55:04.193771: Using weighted-bucket historical load forecast over 14 days 2026-08-14 19:55:04.273566: Today's load divergence 140.12%, in-day adjustment 139.59%, damping 0.95x, yesterday 146.81% today 138.11% blend 17.01% 2026-08-14 19:55:04.273695: Today's predicted so far 11.24kWh with 0.0kWh car/iBoost excluded, 17.38kWh import ignored, and 11.24kWh forecast extra. 2026-08-14 19:55:04.273730: Today's actual load so far 20.78kWh with 0.0kWh car/iBoost excluded, and 17.38kWh import ignored. 2026-08-14 19:55:04.343511: Inverter 0: Type SK Sunsynk 2026-08-14 19:55:04.353042: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 19:55:04.353863: Reserve min: 7%, battery_min: 7% 2026-08-14 19:55:04.354051: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 19:55:04.354418: Inverter 0 SoC: 6.8kW 43%, current charge rate 5000W, current discharge rate 5250W, current battery power 1761W, current battery voltage 51.2V, grid power -54W, load power 1818W, PV Power 0W 2026-08-14 19:55:04.354711: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:55:04.354932: Inverter 0 scheduled charge enable is False 2026-08-14 19:55:04.355044: Inverter 0 charge windows currently [] 2026-08-14 19:55:04.355148: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 19:55:04.355351: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:55:04.355486: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:55:04.355611: Inverter 0 scheduled discharge enable is False 2026-08-14 19:55:04.355839: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:55:04.355952: Inverter 0 discharge windows currently [] 2026-08-14 19:55:04.356047: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:55:04.356137: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:55:04.356224: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:55:04.491821: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 19:55:04.492091: Plan was last updated on 2026-08-14 19:45:00+01:00 and is now 10.0 minutes old 2026-08-14 19:55:04.492575: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 19:55:04.492739: Best export window [ ] 2026-08-14 19:55:04.494254: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 19:55:04.503034: Load divergence over 8.0 hours mean 471.76W, min 291.0W, max 1057.8W, std dev 132.68W, divergence 14.06% 2026-08-14 19:55:04.559089: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 19:55:04.573134: LoadML is_calculating True 2026-08-14 19:55:04.573401: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 19:55:04.624944: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1348.16p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:20:00, load 46.86kWh, PV 0.0kWh 2026-08-14 19:55:04.835489: Battery has 5.42 hours left - now at 6.8kWh 2026-08-14 19:55:04.901195: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1379.78p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.1kWh, PV 0.0kWh 2026-08-14 19:55:05.005369: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1256.6p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.1kWh, PV 0.0kWh 2026-08-14 19:55:05.153987: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1231.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:20:00, load 46.86kWh, PV 0.0kWh 2026-08-14 19:55:05.167966: Saving plan best values to HA entities 2026-08-14 19:55:05.544168: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 19:55:05.551204: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 19:55:05.573265: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.35kWh, house 5.92kWh, export 0.0kWh, metric 1231.33p, metric10 1256.6p 2026-08-14 19:55:05.729153: Marginal costs baseline metric (no standing charge): 1131.3646 2026-08-14 19:55:06.342802: Marginal energy costs matrix computed: min=23.05 max=34.88 2026-08-14 19:55:06.551369: Rate array import [{'start': 1195, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1195, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 19:55:06.553556: - Your estimated bill for today is £7.31 and tomorrow is £4.31 2026-08-14 19:55:06.553710: - Import rates are very expensive (34.7p - 42.3p) for the next 2 hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 19:55:06.553816: - The battery is currently at 43% and is in eco mode for the next 15 hours. 2026-08-14 19:55:06.553911: - For the next 48 hours there will be no solar generation. 2026-08-14 19:55:06.554002: - You will run out of battery in 5 and a half hours. 2026-08-14 19:55:06.554090: - Your next charge slot will be in 15 hours where import rates will be cheap (15.5p). 2026-08-14 19:55:06.554178: 2026-08-14 19:55:06.658012: Plan calculation took 2.17 seconds 2026-08-14 19:55:06.662385: No high rate period found 2026-08-14 19:55:06.768356: Import threshold used for optimisation was 17.0p 2026-08-14 19:55:06.879256: Low import rate windows [0: 08-14 19:30:00 - 08-14 20:00:00 @ 42.31, 1: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 2: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 3: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 4: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 5: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 6: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 7: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 8: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 9: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 10: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 11: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 12: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 13: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 14: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 15: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 16: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 17: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 18: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 19: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 20: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 21: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 22: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 23: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 24: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 25: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 26: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 27: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 28: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 29: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 30: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 31: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 32: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 33: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 34: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 35: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 36: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 37: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 38: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 39: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 40: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 41: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 42: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 43: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 44: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 45: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 46: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 47: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 48: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 49: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 50: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 51: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 52: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 53: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 54: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 55: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 56: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 57: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 58: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 59: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 60: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 61: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 62: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 63: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 64: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 65: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 66: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 67: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 68: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 69: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 70: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 71: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 72: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 73: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 74: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 75: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 76: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 77: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 78: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 79: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 80: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 81: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 82: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 83: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 84: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 85: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 86: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 87: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 88: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 89: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 90: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 91: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 92: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 93: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 94: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9] 2026-08-14 19:55:06.904189: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 43%, target 19% 2026-08-14 19:55:06.904378: Inverter 0 disabled charge window while waiting for schedule (now 08-14 19:55:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 19:55:06.904487: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:55:06.904708: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:55:06.904811: No export window planned 2026-08-14 19:55:06.904984: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 19:55:06.905039: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:55:06.905214: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:55:06.905394: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 19:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 19:55:06.905474: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 19:55:06.905538: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 19:55:06.905627: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:55:06.905678: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:55:06.905714: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:55:06.905758: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:55:06.905793: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:55:06.905894: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:55:06.905994: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:55:06.906178: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:55:06.906235: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:55:06.906357: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:55:06.906411: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:55:06.906547: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:55:06.906601: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:55:06.906718: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:55:06.906766: Inverter 0 count register writes 0 2026-08-14 19:55:06.941162: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 19:55:06.941778: Recompute is saving previous plan... 2026-08-14 19:55:06.946673: Best charge window [ 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0% ] 2026-08-14 19:55:06.946938: Best export window [ ] 2026-08-14 19:55:06.948566: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 19:55:06.962745: Load divergence over 8.0 hours mean 471.76W, min 291.0W, max 1057.8W, std dev 132.68W, divergence 14.06% 2026-08-14 19:55:06.984302: Calculating data from yesterday for savings calculation 2026-08-14 19:55:06.999477: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 19:55:07.064943: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 19:55:07.081403: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 870.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 19:55:07.102602: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 19:55:07.172797: Yesterday: Predbat disabled was £8.57 (adjusted £8.43) vs £6.21 (adjusted £5.91), saving £2.35 (adjusted £2.52) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 13.25kWh 2026-08-14 19:55:07.350680: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 901.12p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 19:55:07.350932: Yesterday: No Battery/PV system cost predicted was £9.01 (adjusted £9.01) vs £6.21 (adjusted £5.91), saving £2.8 (adjusted £3.1) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 19:55:07.379604: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 19:55:07.383315: LoadML is_calculating True 2026-08-14 19:55:07.383457: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 19:55:07.397855: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 19:55:07.400045: Optimise levels pass started at 2026-08-14 19:55:07 2026-08-14 19:55:07.400127: Optimise all windows, total charge 94 export 1 2026-08-14 19:55:16.797401: >> Region optimisation pass width 960 gives best_metric 1196.98p, best_cost 1202.45p, best_cycle 36.51kWh, best_import 27.73kWh 2026-08-14 19:55:17.944003: >> Region optimisation pass width 480 gives best_metric 1197.85p, best_cost 1203.24p, best_cycle 36.64kWh, best_import 27.74kWh 2026-08-14 19:55:19.152188: >> Region optimisation pass width 240 gives best_metric 1197.85p, best_cost 1203.24p, best_cycle 36.64kWh, best_import 27.74kWh 2026-08-14 19:55:25.590615: >> Region optimisation pass width 120 gives best_metric 1192.99p, best_cost 1200.79p, best_cycle 38.78kWh, best_import 28.02kWh 2026-08-14 19:55:25.592079: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 79 2026-08-14 19:55:25.592173: Optimise levels pass ended at 2026-08-14 19:55:25, duration 18.2 seconds tried 354 combinations 2026-08-14 19:55:25.592236: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1192.99p, best_keep 0kWh, best_cycle 38.78kWh, best_carbon 0kg, best_import 28.02kWh 2026-08-14 19:55:25.624141: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3.0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 19:55:55.524419: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0069 val_mae=0.0042 kWh val_bias=-0.0017 kWh (-1.9%) combined=0.0028 kWh ema_combined=0.0027 kWh 2026-08-14 19:55:59.067520: Tweak plan optimisation started metric 1106.49p, cost 1115.64p 2026-08-14 19:56:01.647816: Tweak optimisation finished metric 1106.49p, cost 1115.64p, metric_keep 0kWh, cycle 30.28kWh, carbon 0kg, import 22.25kWh, changed 8 window(s) 2026-08-14 19:56:01.677290: Swap charge optimisation started metric 1106.49p, cost 1115.64p, min_improvement_swap 0.1p 2026-08-14 19:56:13.704653: Swap charge optimisation finished metric 1106.49p, cost 1115.64p 2026-08-14 19:56:13.897151: Raw charge windows [ 14-08 19:30:00 - 14-08 20:00:00 @ 42.31p 0%, 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 84%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100% ] reserve 1.12 2026-08-14 19:56:13.897942: Unclipped charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 20:00:00 @ 32.74p 100% ] reserve 1.12 2026-08-14 19:56:13.898688: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 20:00:00 @ 32.74p 100% ] reserve 1.12 2026-08-14 19:56:13.899080: Filtered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 20:00:00 @ 32.74p 100% ] reserve 1.12 2026-08-14 19:56:13.939552: Previous plan best metric is 1106.49 (cost 1115.64) and new plan best metric is 1106.49 (cost 1115.64) 2026-08-14 19:56:13.939979: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 19:56:13.940268: Plan valid is now true after recompute was False 2026-08-14 19:56:13.971072: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1345.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:20:00, load 46.68kWh, PV 0.0kWh 2026-08-14 19:56:14.216154: Battery has 5.42 hours left - now at 6.8kWh 2026-08-14 19:56:14.373778: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1376.81p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 47.9kWh, PV 0.0kWh 2026-08-14 19:56:14.585918: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1242.89p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 47.9kWh, PV 0.0kWh 2026-08-14 19:56:14.745789: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1215.61p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:20:00, load 46.68kWh, PV 0.0kWh 2026-08-14 19:56:14.745899: Saving plan best values to HA entities 2026-08-14 19:56:15.014361: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 19:56:15.023173: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 19:56:15.030904: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.33kWh, house 5.92kWh, export 0.0kWh, metric 1215.61p, metric10 1242.89p 2026-08-14 19:56:15.214569: Marginal costs baseline metric (no standing charge): 1115.6438 2026-08-14 19:56:15.563773: Marginal energy costs matrix computed: min=23.05 max=34.88 2026-08-14 19:56:15.734155: Rate array import [{'start': 1195, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 42.3p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1195, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 19:56:15.735001: - Your estimated bill for today is £7.31 and tomorrow is £4.31 2026-08-14 19:56:15.735050: - Import rates are very expensive (34.7p - 42.3p) for the next 2 hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 19:56:15.735073: - The battery is currently at 43% and is in eco mode for the next 15 hours. 2026-08-14 19:56:15.735092: - For the next 48 hours there will be no solar generation. 2026-08-14 19:56:15.735113: - You will run out of battery in 5 and a half hours. 2026-08-14 19:56:15.735130: - Your next charge slot will be in 15 hours where import rates will be cheap (15.5p). 2026-08-14 19:56:15.735148: 2026-08-14 19:56:15.785672: Plan calculation took 68.84 seconds 2026-08-14 19:56:15.786201: Inverter 0: Type SK Sunsynk 2026-08-14 19:56:15.786288: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 19:56:15.787035: Reserve min: 7%, battery_min: 7% 2026-08-14 19:56:15.787164: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 19:56:15.787495: Inverter 0 SoC: 6.8kW 43%, current charge rate 5000W, current discharge rate 5250W, current battery power 1725W, current battery voltage 51.2V, grid power -54W, load power 1782W, PV Power 0W 2026-08-14 19:56:15.787812: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:56:15.787970: Inverter 0 scheduled charge enable is False 2026-08-14 19:56:15.788160: Inverter 0 charge windows currently [] 2026-08-14 19:56:15.788237: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 19:56:15.788639: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:56:15.788718: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:56:15.788804: Inverter 0 scheduled discharge enable is False 2026-08-14 19:56:15.789159: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:56:15.789305: Inverter 0 discharge windows currently [] 2026-08-14 19:56:15.789360: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:56:15.789398: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:56:15.789514: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:56:15.902842: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 43%, target 19% 2026-08-14 19:56:15.903116: Inverter 0 disabled charge window while waiting for schedule (now 08-14 19:55:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 19:56:15.903198: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:56:15.904473: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:56:15.904612: No export window planned 2026-08-14 19:56:15.904786: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 19:56:15.904835: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 19:56:15.911446: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 19:56:15.911772: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 19:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 19:56:15.911840: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 19:56:15.911976: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 19:56:15.912107: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:56:15.912160: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:56:15.912255: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:56:15.912301: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:56:15.912375: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:56:15.912416: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:56:15.912501: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 19:56:15.912662: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:56:15.912720: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:56:15.912788: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:56:15.912892: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:56:15.912935: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:56:15.913017: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:56:15.913063: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 19:56:15.913125: Inverter 0 count register writes 0 2026-08-14 19:56:15.966402: Total inverter register writes now 815 2026-08-14 19:56:16.031946: Info: Completed run status Demand 2026-08-14 19:56:16.044542: Info: record_status Demand 2026-08-14 19:56:16.062770: Saved current settings to /config/predbat_config.json 2026-08-14 19:56:16.063368: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 19:56:29.579342: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0071 val_mae=0.0041 kWh val_bias=-0.0007 kWh (-0.8%) combined=0.0021 kWh ema_combined=0.0025 kWh 2026-08-14 19:56:51.451560: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0063 val_mae=0.0043 kWh val_bias=-0.0019 kWh (-2.2%) combined=0.0028 kWh ema_combined=0.0026 kWh 2026-08-14 19:56:51.685209: TemperatureAPI: Using coordinates latitude 53.4, longitude -2.2 2026-08-14 19:56:51.874628: TemperatureAPI: Successfully fetched temperature data from Open-Meteo API 2026-08-14 19:56:57.279481: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:56:57.279775: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:56:57.279826: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:56:57.279973: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:56:57.280654: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:56:57.280732: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:56:57.280758: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:57:12.284133: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0055 val_mae=0.0044 kWh val_bias=-0.0020 kWh (-2.3%) combined=0.0029 kWh ema_combined=0.0027 kWh 2026-08-14 19:57:22.503838: Info: HAHistory: Pruning history data started. 2026-08-14 19:57:22.514012: Info: HAHistory: Pruning history data completed. 2026-08-14 19:57:34.035468: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0065 val_mae=0.0039 kWh val_bias=-0.0011 kWh (-1.2%) combined=0.0021 kWh ema_combined=0.0025 kWh 2026-08-14 19:57:55.891451: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0067 val_mae=0.0039 kWh val_bias=-0.0005 kWh (-0.6%) combined=0.0020 kWh ema_combined=0.0023 kWh 2026-08-14 19:58:17.792185: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0056 val_mae=0.0038 kWh val_bias=-0.0015 kWh (-1.7%) combined=0.0025 kWh ema_combined=0.0024 kWh 2026-08-14 19:58:37.473312: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0062 val_mae=0.0040 kWh val_bias=-0.0015 kWh (-1.7%) combined=0.0026 kWh ema_combined=0.0025 kWh 2026-08-14 19:58:58.034709: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0062 val_mae=0.0040 kWh val_bias=-0.0015 kWh (-1.7%) combined=0.0026 kWh ema_combined=0.0025 kWh 2026-08-14 19:58:58.035622: ML Predictor: Restored best weights from epoch with val_mae=0.0039 kWh val_bias=-0.0005 kWh (-0.6%) 2026-08-14 19:58:58.035902: ML Predictor: Training complete, final val_mae=0.0039 kWh val_bias=-0.0005 kWh (-0.6%) 2026-08-14 19:58:59.723531: ML Predictor: AR rollout over holdout: ar_mae=0.0041 kWh ar_bias=-0.0007 kWh (-0.7%) [drift vs teacher-forced: +0.0002 kWh] 2026-08-14 19:58:59.734457: ML Predictor: Curriculum pass 4/5 complete, val_mae=0.0039 kWh 2026-08-14 19:58:59.734565: ML Predictor: Curriculum final pass 5/5: full dataset (56.3 days) 2026-08-14 19:58:59.734604: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 19:59:00.425864: ML Predictor: Creating dataset with 1350 hours of training data, 48 hours validation 2026-08-14 19:59:05.769218: ML Predictor: Created 15920 training samples, 576 validation samples 2026-08-14 19:59:05.823395: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0470) load(mean=0.0590 std=0.0471) pv(mean=0.0000 std=0.0100) temp(mean=19.5425 std=4.4441) import_rate(mean=24.2654 std=2.0892) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1909 std=0.5242) 2026-08-14 19:59:05.912877: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 19:59:05.930034: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 19:59:05.971334: ML Predictor: Baseline (pre-finetune) val_mae=0.0111 kWh val_bias=-0.0045 kWh 2026-08-14 19:59:12.063126: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 19:59:12.063464: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 19:59:12.063532: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 19:59:12.063713: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 19:59:12.063763: Note: Inverter does not support discharge freeze - disabled 2026-08-14 19:59:12.063791: Note: Inverter does not support charge freeze - disabled 2026-08-14 19:59:12.063817: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 19:59:28.282748: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0136 val_mae=0.0128 kWh val_bias=-0.0040 kWh (-4.2%) combined=0.0084 kWh ema_combined=0.0084 kWh 2026-08-14 19:59:49.459480: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0145 val_mae=0.0103 kWh val_bias=-0.0050 kWh (-5.4%) combined=0.0081 kWh ema_combined=0.0083 kWh 2026-08-14 20:00:00.356976: --------------- PredBat - update at 2026-08-14 20:00:00+01:00 with clock skew 0 minutes, minutes now 1200 2026-08-14 20:00:00.358694: Saved current settings to /config/predbat_config.json 2026-08-14 20:00:00.359059: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 5.0 minutes 2026-08-14 20:00:00.359332: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 20:00:00.359741: Autoupdate: Currently up to date 2026-08-14 20:00:00.399235: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 20:00:00.399454: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 20:00:00.399729: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 20:00:00.400454: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 20:00:00.400612: Predbat mode is set to Control charge & discharge 2026-08-14 20:00:00.801898: Found 21602 load_today datapoints going back 27 days 2026-08-14 20:00:00.802089: Using load_power data to fill gaps in load_today data 2026-08-14 20:00:01.872419: Processing 721 30-minute periods for power integration 2026-08-14 20:00:02.331324: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 20:00:02.331516: Car charging hold False, threshold 6.0kWh 2026-08-14 20:00:02.331585: Current data so far today: load 21.15kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 20:00:02.359803: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 20:00:02.360297: Standing charge is set to 49.98p 2026-08-14 20:00:02.526338: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 20:00:02.526513: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 20:00:02.526841: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 565.0 minutes 2026-08-14 20:00:02.527639: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 565.0 minutes 2026-08-14 20:00:02.551448: Loaded 95 datapoints of futurerate analysis 2026-08-14 20:00:03.033838: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13'] 2026-08-14 20:00:03.083630: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 20:00:03.085435: Import rates: min 13.77p, max 43.82p, average 26.21p 2026-08-14 20:00:03.126045: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 20:00:03.126505: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 20:00:03.129078: High export rate found rates in range 99p to -99p 2026-08-14 20:00:03.294713: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 20:00:03.294974: Car 0 charging is not planned as it is not plugged in 2026-08-14 20:00:03.367761: Battery level now 6.8kWh, -1hr ago 8.36kWh, at midnight 2.43kWh, battery value change in the last hour -18.45p, change today 51.66p, rate_forward 11.83p 2026-08-14 20:00:03.368495: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.6kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 20:00:03.528126: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 20:00:03.528309: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 20:00:03.662208: Using weighted-bucket historical load forecast over 14 days 2026-08-14 20:00:03.718201: Today's load divergence 140.78%, in-day adjustment 140.08%, damping 0.95x, yesterday 146.81% today 138.74% blend 16.67% 2026-08-14 20:00:03.718504: Today's predicted so far 11.34kWh with 0.0kWh car/iBoost excluded, 17.37kWh import ignored, and 11.34kWh forecast extra. 2026-08-14 20:00:03.718659: Today's actual load so far 21.14kWh with 0.0kWh car/iBoost excluded, and 17.37kWh import ignored. 2026-08-14 20:00:03.807870: Inverter 0: Type SK Sunsynk 2026-08-14 20:00:03.808070: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 20:00:03.809102: Reserve min: 7%, battery_min: 7% 2026-08-14 20:00:03.809229: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 20:00:03.809687: Inverter 0 SoC: 6.65kW 42%, current charge rate 5000W, current discharge rate 5250W, current battery power 1738W, current battery voltage 51.2V, grid power -55W, load power 1796W, PV Power 0W 2026-08-14 20:00:03.810229: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:00:03.810374: Inverter 0 scheduled charge enable is False 2026-08-14 20:00:03.810457: Inverter 0 charge windows currently [] 2026-08-14 20:00:03.810511: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 20:00:03.810715: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:00:03.810783: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:00:03.810850: Inverter 0 scheduled discharge enable is False 2026-08-14 20:00:03.811010: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:00:03.811052: Inverter 0 discharge windows currently [] 2026-08-14 20:00:03.811076: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:00:03.811094: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:00:03.811158: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:00:03.934051: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 20:00:03.934291: Plan was last updated on 2026-08-14 19:55:00+01:00 and is now 5.0 minutes old 2026-08-14 20:00:03.934876: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 20:00:03.935016: Best export window [ ] 2026-08-14 20:00:03.936741: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 20:00:03.943524: Load divergence over 8.0 hours mean 473.27W, min 279.0W, max 1138.2W, std dev 135.01W, divergence 14.26% 2026-08-14 20:00:03.988254: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 20:00:03.988714: LoadML is_calculating True 2026-08-14 20:00:03.988782: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 20:00:04.063723: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1348.31p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 46.93kWh, PV 0.0kWh 2026-08-14 20:00:04.311380: Battery has 5.25 hours left - now at 6.65kWh 2026-08-14 20:00:04.388217: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1379.69p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.15kWh, PV 0.0kWh 2026-08-14 20:00:04.646952: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1251.13p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.15kWh, PV 0.0kWh 2026-08-14 20:00:04.843643: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1225.02p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 46.93kWh, PV 0.0kWh 2026-08-14 20:00:04.844449: Saving plan best values to HA entities 2026-08-14 20:00:05.224256: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 20:00:05.230685: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 20:00:05.236342: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.83kWh, house 5.99kWh, export 0.0kWh, metric 1225.02p, metric10 1251.13p 2026-08-14 20:00:05.370654: Marginal costs baseline metric (no standing charge): 1125.0538 2026-08-14 20:00:06.006944: Marginal energy costs matrix computed: min=22.7 max=34.87 2026-08-14 20:00:06.219303: Rate array import [{'start': 1200, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 40.4p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1200, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 20:00:06.236348: - Your estimated bill for today is £7.31 and tomorrow is £4.33 2026-08-14 20:00:06.236480: - Import rates are very expensive (34.7p - 40.4p) for the next 2 hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 20:00:06.236514: - The battery is currently at 42% and is in eco mode for the next 15 hours. 2026-08-14 20:00:06.236686: - For the next 48 hours there will be no solar generation. 2026-08-14 20:00:06.236735: - You will run out of battery in 5 and a quarter hours. 2026-08-14 20:00:06.236761: - Your next charge slot will be in 15 hours where import rates will be cheap (15.5p). 2026-08-14 20:00:06.236852: 2026-08-14 20:00:06.338947: Plan calculation took 2.40 seconds 2026-08-14 20:00:06.342563: No high rate period found 2026-08-14 20:00:06.475199: Import threshold used for optimisation was 17.0p 2026-08-14 20:00:06.624446: Low import rate windows [0: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 1: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 2: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 3: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 4: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 5: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 6: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 7: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 8: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 9: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 10: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 11: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 12: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 13: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 14: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 15: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 16: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 17: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 18: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 19: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 20: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 21: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 22: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 23: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 24: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 25: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 26: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 27: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 28: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 29: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 30: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 31: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 32: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 33: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 34: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 35: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 36: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 37: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 38: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 39: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 40: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 41: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 42: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 43: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 44: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 45: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 46: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 47: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 48: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 49: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 50: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 51: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 52: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 53: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 54: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 55: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 56: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 57: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 58: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 59: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 60: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 61: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 62: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 63: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 64: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 65: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 66: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 67: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 68: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 69: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 70: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 71: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 72: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 73: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 74: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 75: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 76: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 77: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 78: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 79: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 80: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 81: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 82: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 83: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 84: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 85: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 86: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 87: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 88: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 89: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 90: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 91: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 92: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 93: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9] 2026-08-14 20:00:06.639171: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 42%, target 19% 2026-08-14 20:00:06.639372: Inverter 0 disabled charge window while waiting for schedule (now 08-14 20:00:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 20:00:06.639482: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:00:06.639737: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:00:06.639940: No export window planned 2026-08-14 20:00:06.640463: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 20:00:06.640537: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:00:06.641128: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:00:06.641847: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 20:00:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 20:00:06.641973: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 20:00:06.642035: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 20:00:06.642115: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:00:06.642158: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:00:06.642193: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:00:06.642334: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:00:06.642386: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:00:06.642440: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:00:06.642514: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:00:06.642624: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:00:06.642886: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:00:06.643062: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:00:06.643204: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:00:06.643425: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:00:06.643706: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:00:06.643862: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:00:06.644001: Inverter 0 count register writes 0 2026-08-14 20:00:06.684332: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 20:00:06.697001: Total inverter register writes now 815 2026-08-14 20:00:06.781323: Info: Completed run status Demand 2026-08-14 20:00:06.790430: Info: record_status Demand 2026-08-14 20:00:06.821124: Saved current settings to /config/predbat_config.json 2026-08-14 20:00:06.821501: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 20:00:22.667713: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0156 val_mae=0.0095 kWh val_bias=-0.0021 kWh (-2.2%) combined=0.0054 kWh ema_combined=0.0075 kWh 2026-08-14 20:00:42.013875: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:00:42.014313: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:00:42.014486: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:00:42.014782: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:00:42.014947: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:00:42.015107: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:00:42.015258: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:00:44.459214: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0152 val_mae=0.0098 kWh val_bias=-0.0029 kWh (-3.1%) combined=0.0056 kWh ema_combined=0.0069 kWh 2026-08-14 20:01:08.451583: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0154 val_mae=0.0080 kWh val_bias=+0.0012 kWh (+1.3%) combined=0.0043 kWh ema_combined=0.0061 kWh 2026-08-14 20:01:29.192093: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0154 val_mae=0.0088 kWh val_bias=+0.0019 kWh (+2.0%) combined=0.0059 kWh ema_combined=0.0061 kWh 2026-08-14 20:01:50.162002: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0146 val_mae=0.0081 kWh val_bias=-0.0002 kWh (-0.2%) combined=0.0042 kWh ema_combined=0.0055 kWh 2026-08-14 20:02:11.622331: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0120 val_mae=0.0069 kWh val_bias=+0.0014 kWh (+1.5%) combined=0.0038 kWh ema_combined=0.0050 kWh 2026-08-14 20:02:32.158974: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0108 val_mae=0.0072 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0041 kWh ema_combined=0.0047 kWh 2026-08-14 20:02:42.405171: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:02:42.405512: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:02:42.405574: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:02:42.405764: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:02:42.405829: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:02:42.405867: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:02:42.405912: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:02:53.549673: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0119 val_mae=0.0086 kWh val_bias=-0.0044 kWh (-4.7%) combined=0.0065 kWh ema_combined=0.0052 kWh 2026-08-14 20:03:16.030773: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0099 val_mae=0.0075 kWh val_bias=-0.0021 kWh (-2.2%) combined=0.0049 kWh ema_combined=0.0051 kWh 2026-08-14 20:03:37.193563: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0094 val_mae=0.0066 kWh val_bias=-0.0026 kWh (-2.8%) combined=0.0050 kWh ema_combined=0.0051 kWh 2026-08-14 20:03:58.695084: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0090 val_mae=0.0064 kWh val_bias=-0.0032 kWh (-3.5%) combined=0.0048 kWh ema_combined=0.0050 kWh 2026-08-14 20:04:23.215049: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0104 val_mae=0.0077 kWh val_bias=-0.0038 kWh (-4.0%) combined=0.0050 kWh ema_combined=0.0050 kWh 2026-08-14 20:04:44.542768: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0079 val_mae=0.0055 kWh val_bias=+0.0005 kWh (+0.5%) combined=0.0032 kWh ema_combined=0.0045 kWh 2026-08-14 20:04:56.907278: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:04:56.907768: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:04:56.907893: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:04:56.908169: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:04:56.908283: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:04:56.908422: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:04:56.908520: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:05:00.116937: --------------- PredBat - update at 2026-08-14 20:05:00+01:00 with clock skew 0 minutes, minutes now 1205 2026-08-14 20:05:00.118453: Saved current settings to /config/predbat_config.json 2026-08-14 20:05:00.120277: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 10.0 minutes 2026-08-14 20:05:00.120627: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 20:05:00.120850: Autoupdate: Currently up to date 2026-08-14 20:05:00.169041: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 20:05:00.169317: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 20:05:00.169652: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 20:05:00.170355: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 20:05:00.170694: Predbat mode is set to Control charge & discharge 2026-08-14 20:05:00.573695: Found 21602 load_today datapoints going back 27 days 2026-08-14 20:05:00.575500: Using load_power data to fill gaps in load_today data 2026-08-14 20:05:01.925486: Processing 721 30-minute periods for power integration 2026-08-14 20:05:02.470352: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 20:05:02.470541: Car charging hold False, threshold 6.0kWh 2026-08-14 20:05:02.470601: Current data so far today: load 21.3kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 20:05:02.540554: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 20:05:02.541532: Standing charge is set to 49.98p 2026-08-14 20:05:02.666073: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 20:05:02.666482: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 20:05:02.666908: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 570.0 minutes 2026-08-14 20:05:02.667686: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 570.0 minutes 2026-08-14 20:05:02.676510: Loaded 95 datapoints of futurerate analysis 2026-08-14 20:05:03.085620: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13'] 2026-08-14 20:05:03.141955: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 20:05:03.142559: Import rates: min 13.77p, max 43.82p, average 26.2p 2026-08-14 20:05:03.193090: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 20:05:03.193582: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 20:05:03.195181: High export rate found rates in range 99p to -99p 2026-08-14 20:05:03.363763: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 20:05:03.363934: Car 0 charging is not planned as it is not plugged in 2026-08-14 20:05:03.385645: Battery level now 6.65kWh, -1hr ago 8.09kWh, at midnight 2.43kWh, battery value change in the last hour -17.03p, change today 49.86p, rate_forward 11.83p 2026-08-14 20:05:03.386365: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.6kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 20:05:03.491342: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 20:05:03.491687: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 20:05:03.634143: Using weighted-bucket historical load forecast over 14 days 2026-08-14 20:05:03.746541: Today's load divergence 141.31%, in-day adjustment 140.48%, damping 0.95x, yesterday 146.81% today 139.25% blend 16.32% 2026-08-14 20:05:03.746841: Today's predicted so far 11.43kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 11.43kWh forecast extra. 2026-08-14 20:05:03.746966: Today's actual load so far 21.44kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 20:05:03.857272: Inverter 0: Type SK Sunsynk 2026-08-14 20:05:03.857409: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 20:05:03.858161: Reserve min: 7%, battery_min: 7% 2026-08-14 20:05:03.858265: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 20:05:03.858619: Inverter 0 SoC: 6.55kW 41%, current charge rate 5000W, current discharge rate 5250W, current battery power 716W, current battery voltage 51.2V, grid power -54W, load power 771W, PV Power 0W 2026-08-14 20:05:03.859358: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:05:03.859524: Inverter 0 scheduled charge enable is False 2026-08-14 20:05:03.859574: Inverter 0 charge windows currently [] 2026-08-14 20:05:03.859746: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 20:05:03.859962: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:05:03.860009: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:05:03.860060: Inverter 0 scheduled discharge enable is False 2026-08-14 20:05:03.860232: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:05:03.860279: Inverter 0 discharge windows currently [] 2026-08-14 20:05:03.860309: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:05:03.860334: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:05:03.860358: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:05:03.964412: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 20:05:03.964535: Plan was last updated on 2026-08-14 19:55:00+01:00 and is now 10.0 minutes old 2026-08-14 20:05:03.964795: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 20:05:03.964919: Best export window [ ] 2026-08-14 20:05:03.965807: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 20:05:03.969246: Load divergence over 8.0 hours mean 474.77W, min 267.0W, max 1243.8W, std dev 156.66W, divergence 16.5% 2026-08-14 20:05:03.989855: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 20:05:03.989979: LoadML is_calculating True 2026-08-14 20:05:03.990007: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 20:05:04.149846: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1349.84p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 47.09kWh, PV 0.0kWh 2026-08-14 20:05:04.378808: Battery has 5.17 hours left - now at 6.55kWh 2026-08-14 20:05:04.653822: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1381.21p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.31kWh, PV 0.0kWh 2026-08-14 20:05:04.840606: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1258.13p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.31kWh, PV 0.0kWh 2026-08-14 20:05:04.959422: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1233.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 47.09kWh, PV 0.0kWh 2026-08-14 20:05:04.959699: Saving plan best values to HA entities 2026-08-14 20:05:05.254160: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 20:05:05.264174: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 20:05:05.271924: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.33kWh, house 6.0kWh, export 0.0kWh, metric 1233.09p, metric10 1258.13p 2026-08-14 20:05:05.437592: Marginal costs baseline metric (no standing charge): 1133.1282 2026-08-14 20:05:05.802165: Marginal energy costs matrix computed: min=22.75 max=34.69 2026-08-14 20:05:06.003281: Rate array import [{'start': 1205, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 40.4p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1205, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 20:05:06.004644: - Your estimated bill for today is £7.31 and tomorrow is £4.33 2026-08-14 20:05:06.004801: - Import rates are very expensive (34.7p - 40.4p) for the next 1 hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 20:05:06.004941: - The battery is currently at 41% and is in eco mode for the next 15 hours. 2026-08-14 20:05:06.005093: - For the next 48 hours there will be no solar generation. 2026-08-14 20:05:06.005221: - You will run out of battery in 5 and a quarter hours. 2026-08-14 20:05:06.005325: - Your next charge slot will be in 15 hours where import rates will be cheap (15.5p). 2026-08-14 20:05:06.005456: 2026-08-14 20:05:06.090425: Plan calculation took 2.13 seconds 2026-08-14 20:05:06.094035: No high rate period found 2026-08-14 20:05:06.176528: Import threshold used for optimisation was 17.0p 2026-08-14 20:05:06.270897: Low import rate windows [0: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 1: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 2: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 3: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 4: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 5: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 6: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 7: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 8: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 9: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 10: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 11: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 12: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 13: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 14: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 15: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 16: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 17: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 18: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 19: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 20: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 21: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 22: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 23: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 24: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 25: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 26: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 27: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 28: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 29: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 30: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 31: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 32: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 33: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 34: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 35: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 36: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 37: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 38: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 39: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 40: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 41: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 42: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 43: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 44: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 45: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 46: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 47: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 48: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 49: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 50: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 51: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 52: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 53: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 54: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 55: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 56: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 57: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 58: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 59: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 60: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 61: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 62: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 63: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 64: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 65: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 66: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 67: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 68: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 69: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 70: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 71: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 72: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 73: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 74: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 75: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 76: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 77: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 78: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 79: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 80: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 81: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 82: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 83: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 84: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 85: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 86: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 87: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 88: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 89: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 90: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 91: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 92: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 93: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 94: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99] 2026-08-14 20:05:06.306146: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 41%, target 19% 2026-08-14 20:05:06.306653: Inverter 0 disabled charge window while waiting for schedule (now 08-14 20:05:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 20:05:06.306977: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:05:06.307499: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:05:06.311684: No export window planned 2026-08-14 20:05:06.313715: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 20:05:06.313873: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:05:06.315819: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:05:06.316277: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 20:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 20:05:06.317181: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 20:05:06.317428: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 20:05:06.317700: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:05:06.317932: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:05:06.318213: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:05:06.318433: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:05:06.320248: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:05:06.320418: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:05:06.320611: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:05:06.320895: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:05:06.321104: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:05:06.321284: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:05:06.321507: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:05:06.321683: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:05:06.321863: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:05:06.322036: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:05:06.322204: Inverter 0 count register writes 0 2026-08-14 20:05:06.382155: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 20:05:06.382485: Recompute is saving previous plan... 2026-08-14 20:05:06.388046: Best charge window [ 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0% ] 2026-08-14 20:05:06.388522: Best export window [ ] 2026-08-14 20:05:06.390190: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 20:05:06.401213: Load divergence over 8.0 hours mean 474.77W, min 267.0W, max 1243.8W, std dev 156.66W, divergence 16.5% 2026-08-14 20:05:06.460686: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 20:05:06.461160: LoadML is_calculating True 2026-08-14 20:05:06.461216: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 20:05:06.474406: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 20:05:06.475614: Optimise levels pass started at 2026-08-14 20:05:06 2026-08-14 20:05:06.475665: Optimise all windows, total charge 94 export 1 2026-08-14 20:05:14.525265: >> Region optimisation pass width 960 gives best_metric 1195.02p, best_cost 1202.5p, best_cycle 37.47kWh, best_import 28.0kWh 2026-08-14 20:05:15.753982: >> Region optimisation pass width 480 gives best_metric 1195.02p, best_cost 1202.5p, best_cycle 37.47kWh, best_import 28.0kWh 2026-08-14 20:05:16.551761: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0086 val_mae=0.0060 kWh val_bias=-0.0016 kWh (-1.7%) combined=0.0035 kWh ema_combined=0.0042 kWh 2026-08-14 20:05:16.655477: >> Region optimisation pass width 240 gives best_metric 1195.02p, best_cost 1202.5p, best_cycle 37.47kWh, best_import 28.0kWh 2026-08-14 20:05:20.250990: >> Region optimisation pass width 120 gives best_metric 1195.02p, best_cost 1202.5p, best_cycle 37.47kWh, best_import 28.0kWh 2026-08-14 20:05:20.255846: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 78 2026-08-14 20:05:20.255942: Optimise levels pass ended at 2026-08-14 20:05:20, duration 13.8 seconds tried 321 combinations 2026-08-14 20:05:20.256053: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1195.02p, best_keep 0kWh, best_cycle 37.47kWh, best_carbon 0kg, best_import 28.0kWh 2026-08-14 20:05:20.306295: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 20:05:52.690932: Tweak plan optimisation started metric 1108.38p, cost 1117.56p 2026-08-14 20:05:55.427832: Tweak optimisation finished metric 1108.38p, cost 1117.56p, metric_keep 0kWh, cycle 30.04kWh, carbon 0kg, import 22.32kWh, changed 8 window(s) 2026-08-14 20:05:55.451146: Swap charge optimisation started metric 1108.38p, cost 1117.56p, min_improvement_swap 0.1p 2026-08-14 20:06:07.098859: Swap charge optimisation finished metric 1108.38p, cost 1117.56p 2026-08-14 20:06:07.214952: Raw charge windows [ 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100% ] reserve 1.12 2026-08-14 20:06:07.215946: Unclipped charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 20:30:00 @ 32.37p 100% ] reserve 1.12 2026-08-14 20:06:07.216398: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 20:30:00 @ 32.37p 100% ] reserve 1.12 2026-08-14 20:06:07.216777: Filtered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:30:00 @ 14.59p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 20:30:00 @ 32.37p 100% ] reserve 1.12 2026-08-14 20:06:07.264238: Previous plan best metric is 1108.38 (cost 1117.56) and new plan best metric is 1108.38 (cost 1117.56) 2026-08-14 20:06:07.264497: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 20:06:07.264646: Plan valid is now true after recompute was False 2026-08-14 20:06:07.301107: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1347.16p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 46.91kWh, PV 0.0kWh 2026-08-14 20:06:07.526076: Battery has 5.17 hours left - now at 6.55kWh 2026-08-14 20:06:07.607431: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1378.4p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.13kWh, PV 0.0kWh 2026-08-14 20:06:07.786238: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1244.58p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.13kWh, PV 0.0kWh 2026-08-14 20:06:07.937471: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1217.53p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 46.91kWh, PV 0.0kWh 2026-08-14 20:06:07.937638: Saving plan best values to HA entities 2026-08-14 20:06:08.223314: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 20:06:08.233199: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 20:06:08.242486: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.32kWh, house 6.0kWh, export 0.0kWh, metric 1217.53p, metric10 1244.58p 2026-08-14 20:06:08.372821: Marginal costs baseline metric (no standing charge): 1117.5635 2026-08-14 20:06:08.790923: Marginal energy costs matrix computed: min=22.75 max=34.69 2026-08-14 20:06:08.902173: Rate array import [{'start': 1205, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 40.4p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1205, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 20:06:08.917969: - Your estimated bill for today is £7.31 and tomorrow is £4.33 2026-08-14 20:06:08.918046: - Import rates are very expensive (34.7p - 40.4p) for the next 1 hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 20:06:08.918071: - The battery is currently at 41% and is in eco mode for the next 15 hours. 2026-08-14 20:06:08.918092: - For the next 48 hours there will be no solar generation. 2026-08-14 20:06:08.918111: - You will run out of battery in 5 and a quarter hours. 2026-08-14 20:06:08.918210: - Your next charge slot will be in 15 hours where import rates will be cheap (15.5p). 2026-08-14 20:06:08.918326: 2026-08-14 20:06:08.998054: Plan calculation took 62.62 seconds 2026-08-14 20:06:08.998442: Inverter 0: Type SK Sunsynk 2026-08-14 20:06:08.998496: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 20:06:08.999190: Reserve min: 7%, battery_min: 7% 2026-08-14 20:06:09.000189: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 20:06:09.000558: Inverter 0 SoC: 6.55kW 41%, current charge rate 5000W, current discharge rate 5250W, current battery power 706W, current battery voltage 51.2V, grid power -54W, load power 762W, PV Power 0W 2026-08-14 20:06:09.000780: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:06:09.000916: Inverter 0 scheduled charge enable is False 2026-08-14 20:06:09.000984: Inverter 0 charge windows currently [] 2026-08-14 20:06:09.001066: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 20:06:09.003748: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:06:09.003865: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:06:09.003928: Inverter 0 scheduled discharge enable is False 2026-08-14 20:06:09.004125: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:06:09.004171: Inverter 0 discharge windows currently [] 2026-08-14 20:06:09.004235: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:06:09.004319: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:06:09.004435: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:06:09.125643: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 41%, target 19% 2026-08-14 20:06:09.125957: Inverter 0 disabled charge window while waiting for schedule (now 08-14 20:05:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 20:06:09.126124: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:06:09.126426: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:06:09.130590: No export window planned 2026-08-14 20:06:09.130902: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 20:06:09.131015: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:06:09.131302: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:06:09.131568: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 20:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 20:06:09.131708: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 20:06:09.131836: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 20:06:09.132012: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:06:09.132122: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:06:09.132234: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:06:09.132324: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:06:09.132463: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:06:09.132567: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:06:09.132686: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:06:09.132826: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:06:09.132976: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:06:09.133092: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:06:09.139908: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:06:09.140086: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:06:09.140212: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:06:09.140312: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:06:09.140428: Inverter 0 count register writes 0 2026-08-14 20:06:09.204094: Total inverter register writes now 815 2026-08-14 20:06:09.288306: Info: Completed run status Demand 2026-08-14 20:06:09.307196: Info: record_status Demand 2026-08-14 20:06:09.316572: Saved current settings to /config/predbat_config.json 2026-08-14 20:06:09.316921: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 20:06:12.697754: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0090 val_mae=0.0072 kWh val_bias=-0.0037 kWh (-4.0%) combined=0.0057 kWh ema_combined=0.0046 kWh 2026-08-14 20:06:39.760062: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0090 val_mae=0.0061 kWh val_bias=-0.0024 kWh (-2.6%) combined=0.0037 kWh ema_combined=0.0044 kWh 2026-08-14 20:06:42.477053: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:06:42.477555: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:06:42.477648: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:06:42.478291: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:06:42.478374: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:06:42.478453: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:06:42.478531: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:06:59.383954: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0080 val_mae=0.0057 kWh val_bias=-0.0024 kWh (-2.5%) combined=0.0035 kWh ema_combined=0.0041 kWh 2026-08-14 20:07:20.515583: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0083 val_mae=0.0050 kWh val_bias=-0.0015 kWh (-1.6%) combined=0.0030 kWh ema_combined=0.0037 kWh 2026-08-14 20:07:44.787423: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0075 val_mae=0.0052 kWh val_bias=-0.0025 kWh (-2.6%) combined=0.0038 kWh ema_combined=0.0038 kWh 2026-08-14 20:08:05.572104: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0077 val_mae=0.0049 kWh val_bias=-0.0010 kWh (-1.1%) combined=0.0027 kWh ema_combined=0.0034 kWh 2026-08-14 20:08:25.198970: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0086 val_mae=0.0057 kWh val_bias=-0.0032 kWh (-3.5%) combined=0.0041 kWh ema_combined=0.0037 kWh 2026-08-14 20:08:46.625449: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0065 val_mae=0.0048 kWh val_bias=-0.0018 kWh (-1.9%) combined=0.0031 kWh ema_combined=0.0035 kWh 2026-08-14 20:08:56.915249: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:08:56.915529: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:08:56.915576: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:08:56.915715: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:08:56.915862: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:08:56.915987: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:08:56.916067: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:09:07.436220: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0077 val_mae=0.0046 kWh val_bias=-0.0010 kWh (-1.1%) combined=0.0028 kWh ema_combined=0.0033 kWh 2026-08-14 20:09:29.153986: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0067 val_mae=0.0046 kWh val_bias=-0.0008 kWh (-0.8%) combined=0.0024 kWh ema_combined=0.0030 kWh 2026-08-14 20:09:53.764635: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0070 val_mae=0.0045 kWh val_bias=-0.0017 kWh (-1.8%) combined=0.0028 kWh ema_combined=0.0030 kWh 2026-08-14 20:10:00.185505: --------------- PredBat - update at 2026-08-14 20:10:00+01:00 with clock skew 0 minutes, minutes now 1210 2026-08-14 20:10:00.186636: Saved current settings to /config/predbat_config.json 2026-08-14 20:10:00.186859: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 15.0 minutes 2026-08-14 20:10:00.187057: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 20:10:00.187224: Autoupdate: Currently up to date 2026-08-14 20:10:00.226480: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 20:10:00.226935: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 20:10:00.227456: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 20:10:00.228137: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 20:10:00.228407: Predbat mode is set to Control charge & discharge 2026-08-14 20:10:00.697253: Found 21602 load_today datapoints going back 28 days 2026-08-14 20:10:00.698255: Using load_power data to fill gaps in load_today data 2026-08-14 20:10:01.983772: Processing 721 30-minute periods for power integration 2026-08-14 20:10:02.269922: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 20:10:02.270089: Car charging hold False, threshold 6.0kWh 2026-08-14 20:10:02.270147: Current data so far today: load 21.45kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 20:10:02.301036: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 20:10:02.301740: Standing charge is set to 49.98p 2026-08-14 20:10:02.497912: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 20:10:02.498044: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 20:10:02.498291: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 575.0 minutes 2026-08-14 20:10:02.498889: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 575.0 minutes 2026-08-14 20:10:02.507511: Loaded 95 datapoints of futurerate analysis 2026-08-14 20:10:02.673942: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13'] 2026-08-14 20:10:02.730388: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 20:10:02.730848: Import rates: min 13.77p, max 43.82p, average 26.18p 2026-08-14 20:10:02.870293: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 20:10:02.875265: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 20:10:02.881376: High export rate found rates in range 99p to -99p 2026-08-14 20:10:03.069315: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 20:10:03.069550: Car 0 charging is not planned as it is not plugged in 2026-08-14 20:10:03.097624: Battery level now 6.55kWh, -1hr ago 8.09kWh, at midnight 2.43kWh, battery value change in the last hour -18.16p, change today 48.72p, rate_forward 11.83p 2026-08-14 20:10:03.098058: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.65kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 20:10:03.219231: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 20:10:03.219556: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 20:10:03.344064: Using weighted-bucket historical load forecast over 14 days 2026-08-14 20:10:03.380793: Today's load divergence 141.5%, in-day adjustment 140.6%, damping 0.95x, yesterday 146.81% today 139.42% blend 15.97% 2026-08-14 20:10:03.380907: Today's predicted so far 11.43kWh with 0.0kWh car/iBoost excluded, 17.18kWh import ignored, and 11.43kWh forecast extra. 2026-08-14 20:10:03.380941: Today's actual load so far 21.52kWh with 0.0kWh car/iBoost excluded, and 17.18kWh import ignored. 2026-08-14 20:10:03.422666: Inverter 0: Type SK Sunsynk 2026-08-14 20:10:03.422776: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 20:10:03.423485: Reserve min: 7%, battery_min: 7% 2026-08-14 20:10:03.423615: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 20:10:03.424032: Inverter 0 SoC: 6.55kW 41%, current charge rate 5000W, current discharge rate 5250W, current battery power 765W, current battery voltage 51.2V, grid power -54W, load power 823W, PV Power 0W 2026-08-14 20:10:03.424297: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:10:03.424489: Inverter 0 scheduled charge enable is False 2026-08-14 20:10:03.424539: Inverter 0 charge windows currently [] 2026-08-14 20:10:03.424602: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 20:10:03.424859: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:10:03.424914: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:10:03.425065: Inverter 0 scheduled discharge enable is False 2026-08-14 20:10:03.425399: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:10:03.425458: Inverter 0 discharge windows currently [] 2026-08-14 20:10:03.425535: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:10:03.425603: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:10:03.425627: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:10:03.504749: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 20:10:03.504869: Plan was last updated on 2026-08-14 20:05:00+01:00 and is now 5.0 minutes old 2026-08-14 20:10:03.505288: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 20:10:03.505364: Best export window [ ] 2026-08-14 20:10:03.506293: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 20:10:03.509658: Load divergence over 8.0 hours mean 476.37W, min 274.8W, max 1206.0W, std dev 152.83W, divergence 16.04% 2026-08-14 20:10:03.531569: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 20:10:03.531809: LoadML is_calculating True 2026-08-14 20:10:03.531976: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 20:10:03.570963: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1347.35p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:20:00, load 47.11kWh, PV 0.0kWh 2026-08-14 20:10:03.779219: Battery has 5.17 hours left - now at 6.55kWh 2026-08-14 20:10:03.832680: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1378.6p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.33kWh, PV 0.0kWh 2026-08-14 20:10:04.047053: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1250.07p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.33kWh, PV 0.0kWh 2026-08-14 20:10:04.191695: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1224.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:20:00, load 47.11kWh, PV 0.0kWh 2026-08-14 20:10:04.195757: Saving plan best values to HA entities 2026-08-14 20:10:04.749669: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 20:10:04.757843: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 20:10:04.766465: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.82kWh, house 5.96kWh, export 0.0kWh, metric 1224.09p, metric10 1250.07p 2026-08-14 20:10:04.906747: Marginal costs baseline metric (no standing charge): 1124.1207 2026-08-14 20:10:05.539804: Marginal energy costs matrix computed: min=22.81 max=34.45 2026-08-14 20:10:05.737163: Rate array import [{'start': 1210, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 40.4p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1210, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 20:10:05.751391: - Your estimated bill for today is £7.31 and tomorrow is £4.32 2026-08-14 20:10:05.751485: - Import rates are very expensive (34.7p - 40.4p) for the next 1 and three quarters hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 20:10:05.751511: - The battery is currently at 41% and is in eco mode for the next 15 hours. 2026-08-14 20:10:05.751530: - For the next 48 hours there will be no solar generation. 2026-08-14 20:10:05.751549: - You will run out of battery in 5 and a quarter hours. 2026-08-14 20:10:05.751567: - Your next charge slot will be in 15 hours where import rates will be cheap (15.5p). 2026-08-14 20:10:05.751585: 2026-08-14 20:10:05.847286: Plan calculation took 2.34 seconds 2026-08-14 20:10:05.852162: No high rate period found 2026-08-14 20:10:05.943690: Import threshold used for optimisation was 17.0p 2026-08-14 20:10:06.048282: Low import rate windows [0: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 1: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 2: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 3: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 4: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 5: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 6: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 7: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 8: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 9: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 10: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 11: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 12: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 13: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 14: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 15: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 16: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 17: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 18: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 19: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 20: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 21: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 22: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 23: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 24: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 25: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 26: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 27: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 28: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 29: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 30: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 31: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 32: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 33: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 34: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 35: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 36: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 37: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 38: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 39: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 40: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 41: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 42: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 43: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 44: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 45: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 46: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 47: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 48: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 49: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 50: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 51: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 52: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 53: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 54: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 55: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 56: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 57: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 58: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 59: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 60: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 61: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 62: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 63: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 64: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 65: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 66: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 67: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 68: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 69: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 70: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 71: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 72: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 73: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 74: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 75: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 76: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 77: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 78: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 79: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 80: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 81: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 82: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 83: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 84: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 85: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 86: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 87: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 88: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 89: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 90: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 91: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 92: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 93: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 94: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99] 2026-08-14 20:10:06.093636: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 41%, target 19% 2026-08-14 20:10:06.094006: Inverter 0 disabled charge window while waiting for schedule (now 08-14 20:10:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 20:10:06.094211: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:10:06.094535: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:10:06.094710: No export window planned 2026-08-14 20:10:06.094923: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 20:10:06.095047: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:10:06.095375: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:10:06.095645: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 20:10:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 20:10:06.096154: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 20:10:06.096360: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 20:10:06.097493: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:10:06.097571: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:10:06.097606: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:10:06.097639: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:10:06.097666: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:10:06.097690: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:10:06.097715: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:10:06.097779: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:10:06.097808: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:10:06.097832: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:10:06.097855: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:10:06.097878: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:10:06.097901: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:10:06.097924: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:10:06.097944: Inverter 0 count register writes 0 2026-08-14 20:10:06.128126: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 20:10:06.151551: Total inverter register writes now 815 2026-08-14 20:10:06.239936: Info: Completed run status Demand 2026-08-14 20:10:06.273042: Info: record_status Demand 2026-08-14 20:10:06.287357: Saved current settings to /config/predbat_config.json 2026-08-14 20:10:06.287722: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 20:10:18.806667: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0069 val_mae=0.0050 kWh val_bias=-0.0021 kWh (-2.2%) combined=0.0029 kWh ema_combined=0.0030 kWh 2026-08-14 20:10:42.461923: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:10:42.462285: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:10:42.462403: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:10:42.462608: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:10:42.462700: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:10:42.462777: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:10:42.462839: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:10:42.880162: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0067 val_mae=0.0045 kWh val_bias=-0.0011 kWh (-1.1%) combined=0.0026 kWh ema_combined=0.0029 kWh 2026-08-14 20:11:03.265512: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0065 val_mae=0.0049 kWh val_bias=-0.0020 kWh (-2.1%) combined=0.0031 kWh ema_combined=0.0029 kWh 2026-08-14 20:11:03.268411: ML Predictor: Restored best weights from epoch with val_mae=0.0045 kWh val_bias=-0.0011 kWh (-1.1%) 2026-08-14 20:11:03.273203: ML Predictor: Training complete, final val_mae=0.0045 kWh val_bias=-0.0011 kWh (-1.1%) 2026-08-14 20:11:05.751290: ML Predictor: AR rollout over holdout: ar_mae=0.0048 kWh ar_bias=-0.0011 kWh (-1.1%) [drift vs teacher-forced: +0.0003 kWh] 2026-08-14 20:11:05.767551: ML Predictor: Curriculum training complete, final val_mae=0.0045 kWh 2026-08-14 20:11:05.778796: ML Component: Training successful, val_mae=0.0045 kWh 2026-08-14 20:11:05.951580: ML Predictor: Model saved to /config/predbat_ml_model.npz 2026-08-14 20:11:05.956003: ML Component: Generating predictions load data age 56.0 days, 16209 data points 2026-08-14 20:11:06.106516: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.1184 max_dow {0: 0.10336562496256083, 1: 0.1091281248660758, 2: 0.11737499983031302, 3: 0.11972187416721135, 4: 0.17116562535744162, 5: 0.10228437502831222, 6: 0.10759687461592257} 2026-08-14 20:11:08.157551: ML Component: Generated 576 predictions (total 43.10 kWh over 48h) 2026-08-14 20:11:08.197263: ML Component: Prediction cycle completed 2026-08-14 20:11:08.311451: ML Component: Saved 16209 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 20:12:56.829130: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:12:56.829411: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:12:56.829458: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:12:56.829595: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:12:56.829635: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:12:56.829655: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:12:56.829673: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:14:57.043006: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:14:57.043505: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:14:57.043556: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:14:57.043759: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:14:57.043806: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:14:57.043828: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:14:57.043855: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:15:00.136426: --------------- PredBat - update at 2026-08-14 20:15:00+01:00 with clock skew 0 minutes, minutes now 1215 2026-08-14 20:15:00.137252: Saved current settings to /config/predbat_config.json 2026-08-14 20:15:00.137374: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 20.0 minutes 2026-08-14 20:15:00.137471: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 20:15:00.137567: Autoupdate: Currently up to date 2026-08-14 20:15:00.155200: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 20:15:00.155356: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 20:15:00.155520: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 20:15:00.156055: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 20:15:00.156170: Predbat mode is set to Control charge & discharge 2026-08-14 20:15:00.349155: Found 21602 load_today datapoints going back 28 days 2026-08-14 20:15:00.349312: Using load_power data to fill gaps in load_today data 2026-08-14 20:15:01.180120: Processing 721 30-minute periods for power integration 2026-08-14 20:15:01.375524: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 20:15:01.375643: Car charging hold False, threshold 6.0kWh 2026-08-14 20:15:01.375687: Current data so far today: load 21.6kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 20:15:01.394099: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 20:15:01.394599: Standing charge is set to 49.98p 2026-08-14 20:15:01.442150: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 20:15:01.442260: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 20:15:01.442494: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 580.0 minutes 2026-08-14 20:15:01.442974: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 580.0 minutes 2026-08-14 20:15:01.449093: Loaded 95 datapoints of futurerate analysis 2026-08-14 20:15:01.603432: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13'] 2026-08-14 20:15:01.649071: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 20:15:01.649415: Import rates: min 13.77p, max 43.82p, average 26.17p 2026-08-14 20:15:01.692813: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 20:15:01.692989: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 20:15:01.694431: High export rate found rates in range 99p to -99p 2026-08-14 20:15:01.809036: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 20:15:01.809178: Car 0 charging is not planned as it is not plugged in 2026-08-14 20:15:01.826441: Battery level now 6.55kWh, -1hr ago 7.96kWh, at midnight 2.43kWh, battery value change in the last hour -16.65p, change today 48.72p, rate_forward 11.83p 2026-08-14 20:15:01.826776: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.7kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 20:15:01.895287: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 20:15:01.895539: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 20:15:02.009560: Using weighted-bucket historical load forecast over 14 days 2026-08-14 20:15:02.043279: Today's load divergence 141.48%, in-day adjustment 140.57%, damping 0.95x, yesterday 146.81% today 139.41% blend 15.62% 2026-08-14 20:15:02.043390: Today's predicted so far 11.44kWh with 0.0kWh car/iBoost excluded, 17.19kWh import ignored, and 11.44kWh forecast extra. 2026-08-14 20:15:02.043424: Today's actual load so far 21.52kWh with 0.0kWh car/iBoost excluded, and 17.19kWh import ignored. 2026-08-14 20:15:02.074265: Inverter 0: Type SK Sunsynk 2026-08-14 20:15:02.074373: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 20:15:02.074914: Reserve min: 7%, battery_min: 7% 2026-08-14 20:15:02.074991: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 20:15:02.075250: Inverter 0 SoC: 6.36kW 40%, current charge rate 5000W, current discharge rate 5250W, current battery power 385W, current battery voltage 51.2V, grid power -45W, load power 435W, PV Power 0W 2026-08-14 20:15:02.075424: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:15:02.075515: Inverter 0 scheduled charge enable is False 2026-08-14 20:15:02.075543: Inverter 0 charge windows currently [] 2026-08-14 20:15:02.075569: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 20:15:02.075677: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:15:02.075714: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:15:02.075749: Inverter 0 scheduled discharge enable is False 2026-08-14 20:15:02.075879: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:15:02.075916: Inverter 0 discharge windows currently [] 2026-08-14 20:15:02.075939: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:15:02.075957: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:15:02.075975: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:15:02.136263: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 20:15:02.136455: Plan was last updated on 2026-08-14 20:05:00+01:00 and is now 10.0 minutes old 2026-08-14 20:15:02.136728: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 20:15:02.136773: Best export window [ ] 2026-08-14 20:15:02.137650: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 20:15:02.140810: Load divergence over 8.0 hours mean 477.93W, min 279.0W, max 1164.0W, std dev 151.24W, divergence 15.82% 2026-08-14 20:15:02.159868: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 20:15:02.159960: LoadML is_calculating False 2026-08-14 20:15:02.160055: Creating pool of 12 processes to match your CPU count 2026-08-14 20:15:02.270675: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1352.31p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 47.31kWh, PV 0.0kWh 2026-08-14 20:15:02.384595: Battery has 4.92 hours left - now at 6.36kWh 2026-08-14 20:15:02.425304: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1383.55p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.53kWh, PV 0.0kWh 2026-08-14 20:15:02.497893: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1260.46p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.53kWh, PV 0.0kWh 2026-08-14 20:15:02.575558: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1235.57p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 47.31kWh, PV 0.0kWh 2026-08-14 20:15:02.575636: Saving plan best values to HA entities 2026-08-14 20:15:02.741800: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 20:15:02.746930: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 20:15:02.751976: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.34kWh, house 6.08kWh, export 0.0kWh, metric 1235.57p, metric10 1260.46p 2026-08-14 20:15:02.827385: Marginal costs baseline metric (no standing charge): 1135.6028 2026-08-14 20:15:03.101247: Marginal energy costs matrix computed: min=22.86 max=34.38 2026-08-14 20:15:03.172625: Rate array import [{'start': 1215, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 40.4p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1215, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 20:15:03.173303: - Your estimated bill for today is £7.31 and tomorrow is £4.35 2026-08-14 20:15:03.173362: - Import rates are very expensive (34.7p - 40.4p) for the next 1 and three quarters hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 20:15:03.173383: - The battery is currently at 40% and is in eco mode for the next 15 hours. 2026-08-14 20:15:03.173397: - For the next 48 hours there will be no solar generation. 2026-08-14 20:15:03.173410: - You will run out of battery in 4 hours. 2026-08-14 20:15:03.173428: - Your next charge slot will be in 15 hours where import rates will be cheap (15.5p). 2026-08-14 20:15:03.173442: 2026-08-14 20:15:03.238398: Plan calculation took 1.10 seconds 2026-08-14 20:15:03.242136: No high rate period found 2026-08-14 20:15:03.290268: Import threshold used for optimisation was 17.0p 2026-08-14 20:15:03.342102: Low import rate windows [0: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 1: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 2: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 3: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 4: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 5: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 6: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 7: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 8: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 9: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 10: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 11: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 12: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 13: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 14: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 15: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 16: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 17: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 18: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 19: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 20: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 21: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 22: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 23: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 24: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 25: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 26: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 27: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 28: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 29: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 30: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 31: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 32: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 33: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 34: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 35: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 36: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 37: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 38: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 39: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 40: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 41: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 42: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 43: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 44: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 45: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 46: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 47: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 48: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 49: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 50: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 51: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 52: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 53: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 54: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 55: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 56: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 57: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 58: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 59: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 60: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 61: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 62: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 63: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 64: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 65: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 66: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 67: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 68: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 69: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 70: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 71: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 72: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 73: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 74: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 75: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 76: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 77: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 78: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 79: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 80: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 81: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 82: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 83: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 84: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 85: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 86: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 87: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 88: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 89: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 90: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 91: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 92: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 93: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 94: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99] 2026-08-14 20:15:03.350081: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 40%, target 19% 2026-08-14 20:15:03.350220: Inverter 0 disabled charge window while waiting for schedule (now 08-14 20:15:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 20:15:03.350355: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:15:03.350627: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:15:03.350739: No export window planned 2026-08-14 20:15:03.350861: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 20:15:03.350897: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:15:03.351030: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:15:03.351209: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 20:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 20:15:03.351271: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 20:15:03.351351: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 20:15:03.351444: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:15:03.351486: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:15:03.351517: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:15:03.351548: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:15:03.351577: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:15:03.351607: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:15:03.351637: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:15:03.351698: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:15:03.351732: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:15:03.351757: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:15:03.351780: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:15:03.351808: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:15:03.351832: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:15:03.351854: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:15:03.351879: Inverter 0 count register writes 0 2026-08-14 20:15:03.366986: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 20:15:03.367214: Recompute is saving previous plan... 2026-08-14 20:15:03.370471: Best charge window [ 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0% ] 2026-08-14 20:15:03.370552: Best export window [ ] 2026-08-14 20:15:03.371414: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 20:15:03.374562: Load divergence over 8.0 hours mean 477.93W, min 279.0W, max 1164.0W, std dev 151.24W, divergence 15.82% 2026-08-14 20:15:03.393073: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 20:15:03.393195: LoadML is_calculating False 2026-08-14 20:15:03.393296: Creating pool of 12 processes to match your CPU count 2026-08-14 20:15:03.483896: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 20:15:03.485995: Optimise levels pass started at 2026-08-14 20:15:03 2026-08-14 20:15:03.486082: Optimise all windows, total charge 94 export 1 2026-08-14 20:15:04.610697: >> Region optimisation pass width 960 gives best_metric 1198.74p, best_cost 1208.67p, best_cycle 37.6kWh, best_import 28.37kWh 2026-08-14 20:15:05.052595: >> Region optimisation pass width 480 gives best_metric 1198.74p, best_cost 1208.67p, best_cycle 37.6kWh, best_import 28.37kWh 2026-08-14 20:15:05.598529: >> Region optimisation pass width 240 gives best_metric 1198.74p, best_cost 1208.67p, best_cycle 37.6kWh, best_import 28.37kWh 2026-08-14 20:15:06.710532: >> Region optimisation pass width 120 gives best_metric 1198.74p, best_cost 1208.67p, best_cycle 37.6kWh, best_import 28.37kWh 2026-08-14 20:15:06.711152: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 78 2026-08-14 20:15:06.711231: Optimise levels pass ended at 2026-08-14 20:15:06, duration 3.2 seconds tried 321 combinations 2026-08-14 20:15:06.711304: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1198.74p, best_keep 0kWh, best_cycle 37.6kWh, best_carbon 0kg, best_import 28.37kWh 2026-08-14 20:15:06.731515: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 20:15:11.980739: Tweak plan optimisation started metric 1110.54p, cost 1119.77p 2026-08-14 20:15:12.335814: Tweak optimisation finished metric 1110.54p, cost 1119.77p, metric_keep 0kWh, cycle 29.85kWh, carbon 0kg, import 22.4kWh, changed 8 window(s) 2026-08-14 20:15:12.357492: Swap charge optimisation started metric 1110.54p, cost 1119.77p, min_improvement_swap 0.1p 2026-08-14 20:15:18.593640: Swap charge optimisation finished metric 1110.54p, cost 1119.77p 2026-08-14 20:15:18.688987: Raw charge windows [ 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100% ] reserve 1.12 2026-08-14 20:15:18.689658: Unclipped charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 20:30:00 @ 32.37p 100% ] reserve 1.12 2026-08-14 20:15:18.690037: Unfiltered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 20:30:00 @ 32.37p 100% ] reserve 1.12 2026-08-14 20:15:18.690311: Filtered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:30:00 @ 14.59p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 20:30:00 @ 32.37p 100% ] reserve 1.12 2026-08-14 20:15:18.722398: Previous plan best metric is 1110.59 (cost 1119.8) and new plan best metric is 1110.54 (cost 1119.77) 2026-08-14 20:15:18.722631: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 20:15:18.722791: Plan valid is now true after recompute was False 2026-08-14 20:15:18.747034: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1349.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 47.12kWh, PV 0.0kWh 2026-08-14 20:15:18.867931: Battery has 4.92 hours left - now at 6.36kWh 2026-08-14 20:15:18.915628: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1380.49p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.33kWh, PV 0.0kWh 2026-08-14 20:15:18.999901: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1246.67p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.33kWh, PV 0.0kWh 2026-08-14 20:15:19.078633: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1219.77p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 47.12kWh, PV 0.0kWh 2026-08-14 20:15:19.078730: Saving plan best values to HA entities 2026-08-14 20:15:19.229450: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 20:15:19.234571: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 20:15:19.239367: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.32kWh, house 6.08kWh, export 0.0kWh, metric 1219.77p, metric10 1246.67p 2026-08-14 20:15:19.302654: Marginal costs baseline metric (no standing charge): 1119.8016 2026-08-14 20:15:19.555140: Marginal energy costs matrix computed: min=22.86 max=34.38 2026-08-14 20:15:19.622512: Rate array import [{'start': 1215, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 40.4p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1215, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 20:15:19.623126: - Your estimated bill for today is £7.31 and tomorrow is £4.35 2026-08-14 20:15:19.623163: - Import rates are very expensive (34.7p - 40.4p) for the next 1 and three quarters hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 20:15:19.623182: - The battery is currently at 40% and is in eco mode for the next 15 hours. 2026-08-14 20:15:19.623196: - For the next 48 hours there will be no solar generation. 2026-08-14 20:15:19.623209: - You will run out of battery in 4 hours. 2026-08-14 20:15:19.623223: - Your next charge slot will be in 15 hours where import rates will be cheap (15.5p). 2026-08-14 20:15:19.623237: 2026-08-14 20:15:19.683516: Plan calculation took 16.32 seconds 2026-08-14 20:15:19.683891: Inverter 0: Type SK Sunsynk 2026-08-14 20:15:19.683960: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 20:15:19.684686: Reserve min: 7%, battery_min: 7% 2026-08-14 20:15:19.684777: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 20:15:19.685137: Inverter 0 SoC: 6.36kW 40%, current charge rate 5000W, current discharge rate 5250W, current battery power 1850W, current battery voltage 51.2V, grid power -177W, load power 2030W, PV Power 0W 2026-08-14 20:15:19.685411: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:15:19.685525: Inverter 0 scheduled charge enable is False 2026-08-14 20:15:19.685564: Inverter 0 charge windows currently [] 2026-08-14 20:15:19.685594: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 20:15:19.685709: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:15:19.685745: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:15:19.685781: Inverter 0 scheduled discharge enable is False 2026-08-14 20:15:19.685913: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:15:19.685950: Inverter 0 discharge windows currently [] 2026-08-14 20:15:19.685973: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:15:19.685992: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:15:19.686009: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:15:19.748809: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 40%, target 19% 2026-08-14 20:15:19.749012: Inverter 0 disabled charge window while waiting for schedule (now 08-14 20:15:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 20:15:19.749101: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:15:19.749283: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:15:19.749383: No export window planned 2026-08-14 20:15:19.749497: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 20:15:19.749534: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:15:19.749666: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:15:19.749830: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 20:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 20:15:19.749882: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 20:15:19.749938: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 20:15:19.750035: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:15:19.750076: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:15:19.750104: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:15:19.750129: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:15:19.750154: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:15:19.750182: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:15:19.750207: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:15:19.750294: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:15:19.750351: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:15:19.750400: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:15:19.750432: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:15:19.750457: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:15:19.750481: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:15:19.750504: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:15:19.750530: Inverter 0 count register writes 0 2026-08-14 20:15:19.776129: Total inverter register writes now 815 2026-08-14 20:15:19.808751: Info: Completed run status Demand 2026-08-14 20:15:19.815734: Info: record_status Demand 2026-08-14 20:15:19.822224: Saved current settings to /config/predbat_config.json 2026-08-14 20:15:19.822512: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 20:15:56.925587: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:15:56.925913: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:15:56.925966: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:15:56.926147: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:15:56.926207: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:15:56.926239: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:15:56.926288: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:17:57.151697: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:17:57.151982: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:17:57.152037: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:17:57.152219: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:17:57.152273: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:17:57.152295: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:17:57.152317: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:19:57.364075: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:19:57.364391: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:19:57.364436: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:19:57.364607: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:19:57.364646: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:19:57.364667: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:19:57.364685: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:20:00.446166: --------------- PredBat - update at 2026-08-14 20:20:00+01:00 with clock skew 0 minutes, minutes now 1220 2026-08-14 20:20:00.447271: Saved current settings to /config/predbat_config.json 2026-08-14 20:20:00.447546: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 25.0 minutes 2026-08-14 20:20:00.447688: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 20:20:00.447871: Autoupdate: Currently up to date 2026-08-14 20:20:00.473744: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 20:20:00.473877: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 20:20:00.474096: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 20:20:00.474694: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 20:20:00.474870: Predbat mode is set to Control charge & discharge 2026-08-14 20:20:00.661364: Found 21602 load_today datapoints going back 28 days 2026-08-14 20:20:00.661794: Using load_power data to fill gaps in load_today data 2026-08-14 20:20:01.499929: Processing 721 30-minute periods for power integration 2026-08-14 20:20:01.717550: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 20:20:01.717694: Car charging hold False, threshold 6.0kWh 2026-08-14 20:20:01.717745: Current data so far today: load 21.6kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 20:20:01.736539: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 20:20:01.737192: Standing charge is set to 49.98p 2026-08-14 20:20:01.785047: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 20:20:01.785147: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 20:20:01.785362: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 585.0 minutes 2026-08-14 20:20:01.785745: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 585.0 minutes 2026-08-14 20:20:01.791510: Loaded 95 datapoints of futurerate analysis 2026-08-14 20:20:01.938902: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13'] 2026-08-14 20:20:01.988064: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 20:20:01.989037: Import rates: min 13.77p, max 43.82p, average 26.16p 2026-08-14 20:20:02.033427: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 20:20:02.033574: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 20:20:02.035067: High export rate found rates in range 99p to -99p 2026-08-14 20:20:02.139476: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 20:20:02.139617: Car 0 charging is not planned as it is not plugged in 2026-08-14 20:20:02.151718: Battery level now 6.36kWh, -1hr ago 7.84kWh, at midnight 2.43kWh, battery value change in the last hour -17.5p, change today 46.45p, rate_forward 11.83p 2026-08-14 20:20:02.152093: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.55kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 20:20:02.205468: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 20:20:02.205624: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 20:20:02.302250: Using weighted-bucket historical load forecast over 14 days 2026-08-14 20:20:02.333142: Today's load divergence 141.4%, in-day adjustment 140.47%, damping 0.95x, yesterday 146.81% today 139.33% blend 15.28% 2026-08-14 20:20:02.333224: Today's predicted so far 11.46kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 11.46kWh forecast extra. 2026-08-14 20:20:02.333256: Today's actual load so far 21.51kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 20:20:02.361690: Inverter 0: Type SK Sunsynk 2026-08-14 20:20:02.361767: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 20:20:02.362193: Reserve min: 7%, battery_min: 7% 2026-08-14 20:20:02.362255: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 20:20:02.362483: Inverter 0 SoC: 6.36kW 40%, current charge rate 5000W, current discharge rate 5250W, current battery power 3650W, current battery voltage 51.2V, grid power -11W, load power 3653W, PV Power 0W 2026-08-14 20:20:02.362615: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:20:02.362687: Inverter 0 scheduled charge enable is False 2026-08-14 20:20:02.362712: Inverter 0 charge windows currently [] 2026-08-14 20:20:02.362733: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 20:20:02.362818: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:20:02.362841: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:20:02.362887: Inverter 0 scheduled discharge enable is False 2026-08-14 20:20:02.362989: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:20:02.363033: Inverter 0 discharge windows currently [] 2026-08-14 20:20:02.363054: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:20:02.363069: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:20:02.363089: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:20:02.417043: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 20:20:02.417178: Plan was last updated on 2026-08-14 20:15:00+01:00 and is now 5.0 minutes old 2026-08-14 20:20:02.417467: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 20:20:02.417511: Best export window [ ] 2026-08-14 20:20:02.418390: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 20:20:02.421554: Load divergence over 8.0 hours mean 477.95W, min 319.8W, max 1182.6W, std dev 139.43W, divergence 14.59% 2026-08-14 20:20:02.441409: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 20:20:02.441541: LoadML is_calculating False 2026-08-14 20:20:02.441627: Creating pool of 12 processes to match your CPU count 2026-08-14 20:20:02.564514: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1349.85p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 47.17kWh, PV 0.0kWh 2026-08-14 20:20:02.686901: Battery has 4.83 hours left - now at 6.36kWh 2026-08-14 20:20:02.740757: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1381.01p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.39kWh, PV 0.0kWh 2026-08-14 20:20:02.819712: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1252.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.39kWh, PV 0.0kWh 2026-08-14 20:20:02.888798: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1226.58p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 47.17kWh, PV 0.0kWh 2026-08-14 20:20:02.888877: Saving plan best values to HA entities 2026-08-14 20:20:03.043278: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 20:20:03.049465: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 20:20:03.055061: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.83kWh, house 6.04kWh, export 0.0kWh, metric 1226.58p, metric10 1252.47p 2026-08-14 20:20:03.125915: Marginal costs baseline metric (no standing charge): 1126.6094 2026-08-14 20:20:03.353909: Marginal energy costs matrix computed: min=22.91 max=34.15 2026-08-14 20:20:03.437851: Rate array import [{'start': 1220, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 40.4p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1220, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 20:20:03.438620: - Your estimated bill for today is £7.31 and tomorrow is £4.34 2026-08-14 20:20:03.438695: - Import rates are very expensive (34.7p - 40.4p) for the next 1 and three quarters hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 20:20:03.438717: - The battery is currently at 40% and is in eco mode for the next 15 hours. 2026-08-14 20:20:03.438735: - For the next 48 hours there will be no solar generation. 2026-08-14 20:20:03.438752: - You will run out of battery in 4 and three quarters hours. 2026-08-14 20:20:03.438770: - Your next charge slot will be in 15 hours where import rates will be cheap (15.5p). 2026-08-14 20:20:03.438787: 2026-08-14 20:20:03.498086: Plan calculation took 1.08 seconds 2026-08-14 20:20:03.502038: No high rate period found 2026-08-14 20:20:03.548643: Import threshold used for optimisation was 27.18p 2026-08-14 20:20:03.595636: Low import rate windows [0: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 1: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 2: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 3: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 4: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 5: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 6: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 7: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 8: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 9: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 10: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 11: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 12: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 13: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 14: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 15: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 16: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 17: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 18: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 19: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 20: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 21: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 22: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 23: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 24: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 25: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 26: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 27: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 28: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 29: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 30: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 31: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 32: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 33: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 34: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 35: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 36: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 37: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 38: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 39: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 40: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 41: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 42: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 43: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 44: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 45: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 46: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 47: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 48: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 49: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 50: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 51: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 52: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 53: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 54: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 55: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 56: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 57: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 58: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 59: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 60: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 61: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 62: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 63: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 64: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 65: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 66: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 67: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 68: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 69: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 70: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 71: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 72: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 73: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 74: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 75: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 76: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 77: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 78: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 79: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 80: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 81: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 82: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 83: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 84: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 85: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 86: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 87: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 88: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 89: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 90: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 91: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 92: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 93: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 94: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99] 2026-08-14 20:20:03.602756: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 40%, target 19% 2026-08-14 20:20:03.602871: Inverter 0 disabled charge window while waiting for schedule (now 08-14 20:20:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 20:20:03.602991: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:20:03.603210: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:20:03.603286: No export window planned 2026-08-14 20:20:03.603434: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 20:20:03.603476: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:20:03.603596: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:20:03.603747: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 20:20:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 20:20:03.603801: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 20:20:03.603849: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 20:20:03.603932: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:20:03.603960: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:20:03.603981: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:20:03.604001: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:20:03.604020: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:20:03.604039: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:20:03.604064: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:20:03.604115: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:20:03.604148: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:20:03.604169: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:20:03.604188: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:20:03.604207: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:20:03.604251: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:20:03.604308: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:20:03.604369: Inverter 0 count register writes 0 2026-08-14 20:20:03.620396: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 20:20:03.625674: Total inverter register writes now 815 2026-08-14 20:20:03.655804: Info: Completed run status Demand 2026-08-14 20:20:03.662032: Info: record_status Demand 2026-08-14 20:20:03.668119: Saved current settings to /config/predbat_config.json 2026-08-14 20:20:03.668484: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 20:20:08.862801: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 20:20:09.944437: Processing 1345 30-minute periods for power integration 2026-08-14 20:20:10.076859: ML Component: Car charging hold False, car energy reported load False 2026-08-14 20:20:10.172169: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 20:20:10.272134: ML Temperature data points: 49181 2026-08-14 20:20:10.577018: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 20:20:10.620238: ML Component: Data fetch completed, load data age 56.0 days, 16221 data points 2026-08-14 20:20:10.620370: ML Component: No training needed, model age is 0.15 hours 2026-08-14 20:20:10.620433: ML Component: Generating predictions load data age 56.0 days, 16221 data points 2026-08-14 20:20:10.737209: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.1555 max_dow {0: 0.10336562496256083, 1: 0.1091281248660758, 2: 0.11737499983031302, 3: 0.11972187416721135, 4: 0.17116562535744162, 5: 0.10228437502831222, 6: 0.10759687461592257} 2026-08-14 20:20:13.044769: ML Component: Generated 576 predictions (total 42.75 kWh over 48h) 2026-08-14 20:20:13.109123: ML Component: Prediction cycle completed 2026-08-14 20:20:13.224053: ML Component: Saved 16221 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 20:20:41.805662: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:20:41.805937: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:20:41.805997: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:20:41.806197: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:20:41.806296: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:20:41.806348: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:20:41.806385: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:22:42.040192: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:22:42.040456: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:22:42.040494: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:22:42.040660: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:22:42.040718: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:22:42.040739: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:22:42.040758: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:24:42.255038: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:24:42.255362: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:24:42.255428: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:24:42.255649: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:24:42.255715: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:24:42.255776: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:24:42.255819: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:25:00.351824: --------------- PredBat - update at 2026-08-14 20:25:00+01:00 with clock skew 0 minutes, minutes now 1225 2026-08-14 20:25:00.352579: Saved current settings to /config/predbat_config.json 2026-08-14 20:25:00.352709: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 30.0 minutes 2026-08-14 20:25:00.352790: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 20:25:00.352895: Autoupdate: Currently up to date 2026-08-14 20:25:00.373461: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 20:25:00.373593: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 20:25:00.373757: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 20:25:00.374263: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 20:25:00.374398: Predbat mode is set to Control charge & discharge 2026-08-14 20:25:00.549234: Found 21602 load_today datapoints going back 28 days 2026-08-14 20:25:00.549406: Using load_power data to fill gaps in load_today data 2026-08-14 20:25:01.290300: Processing 721 30-minute periods for power integration 2026-08-14 20:25:01.487467: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 20:25:01.487610: Car charging hold False, threshold 6.0kWh 2026-08-14 20:25:01.487657: Current data so far today: load 21.7kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 20:25:01.506022: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 20:25:01.506473: Standing charge is set to 49.98p 2026-08-14 20:25:01.554110: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 20:25:01.554224: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 20:25:01.554458: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 590.0 minutes 2026-08-14 20:25:01.554861: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 590.0 minutes 2026-08-14 20:25:01.561260: Loaded 95 datapoints of futurerate analysis 2026-08-14 20:25:01.724533: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13'] 2026-08-14 20:25:01.774251: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 20:25:01.774598: Import rates: min 13.77p, max 43.82p, average 26.14p 2026-08-14 20:25:01.823912: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 20:25:01.824054: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 20:25:01.825592: High export rate found rates in range 99p to -99p 2026-08-14 20:25:01.934874: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 20:25:01.935007: Car 0 charging is not planned as it is not plugged in 2026-08-14 20:25:01.947589: Battery level now 6.36kWh, -1hr ago 7.68kWh, at midnight 2.43kWh, battery value change in the last hour -15.61p, change today 46.45p, rate_forward 11.83p 2026-08-14 20:25:01.947972: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.5kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 20:25:02.011101: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 20:25:02.011349: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 20:25:02.111515: Using weighted-bucket historical load forecast over 14 days 2026-08-14 20:25:02.141346: Today's load divergence 141.43%, in-day adjustment 140.47%, damping 0.95x, yesterday 146.81% today 139.35% blend 14.93% 2026-08-14 20:25:02.141440: Today's predicted so far 11.48kWh with 0.0kWh car/iBoost excluded, 17.38kWh import ignored, and 11.48kWh forecast extra. 2026-08-14 20:25:02.141467: Today's actual load so far 21.55kWh with 0.0kWh car/iBoost excluded, and 17.38kWh import ignored. 2026-08-14 20:25:02.179575: Inverter 0: Type SK Sunsynk 2026-08-14 20:25:02.179657: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 20:25:02.180178: Reserve min: 7%, battery_min: 7% 2026-08-14 20:25:02.180255: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 20:25:02.180551: Inverter 0 SoC: 6.2kW 39%, current charge rate 5000W, current discharge rate 5250W, current battery power 429W, current battery voltage 51.2V, grid power -58W, load power 484W, PV Power 0W 2026-08-14 20:25:02.180724: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:25:02.180808: Inverter 0 scheduled charge enable is False 2026-08-14 20:25:02.180835: Inverter 0 charge windows currently [] 2026-08-14 20:25:02.180873: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 20:25:02.181039: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:25:02.181086: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:25:02.181135: Inverter 0 scheduled discharge enable is False 2026-08-14 20:25:02.181288: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:25:02.181359: Inverter 0 discharge windows currently [] 2026-08-14 20:25:02.181398: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:25:02.181434: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:25:02.181458: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:25:02.231480: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 20:25:02.231574: Plan was last updated on 2026-08-14 20:15:00+01:00 and is now 10.0 minutes old 2026-08-14 20:25:02.231776: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 20:25:02.231811: Best export window [ ] 2026-08-14 20:25:02.232473: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 20:25:02.235052: Load divergence over 8.0 hours mean 477.93W, min 291.0W, max 1057.8W, std dev 129.14W, divergence 13.51% 2026-08-14 20:25:02.250930: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 20:25:02.251037: LoadML is_calculating False 2026-08-14 20:25:02.251091: Creating pool of 12 processes to match your CPU count 2026-08-14 20:25:02.365999: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1354.21p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 47.32kWh, PV 0.0kWh 2026-08-14 20:25:02.486880: Battery has 4.67 hours left - now at 6.2kWh 2026-08-14 20:25:02.531608: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1385.35p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 48.54kWh, PV 0.0kWh 2026-08-14 20:25:02.611228: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1262.16p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 48.54kWh, PV 0.0kWh 2026-08-14 20:25:02.692942: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1237.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 47.32kWh, PV 0.0kWh 2026-08-14 20:25:02.693058: Saving plan best values to HA entities 2026-08-14 20:25:02.876168: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 20:25:02.882619: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 20:25:02.888391: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.35kWh, house 6.14kWh, export 0.0kWh, metric 1237.38p, metric10 1262.16p 2026-08-14 20:25:02.960148: Marginal costs baseline metric (no standing charge): 1137.4147 2026-08-14 20:25:03.195487: Marginal energy costs matrix computed: min=22.96 max=34.05 2026-08-14 20:25:03.268651: Rate array import [{'start': 1225, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 40.4p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1225, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 20:25:03.269345: - Your estimated bill for today is £7.31 and tomorrow is £4.37 2026-08-14 20:25:03.269388: - Import rates are very expensive (34.7p - 40.4p) for the next 1 and a half hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 20:25:03.269407: - The battery is currently at 39% and is in eco mode for the next 15 hours. 2026-08-14 20:25:03.269422: - For the next 48 hours there will be no solar generation. 2026-08-14 20:25:03.269436: - You will run out of battery in 4 and three quarters hours. 2026-08-14 20:25:03.269459: - Your next charge slot will be in 15 hours where import rates will be cheap (15.5p). 2026-08-14 20:25:03.269493: 2026-08-14 20:25:03.327135: Plan calculation took 1.10 seconds 2026-08-14 20:25:03.331493: No high rate period found 2026-08-14 20:25:03.383076: Import threshold used for optimisation was 27.18p 2026-08-14 20:25:03.443628: Low import rate windows [0: 08-14 20:00:00 - 08-14 20:30:00 @ 39.75, 1: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 2: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 3: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 4: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 5: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 6: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 7: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 8: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 9: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 10: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 11: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 12: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 13: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 14: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 15: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 16: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 17: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 18: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 19: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 20: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 21: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 22: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 23: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 24: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 25: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 26: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 27: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 28: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 29: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 30: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 31: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 32: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 33: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 34: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 35: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 36: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 37: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 38: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 39: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 40: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 41: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 42: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 43: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 44: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 45: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 46: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 47: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 48: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 49: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 50: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 51: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 52: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 53: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 54: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 55: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 56: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 57: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 58: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 59: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 60: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 61: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 62: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 63: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 64: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 65: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 66: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 67: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 68: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 69: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 70: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 71: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 72: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 73: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 74: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 75: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 76: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 77: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 78: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 79: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 80: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 81: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 82: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 83: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 84: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 85: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 86: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 87: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 88: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 89: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 90: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 91: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 92: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 93: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 94: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99] 2026-08-14 20:25:03.452196: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 39%, target 19% 2026-08-14 20:25:03.452393: Inverter 0 disabled charge window while waiting for schedule (now 08-14 20:25:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 20:25:03.452553: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:25:03.453108: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:25:03.453235: No export window planned 2026-08-14 20:25:03.453430: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 20:25:03.453475: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:25:03.453692: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:25:03.453939: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 20:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 20:25:03.454023: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 20:25:03.454116: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 20:25:03.454264: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:25:03.454356: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:25:03.454406: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:25:03.454443: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:25:03.454501: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:25:03.454547: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:25:03.454577: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:25:03.454685: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:25:03.454749: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:25:03.454795: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:25:03.454828: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:25:03.455107: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:25:03.455491: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:25:03.455553: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:25:03.455582: Inverter 0 count register writes 0 2026-08-14 20:25:03.471807: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 20:25:03.471965: Recompute is saving previous plan... 2026-08-14 20:25:03.474734: Best charge window [ 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0% ] 2026-08-14 20:25:03.474805: Best export window [ ] 2026-08-14 20:25:03.475479: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 20:25:03.478194: Load divergence over 8.0 hours mean 477.93W, min 291.0W, max 1057.8W, std dev 129.14W, divergence 13.51% 2026-08-14 20:25:03.493831: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 20:25:03.493934: LoadML is_calculating False 2026-08-14 20:25:03.493998: Creating pool of 12 processes to match your CPU count 2026-08-14 20:25:03.572649: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 20:25:03.574980: Optimise levels pass started at 2026-08-14 20:25:03 2026-08-14 20:25:03.575053: Optimise all windows, total charge 94 export 1 2026-08-14 20:25:04.705092: >> Region optimisation pass width 960 gives best_metric 1201.91p, best_cost 1210.47p, best_cycle 37.58kWh, best_import 28.43kWh 2026-08-14 20:25:05.192069: >> Region optimisation pass width 480 gives best_metric 1201.91p, best_cost 1210.47p, best_cycle 37.58kWh, best_import 28.43kWh 2026-08-14 20:25:05.741820: >> Region optimisation pass width 240 gives best_metric 1201.91p, best_cost 1210.47p, best_cycle 37.58kWh, best_import 28.43kWh 2026-08-14 20:25:06.904224: >> Region optimisation pass width 120 gives best_metric 1201.91p, best_cost 1210.47p, best_cycle 37.58kWh, best_import 28.43kWh 2026-08-14 20:25:06.904631: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 78 2026-08-14 20:25:06.904719: Optimise levels pass ended at 2026-08-14 20:25:06, duration 3.3 seconds tried 321 combinations 2026-08-14 20:25:06.904784: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1201.91p, best_keep 0kWh, best_cycle 37.58kWh, best_carbon 0kg, best_import 28.43kWh 2026-08-14 20:25:06.927853: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 20:25:12.535752: Tweak plan optimisation started metric 1112.44p, cost 1121.64p 2026-08-14 20:25:12.838941: Tweak optimisation finished metric 1112.44p, cost 1121.64p, metric_keep 0kWh, cycle 29.7kWh, carbon 0kg, import 22.47kWh, changed 8 window(s) 2026-08-14 20:25:12.860319: Swap charge optimisation started metric 1112.44p, cost 1121.64p, min_improvement_swap 0.1p 2026-08-14 20:25:20.468875: Swap charge optimisation finished metric 1112.44p, cost 1121.64p 2026-08-14 20:25:20.585879: Raw charge windows [ 14-08 20:00:00 - 14-08 20:30:00 @ 39.75p 0%, 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100% ] reserve 1.12 2026-08-14 20:25:20.586643: Unclipped charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 20:30:00 @ 32.37p 100% ] reserve 1.12 2026-08-14 20:25:20.587048: Unfiltered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 20:30:00 @ 32.37p 100% ] reserve 1.12 2026-08-14 20:25:20.587378: Filtered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:30:00 @ 14.59p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 20:30:00 @ 32.37p 100% ] reserve 1.12 2026-08-14 20:25:20.626256: Previous plan best metric is 1112.47 (cost 1121.69) and new plan best metric is 1112.44 (cost 1121.64) 2026-08-14 20:25:20.626479: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 20:25:20.626696: Plan valid is now true after recompute was False 2026-08-14 20:25:20.656476: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1351.37p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 47.14kWh, PV 0.0kWh 2026-08-14 20:25:20.772618: Battery has 4.67 hours left - now at 6.2kWh 2026-08-14 20:25:20.819379: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1382.37p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 48.35kWh, PV 0.0kWh 2026-08-14 20:25:20.893985: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1248.46p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 48.35kWh, PV 0.0kWh 2026-08-14 20:25:20.977630: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1221.66p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 47.14kWh, PV 0.0kWh 2026-08-14 20:25:20.977721: Saving plan best values to HA entities 2026-08-14 20:25:21.157779: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 20:25:21.162630: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 20:25:21.167453: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.33kWh, house 6.14kWh, export 0.0kWh, metric 1221.66p, metric10 1248.46p 2026-08-14 20:25:21.231479: Marginal costs baseline metric (no standing charge): 1121.6938 2026-08-14 20:25:21.461507: Marginal energy costs matrix computed: min=22.96 max=34.05 2026-08-14 20:25:21.531729: Rate array import [{'start': 1225, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 40.4p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1225, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 20:25:21.532401: - Your estimated bill for today is £7.31 and tomorrow is £4.37 2026-08-14 20:25:21.532445: - Import rates are very expensive (34.7p - 40.4p) for the next 1 and a half hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 20:25:21.532490: - The battery is currently at 39% and is in eco mode for the next 15 hours. 2026-08-14 20:25:21.532520: - For the next 48 hours there will be no solar generation. 2026-08-14 20:25:21.532536: - You will run out of battery in 4 and three quarters hours. 2026-08-14 20:25:21.532550: - Your next charge slot will be in 15 hours where import rates will be cheap (15.5p). 2026-08-14 20:25:21.532570: 2026-08-14 20:25:21.586132: Plan calculation took 18.11 seconds 2026-08-14 20:25:21.586515: Inverter 0: Type SK Sunsynk 2026-08-14 20:25:21.586589: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 20:25:21.587290: Reserve min: 7%, battery_min: 7% 2026-08-14 20:25:21.588904: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 20:25:21.589296: Inverter 0 SoC: 5.98kW 37%, current charge rate 5000W, current discharge rate 5250W, current battery power 1991W, current battery voltage 51.2V, grid power -54W, load power 2026W, PV Power 0W 2026-08-14 20:25:21.589570: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:25:21.589684: Inverter 0 scheduled charge enable is False 2026-08-14 20:25:21.589725: Inverter 0 charge windows currently [] 2026-08-14 20:25:21.589755: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 20:25:21.589865: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:25:21.589901: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:25:21.589937: Inverter 0 scheduled discharge enable is False 2026-08-14 20:25:21.590092: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:25:21.590146: Inverter 0 discharge windows currently [] 2026-08-14 20:25:21.590171: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:25:21.590190: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:25:21.590207: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:25:21.638618: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 37%, target 19% 2026-08-14 20:25:21.638764: Inverter 0 disabled charge window while waiting for schedule (now 08-14 20:25:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 20:25:21.638834: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:25:21.639028: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:25:21.639109: No export window planned 2026-08-14 20:25:21.639215: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 20:25:21.639250: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:25:21.639400: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:25:21.639562: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 20:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 20:25:21.639614: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 20:25:21.639664: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 20:25:21.639759: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:25:21.639799: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:25:21.639826: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:25:21.639851: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:25:21.639899: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:25:21.639926: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:25:21.639950: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:25:21.640012: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:25:21.640041: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:25:21.640066: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:25:21.640091: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:25:21.640114: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:25:21.640137: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:25:21.640161: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:25:21.640185: Inverter 0 count register writes 0 2026-08-14 20:25:21.661672: Total inverter register writes now 815 2026-08-14 20:25:21.693056: Info: Completed run status Demand 2026-08-14 20:25:21.699548: Info: record_status Demand 2026-08-14 20:25:21.706135: Saved current settings to /config/predbat_config.json 2026-08-14 20:25:21.706458: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 20:25:56.804398: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:25:56.804657: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:25:56.804692: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:25:56.804853: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:25:56.804895: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:25:56.804916: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:25:56.804933: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:27:57.030539: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:27:57.030793: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:27:57.030832: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:27:57.030992: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:27:57.031032: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:27:57.031054: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:27:57.031071: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:29:57.248818: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:29:57.249168: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:29:57.249228: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:29:57.249435: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:29:57.249483: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:29:57.249505: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:29:57.249546: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:30:00.342451: --------------- PredBat - update at 2026-08-14 20:30:00+01:00 with clock skew 0 minutes, minutes now 1230 2026-08-14 20:30:00.343196: Saved current settings to /config/predbat_config.json 2026-08-14 20:30:00.343332: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 35.0 minutes 2026-08-14 20:30:00.343467: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 20:30:00.343553: Autoupdate: Currently up to date 2026-08-14 20:30:00.366126: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 20:30:00.366255: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 20:30:00.366432: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 20:30:00.366962: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 20:30:00.367082: Predbat mode is set to Control charge & discharge 2026-08-14 20:30:00.572476: Found 21602 load_today datapoints going back 28 days 2026-08-14 20:30:00.572633: Using load_power data to fill gaps in load_today data 2026-08-14 20:30:01.417619: Processing 721 30-minute periods for power integration 2026-08-14 20:30:01.592090: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 20:30:01.592240: Car charging hold False, threshold 6.0kWh 2026-08-14 20:30:01.592306: Current data so far today: load 22.1kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 20:30:01.607366: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 20:30:01.607764: Standing charge is set to 49.98p 2026-08-14 20:30:01.661600: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 20:30:01.661739: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 20:30:01.662069: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 595.0 minutes 2026-08-14 20:30:01.662814: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 595.0 minutes 2026-08-14 20:30:01.672586: Loaded 95 datapoints of futurerate analysis 2026-08-14 20:30:01.853370: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13'] 2026-08-14 20:30:01.901535: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 20:30:01.901987: Import rates: min 13.77p, max 43.82p, average 26.13p 2026-08-14 20:30:01.949718: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 20:30:01.949868: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 20:30:01.951393: High export rate found rates in range 99p to -99p 2026-08-14 20:30:02.066305: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 20:30:02.066464: Car 0 charging is not planned as it is not plugged in 2026-08-14 20:30:02.083028: Battery level now 6.2kWh, -1hr ago 7.44kWh, at midnight 2.43kWh, battery value change in the last hour -14.66p, change today 44.56p, rate_forward 11.83p 2026-08-14 20:30:02.083633: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.75kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 20:30:02.168119: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 20:30:02.168350: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 20:30:02.273665: Using weighted-bucket historical load forecast over 14 days 2026-08-14 20:30:02.300697: Today's load divergence 142.68%, in-day adjustment 141.46%, damping 0.95x, yesterday 146.81% today 140.55% blend 14.58% 2026-08-14 20:30:02.300812: Today's predicted so far 11.57kWh with 0.0kWh car/iBoost excluded, 17.37kWh import ignored, and 11.57kWh forecast extra. 2026-08-14 20:30:02.300839: Today's actual load so far 22.16kWh with 0.0kWh car/iBoost excluded, and 17.37kWh import ignored. 2026-08-14 20:30:02.332035: Inverter 0: Type SK Sunsynk 2026-08-14 20:30:02.332125: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 20:30:02.332674: Reserve min: 7%, battery_min: 7% 2026-08-14 20:30:02.332754: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 20:30:02.333055: Inverter 0 SoC: 5.98kW 37%, current charge rate 5000W, current discharge rate 5250W, current battery power 399W, current battery voltage 51.2V, grid power -55W, load power 458W, PV Power 0W 2026-08-14 20:30:02.333219: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:30:02.333308: Inverter 0 scheduled charge enable is False 2026-08-14 20:30:02.333343: Inverter 0 charge windows currently [] 2026-08-14 20:30:02.333371: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 20:30:02.333505: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:30:02.333545: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:30:02.333582: Inverter 0 scheduled discharge enable is False 2026-08-14 20:30:02.333715: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:30:02.333752: Inverter 0 discharge windows currently [] 2026-08-14 20:30:02.333774: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:30:02.333798: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:30:02.333815: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:30:02.393005: Dynamic load last period 2.40kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 20:30:02.393134: Plan was last updated on 2026-08-14 20:25:00+01:00 and is now 5.0 minutes old 2026-08-14 20:30:02.393374: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 20:30:02.393432: Best export window [ ] 2026-08-14 20:30:02.394209: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 20:30:02.397283: Load divergence over 8.0 hours mean 481.0W, min 279.0W, max 1138.2W, std dev 131.21W, divergence 13.64% 2026-08-14 20:30:02.420668: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 20:30:02.420798: LoadML is_calculating False 2026-08-14 20:30:02.420869: Creating pool of 12 processes to match your CPU count 2026-08-14 20:30:02.547308: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1356.92p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 47.57kWh, PV 0.0kWh 2026-08-14 20:30:02.674071: Battery has 4.42 hours left - now at 5.98kWh 2026-08-14 20:30:02.720272: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1387.82p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 48.78kWh, PV 0.0kWh 2026-08-14 20:30:02.800295: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1259.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 48.78kWh, PV 0.0kWh 2026-08-14 20:30:02.874533: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1233.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 47.57kWh, PV 0.0kWh 2026-08-14 20:30:02.874625: Saving plan best values to HA entities 2026-08-14 20:30:03.059197: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 20:30:03.064860: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 20:30:03.070707: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.83kWh, house 6.3kWh, export 0.0kWh, metric 1233.62p, metric10 1259.25p 2026-08-14 20:30:03.151136: Marginal costs baseline metric (no standing charge): 1133.6517 2026-08-14 20:30:03.456319: Marginal energy costs matrix computed: min=23.02 max=34.02 2026-08-14 20:30:03.535764: Rate array import [{'start': 1230, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 40.4p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1230, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 20:30:03.536450: - Your estimated bill for today is £7.31 and tomorrow is £4.41 2026-08-14 20:30:03.536496: - Import rates are very expensive (34.7p - 40.4p) for the next 1 and a half hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 20:30:03.536515: - The battery is currently at 37% and is in eco mode for the next 15 hours. 2026-08-14 20:30:03.536530: - For the next 48 hours there will be no solar generation. 2026-08-14 20:30:03.536544: - You will run out of battery in 4 and a half hours. 2026-08-14 20:30:03.536575: - Your next charge slot will be in 15 hours where import rates will be cheap (15.5p). 2026-08-14 20:30:03.536590: 2026-08-14 20:30:03.603539: Plan calculation took 1.21 seconds 2026-08-14 20:30:03.607555: No high rate period found 2026-08-14 20:30:03.662549: Import threshold used for optimisation was 27.18p 2026-08-14 20:30:03.718755: Low import rate windows [0: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 1: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 2: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 3: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 4: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 5: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 6: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 7: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 8: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 9: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 10: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 11: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 12: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 13: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 14: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 15: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 16: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 17: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 18: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 19: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 20: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 21: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 22: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 23: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 24: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 25: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 26: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 27: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 28: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 29: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 30: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 31: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 32: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 33: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 34: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 35: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 36: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 37: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 38: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 39: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 40: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 41: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 42: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 43: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 44: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 45: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 46: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 47: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 48: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 49: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 50: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 51: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 52: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 53: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 54: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 55: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 56: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 57: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 58: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 59: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 60: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 61: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 62: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 63: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 64: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 65: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 66: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 67: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 68: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 69: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 70: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 71: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 72: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 73: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 74: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 75: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 76: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 77: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 78: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 79: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 80: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 81: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 82: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 83: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 84: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 85: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 86: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 87: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 88: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 89: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 90: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 91: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 92: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 93: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99] 2026-08-14 20:30:03.726498: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 37%, target 19% 2026-08-14 20:30:03.726646: Inverter 0 disabled charge window while waiting for schedule (now 08-14 20:30:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 20:30:03.726758: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:30:03.727072: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:30:03.727172: No export window planned 2026-08-14 20:30:03.727282: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 20:30:03.727318: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:30:03.727603: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:30:03.727837: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 20:30:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 20:30:03.727906: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 20:30:03.727976: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 20:30:03.728069: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:30:03.728111: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:30:03.728139: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:30:03.728164: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:30:03.728189: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:30:03.728215: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:30:03.728239: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:30:03.728300: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:30:03.728329: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:30:03.728353: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:30:03.728377: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:30:03.728402: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:30:03.728448: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:30:03.728478: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:30:03.728504: Inverter 0 count register writes 0 2026-08-14 20:30:03.744777: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 20:30:03.750355: Total inverter register writes now 815 2026-08-14 20:30:03.784780: Info: Completed run status Demand 2026-08-14 20:30:03.791395: Info: record_status Demand 2026-08-14 20:30:03.798760: Saved current settings to /config/predbat_config.json 2026-08-14 20:30:03.799136: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 20:30:41.910005: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:30:41.910259: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:30:41.910298: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:30:41.910514: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:30:41.910591: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:30:41.910622: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:30:41.910641: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:32:42.146971: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:32:42.147239: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:32:42.147273: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:32:42.147437: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:32:42.147518: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:32:42.147538: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:32:42.147552: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:34:42.371201: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:34:42.371443: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:34:42.371518: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:34:42.371715: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:34:42.371755: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:34:42.371776: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:34:42.371794: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:35:00.465705: --------------- PredBat - update at 2026-08-14 20:35:00+01:00 with clock skew 0 minutes, minutes now 1235 2026-08-14 20:35:00.466409: Saved current settings to /config/predbat_config.json 2026-08-14 20:35:00.466588: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 40.0 minutes 2026-08-14 20:35:00.466713: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 20:35:00.466860: Autoupdate: Currently up to date 2026-08-14 20:35:00.483845: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 20:35:00.483974: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 20:35:00.484155: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 20:35:00.484853: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 20:35:00.485004: Predbat mode is set to Control charge & discharge 2026-08-14 20:35:00.677721: Found 21602 load_today datapoints going back 28 days 2026-08-14 20:35:00.677893: Using load_power data to fill gaps in load_today data 2026-08-14 20:35:01.458446: Processing 721 30-minute periods for power integration 2026-08-14 20:35:01.615107: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 20:35:01.615229: Car charging hold False, threshold 6.0kWh 2026-08-14 20:35:01.615267: Current data so far today: load 22.3kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 20:35:01.630992: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 20:35:01.631395: Standing charge is set to 49.98p 2026-08-14 20:35:01.673129: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 20:35:01.673211: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 20:35:01.673375: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 600.0 minutes 2026-08-14 20:35:01.673716: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 600.0 minutes 2026-08-14 20:35:01.679603: Loaded 95 datapoints of futurerate analysis 2026-08-14 20:35:01.805044: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13'] 2026-08-14 20:35:01.845956: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 20:35:01.846351: Import rates: min 13.77p, max 43.82p, average 26.11p 2026-08-14 20:35:01.884859: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 20:35:01.885024: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 20:35:01.886153: High export rate found rates in range 99p to -99p 2026-08-14 20:35:01.976307: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 20:35:01.976469: Car 0 charging is not planned as it is not plugged in 2026-08-14 20:35:01.993896: Battery level now 5.98kWh, -1hr ago 7.32kWh, at midnight 2.43kWh, battery value change in the last hour -15.8p, change today 42.01p, rate_forward 11.83p 2026-08-14 20:35:01.994356: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.8kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 20:35:02.072923: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 20:35:02.073239: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 20:35:02.170289: Using weighted-bucket historical load forecast over 14 days 2026-08-14 20:35:02.195432: Today's load divergence 143.17%, in-day adjustment 141.83%, damping 0.95x, yesterday 146.81% today 141.01% blend 14.24% 2026-08-14 20:35:02.195514: Today's predicted so far 11.65kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 11.65kWh forecast extra. 2026-08-14 20:35:02.195542: Today's actual load so far 22.44kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 20:35:02.227101: Inverter 0: Type SK Sunsynk 2026-08-14 20:35:02.227180: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 20:35:02.227666: Reserve min: 7%, battery_min: 7% 2026-08-14 20:35:02.227738: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 20:35:02.227973: Inverter 0 SoC: 5.92kW 37%, current charge rate 5000W, current discharge rate 5250W, current battery power 399W, current battery voltage 51.2V, grid power -55W, load power 457W, PV Power 0W 2026-08-14 20:35:02.228104: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:35:02.228175: Inverter 0 scheduled charge enable is False 2026-08-14 20:35:02.228198: Inverter 0 charge windows currently [] 2026-08-14 20:35:02.228219: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 20:35:02.228308: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:35:02.228337: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:35:02.228366: Inverter 0 scheduled discharge enable is False 2026-08-14 20:35:02.228467: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:35:02.228498: Inverter 0 discharge windows currently [] 2026-08-14 20:35:02.228533: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:35:02.228556: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:35:02.228571: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:35:02.280785: Dynamic load last period 2.40kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 20:35:02.280884: Plan was last updated on 2026-08-14 20:25:00+01:00 and is now 10.0 minutes old 2026-08-14 20:35:02.281131: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 20:35:02.281172: Best export window [ ] 2026-08-14 20:35:02.281860: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 20:35:02.284401: Load divergence over 8.0 hours mean 484.09W, min 267.0W, max 1243.8W, std dev 153.29W, divergence 15.83% 2026-08-14 20:35:02.300254: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 20:35:02.300342: LoadML is_calculating False 2026-08-14 20:35:02.300409: Creating pool of 12 processes to match your CPU count 2026-08-14 20:35:02.406093: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1358.03p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 47.8kWh, PV 0.0kWh 2026-08-14 20:35:02.516119: Battery has 4.33 hours left - now at 5.92kWh 2026-08-14 20:35:02.554270: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1388.93p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 49.01kWh, PV 0.0kWh 2026-08-14 20:35:02.627995: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1265.84p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 49.01kWh, PV 0.0kWh 2026-08-14 20:35:02.706719: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1241.28p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 47.8kWh, PV 0.0kWh 2026-08-14 20:35:02.706825: Saving plan best values to HA entities 2026-08-14 20:35:02.855481: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 20:35:02.860762: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 20:35:02.866044: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.33kWh, house 6.29kWh, export 0.0kWh, metric 1241.28p, metric10 1265.84p 2026-08-14 20:35:02.939027: Marginal costs baseline metric (no standing charge): 1141.3116 2026-08-14 20:35:03.233521: Marginal energy costs matrix computed: min=23.11 max=33.78 2026-08-14 20:35:03.316393: Rate array import [{'start': 1235, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 40.4p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1235, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 20:35:03.317353: - Your estimated bill for today is £7.31 and tomorrow is £4.41 2026-08-14 20:35:03.317407: - Import rates are very expensive (34.7p - 40.4p) for the next 1 and a half hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 20:35:03.317430: - The battery is currently at 37% and is in eco mode for the next 14 hours. 2026-08-14 20:35:03.317454: - For the next 48 hours there will be no solar generation. 2026-08-14 20:35:03.317487: - You will run out of battery in 4 and a quarter hours. 2026-08-14 20:35:03.317539: - Your next charge slot will be in 14 hours where import rates will be cheap (15.5p). 2026-08-14 20:35:03.317583: 2026-08-14 20:35:03.376003: Plan calculation took 1.10 seconds 2026-08-14 20:35:03.379081: No high rate period found 2026-08-14 20:35:03.429950: Import threshold used for optimisation was 27.18p 2026-08-14 20:35:03.492625: Low import rate windows [0: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 1: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 2: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 3: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 4: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 5: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 6: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 7: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 8: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 9: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 10: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 11: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 12: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 13: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 14: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 15: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 16: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 17: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 18: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 19: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 20: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 21: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 22: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 23: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 24: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 25: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 26: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 27: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 28: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 29: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 30: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 31: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 32: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 33: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 34: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 35: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 36: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 37: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 38: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 39: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 40: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 41: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 42: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 43: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 44: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 45: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 46: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 47: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 48: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 49: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 50: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 51: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 52: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 53: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 54: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 55: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 56: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 57: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 58: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 59: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 60: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 61: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 62: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 63: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 64: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 65: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 66: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 67: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 68: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 69: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 70: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 71: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 72: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 73: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 74: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 75: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 76: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 77: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 78: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 79: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 80: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 81: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 82: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 83: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 84: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 85: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 86: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 87: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 88: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 89: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 90: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 91: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 92: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 93: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 94: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1] 2026-08-14 20:35:03.500721: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 37%, target 19% 2026-08-14 20:35:03.500863: Inverter 0 disabled charge window while waiting for schedule (now 08-14 20:35:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 20:35:03.501050: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:35:03.501351: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:35:03.501471: No export window planned 2026-08-14 20:35:03.501613: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 20:35:03.501654: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:35:03.501793: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:35:03.501974: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 20:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 20:35:03.502059: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 20:35:03.502125: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 20:35:03.502217: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:35:03.502257: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:35:03.502284: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:35:03.502309: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:35:03.502332: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:35:03.502356: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:35:03.502383: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:35:03.502485: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:35:03.502557: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:35:03.502590: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:35:03.502621: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:35:03.502648: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:35:03.502673: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:35:03.502697: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:35:03.502718: Inverter 0 count register writes 0 2026-08-14 20:35:03.519357: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 20:35:03.519556: Recompute is saving previous plan... 2026-08-14 20:35:03.522843: Best charge window [ 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0% ] 2026-08-14 20:35:03.522931: Best export window [ ] 2026-08-14 20:35:03.523765: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 20:35:03.526977: Load divergence over 8.0 hours mean 484.09W, min 267.0W, max 1243.8W, std dev 153.29W, divergence 15.83% 2026-08-14 20:35:03.545896: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 20:35:03.546003: LoadML is_calculating False 2026-08-14 20:35:03.546066: Creating pool of 12 processes to match your CPU count 2026-08-14 20:35:03.632243: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 20:35:03.634564: Optimise levels pass started at 2026-08-14 20:35:03 2026-08-14 20:35:03.634679: Optimise all windows, total charge 94 export 1 2026-08-14 20:35:04.731210: >> Region optimisation pass width 960 gives best_metric 1206.84p, best_cost 1214.38p, best_cycle 37.36kWh, best_import 28.57kWh 2026-08-14 20:35:05.151232: >> Region optimisation pass width 480 gives best_metric 1206.84p, best_cost 1214.38p, best_cycle 37.36kWh, best_import 28.57kWh 2026-08-14 20:35:05.670047: >> Region optimisation pass width 240 gives best_metric 1206.84p, best_cost 1214.38p, best_cycle 37.36kWh, best_import 28.57kWh 2026-08-14 20:35:06.737106: >> Region optimisation pass width 120 gives best_metric 1206.84p, best_cost 1214.38p, best_cycle 37.36kWh, best_import 28.57kWh 2026-08-14 20:35:06.737575: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 77 2026-08-14 20:35:06.737672: Optimise levels pass ended at 2026-08-14 20:35:06, duration 3.1 seconds tried 316 combinations 2026-08-14 20:35:06.737740: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1206.84p, best_keep 0kWh, best_cycle 37.36kWh, best_carbon 0kg, best_import 28.57kWh 2026-08-14 20:35:06.758962: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 20:35:11.928597: Tweak plan optimisation started metric 1116.46p, cost 1125.6p 2026-08-14 20:35:12.242923: Tweak optimisation finished metric 1116.46p, cost 1125.6p, metric_keep 0kWh, cycle 29.43kWh, carbon 0kg, import 22.62kWh, changed 8 window(s) 2026-08-14 20:35:12.265055: Swap charge optimisation started metric 1116.46p, cost 1125.6p, min_improvement_swap 0.1p 2026-08-14 20:35:18.584850: Swap charge optimisation finished metric 1116.46p, cost 1125.6p 2026-08-14 20:35:18.680132: Raw charge windows [ 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100% ] reserve 1.12 2026-08-14 20:35:18.680749: Unclipped charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 21:00:00 @ 32.23p 100% ] reserve 1.12 2026-08-14 20:35:18.681110: Unfiltered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 21:00:00 @ 32.23p 100% ] reserve 1.12 2026-08-14 20:35:18.681382: Filtered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:30:00 @ 14.59p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 21:00:00 @ 32.23p 100% ] reserve 1.12 2026-08-14 20:35:18.712749: Previous plan best metric is 1116.49 (cost 1125.75) and new plan best metric is 1116.46 (cost 1125.6) 2026-08-14 20:35:18.712937: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 20:35:18.713135: Plan valid is now true after recompute was False 2026-08-14 20:35:18.737652: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1355.34p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 47.62kWh, PV 0.0kWh 2026-08-14 20:35:18.831285: Battery has 4.33 hours left - now at 5.92kWh 2026-08-14 20:35:18.869944: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1386.11p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 48.83kWh, PV 0.0kWh 2026-08-14 20:35:18.936790: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1252.3p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 48.83kWh, PV 0.0kWh 2026-08-14 20:35:19.006648: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1225.71p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 47.62kWh, PV 0.0kWh 2026-08-14 20:35:19.006737: Saving plan best values to HA entities 2026-08-14 20:35:19.169215: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 20:35:19.173719: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 20:35:19.178432: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.32kWh, house 6.29kWh, export 0.0kWh, metric 1225.71p, metric10 1252.3p 2026-08-14 20:35:19.254364: Marginal costs baseline metric (no standing charge): 1125.7469 2026-08-14 20:35:19.500128: Marginal energy costs matrix computed: min=23.11 max=33.78 2026-08-14 20:35:19.568075: Rate array import [{'start': 1235, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 40.4p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1235, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 20:35:19.568696: - Your estimated bill for today is £7.31 and tomorrow is £4.41 2026-08-14 20:35:19.568735: - Import rates are very expensive (34.7p - 40.4p) for the next 1 and a half hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 20:35:19.568754: - The battery is currently at 37% and is in eco mode for the next 14 hours. 2026-08-14 20:35:19.568768: - For the next 48 hours there will be no solar generation. 2026-08-14 20:35:19.568782: - You will run out of battery in 4 and a quarter hours. 2026-08-14 20:35:19.568796: - Your next charge slot will be in 14 hours where import rates will be cheap (15.5p). 2026-08-14 20:35:19.568809: 2026-08-14 20:35:19.623352: Plan calculation took 16.10 seconds 2026-08-14 20:35:19.623741: Inverter 0: Type SK Sunsynk 2026-08-14 20:35:19.623793: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 20:35:19.624488: Reserve min: 7%, battery_min: 7% 2026-08-14 20:35:19.624600: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 20:35:19.624932: Inverter 0 SoC: 5.78kW 36%, current charge rate 5000W, current discharge rate 5250W, current battery power 387W, current battery voltage 51.2V, grid power -55W, load power 444W, PV Power 0W 2026-08-14 20:35:19.625238: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:35:19.625351: Inverter 0 scheduled charge enable is False 2026-08-14 20:35:19.625392: Inverter 0 charge windows currently [] 2026-08-14 20:35:19.625424: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 20:35:19.625643: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:35:19.625718: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:35:19.625795: Inverter 0 scheduled discharge enable is False 2026-08-14 20:35:19.626025: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:35:19.626071: Inverter 0 discharge windows currently [] 2026-08-14 20:35:19.626096: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:35:19.626121: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:35:19.626166: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:35:19.686720: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 36%, target 19% 2026-08-14 20:35:19.686876: Inverter 0 disabled charge window while waiting for schedule (now 08-14 20:35:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 20:35:19.686983: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:35:19.687257: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:35:19.687382: No export window planned 2026-08-14 20:35:19.687568: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 20:35:19.687615: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:35:19.687829: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:35:19.688016: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 20:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 20:35:19.688071: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 20:35:19.688126: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 20:35:19.688249: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:35:19.688301: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:35:19.688330: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:35:19.688360: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:35:19.688386: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:35:19.688415: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:35:19.688440: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:35:19.688498: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:35:19.688553: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:35:19.688580: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:35:19.688633: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:35:19.688659: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:35:19.688690: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:35:19.688714: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:35:19.688733: Inverter 0 count register writes 0 2026-08-14 20:35:19.711217: Total inverter register writes now 815 2026-08-14 20:35:19.745919: Info: Completed run status Demand 2026-08-14 20:35:19.752921: Info: record_status Demand 2026-08-14 20:35:19.759321: Saved current settings to /config/predbat_config.json 2026-08-14 20:35:19.759640: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 20:35:56.865974: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:35:56.866177: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:35:56.866208: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:35:56.866315: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:35:56.866374: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:35:56.866390: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:35:56.866404: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:37:57.079054: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:37:57.079293: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:37:57.079328: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:37:57.079466: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:37:57.079520: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:37:57.079554: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:37:57.079574: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:39:57.302959: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:39:57.303200: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:39:57.303235: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:39:57.303403: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:39:57.303450: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:39:57.303471: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:39:57.303489: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:40:00.388056: --------------- PredBat - update at 2026-08-14 20:40:00+01:00 with clock skew 0 minutes, minutes now 1240 2026-08-14 20:40:00.389046: Saved current settings to /config/predbat_config.json 2026-08-14 20:40:00.389179: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 45.0 minutes 2026-08-14 20:40:00.389269: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 20:40:00.389383: Autoupdate: Currently up to date 2026-08-14 20:40:00.407499: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 20:40:00.407649: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 20:40:00.407822: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 20:40:00.408352: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 20:40:00.408471: Predbat mode is set to Control charge & discharge 2026-08-14 20:40:00.621940: Found 21602 load_today datapoints going back 28 days 2026-08-14 20:40:00.622132: Using load_power data to fill gaps in load_today data 2026-08-14 20:40:01.461286: Processing 721 30-minute periods for power integration 2026-08-14 20:40:01.664029: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 20:40:01.664174: Car charging hold False, threshold 6.0kWh 2026-08-14 20:40:01.664221: Current data so far today: load 22.05kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 20:40:01.682771: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 20:40:01.683217: Standing charge is set to 49.98p 2026-08-14 20:40:01.731717: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 20:40:01.731813: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 20:40:01.732032: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 605.0 minutes 2026-08-14 20:40:01.732436: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 605.0 minutes 2026-08-14 20:40:01.738981: Loaded 95 datapoints of futurerate analysis 2026-08-14 20:40:01.889881: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13'] 2026-08-14 20:40:01.934331: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 20:40:01.934847: Import rates: min 13.77p, max 43.82p, average 26.1p 2026-08-14 20:40:01.978216: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 20:40:01.978387: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 20:40:01.979715: High export rate found rates in range 99p to -99p 2026-08-14 20:40:02.095207: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 20:40:02.095379: Car 0 charging is not planned as it is not plugged in 2026-08-14 20:40:02.109404: Battery level now 5.92kWh, -1hr ago 7.32kWh, at midnight 2.43kWh, battery value change in the last hour -16.56p, change today 41.25p, rate_forward 11.83p 2026-08-14 20:40:02.109806: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.45kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 20:40:02.172694: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 20:40:02.172851: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 20:40:02.268184: Using weighted-bucket historical load forecast over 14 days 2026-08-14 20:40:02.300235: Today's load divergence 142.49%, in-day adjustment 141.26%, damping 0.95x, yesterday 146.81% today 140.36% blend 13.89% 2026-08-14 20:40:02.300324: Today's predicted so far 11.66kWh with 0.0kWh car/iBoost excluded, 17.18kWh import ignored, and 11.66kWh forecast extra. 2026-08-14 20:40:02.300355: Today's actual load so far 22.15kWh with 0.0kWh car/iBoost excluded, and 17.18kWh import ignored. 2026-08-14 20:40:02.329586: Inverter 0: Type SK Sunsynk 2026-08-14 20:40:02.329676: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 20:40:02.330221: Reserve min: 7%, battery_min: 7% 2026-08-14 20:40:02.330296: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 20:40:02.330592: Inverter 0 SoC: 5.78kW 36%, current charge rate 5000W, current discharge rate 5250W, current battery power 391W, current battery voltage 51.2V, grid power -54W, load power 449W, PV Power 0W 2026-08-14 20:40:02.330745: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:40:02.330828: Inverter 0 scheduled charge enable is False 2026-08-14 20:40:02.330892: Inverter 0 charge windows currently [] 2026-08-14 20:40:02.330919: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 20:40:02.331024: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:40:02.331086: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:40:02.331121: Inverter 0 scheduled discharge enable is False 2026-08-14 20:40:02.331273: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:40:02.331310: Inverter 0 discharge windows currently [] 2026-08-14 20:40:02.331332: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:40:02.331354: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:40:02.331372: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:40:02.391182: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 20:40:02.391297: Plan was last updated on 2026-08-14 20:35:00+01:00 and is now 5.0 minutes old 2026-08-14 20:40:02.391598: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 20:40:02.391642: Best export window [ ] 2026-08-14 20:40:02.392347: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 20:40:02.395160: Load divergence over 8.0 hours mean 485.64W, min 274.8W, max 1206.0W, std dev 149.28W, divergence 15.37% 2026-08-14 20:40:02.410811: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 20:40:02.410918: LoadML is_calculating False 2026-08-14 20:40:02.410971: Creating pool of 12 processes to match your CPU count 2026-08-14 20:40:02.509289: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1358.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 47.39kWh, PV 0.0kWh 2026-08-14 20:40:02.622485: Battery has 4.17 hours left - now at 5.78kWh 2026-08-14 20:40:02.671692: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1389.02p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 48.6kWh, PV 0.0kWh 2026-08-14 20:40:02.746741: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1260.49p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 48.6kWh, PV 0.0kWh 2026-08-14 20:40:02.831726: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1235.01p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 47.39kWh, PV 0.0kWh 2026-08-14 20:40:02.831814: Saving plan best values to HA entities 2026-08-14 20:40:02.991809: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 20:40:02.997827: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 20:40:03.005451: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.82kWh, house 6.36kWh, export 0.0kWh, metric 1235.01p, metric10 1260.49p 2026-08-14 20:40:03.080458: Marginal costs baseline metric (no standing charge): 1135.0475 2026-08-14 20:40:03.362340: Marginal energy costs matrix computed: min=23.21 max=33.6 2026-08-14 20:40:03.445280: Rate array import [{'start': 1240, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 40.4p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1240, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 20:40:03.446280: - Your estimated bill for today is £7.31 and tomorrow is £4.42 2026-08-14 20:40:03.446345: - Import rates are very expensive (34.7p - 40.4p) for the next 1 and a quarter hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 20:40:03.446370: - The battery is currently at 36% and is in eco mode for the next 14 hours. 2026-08-14 20:40:03.446389: - For the next 48 hours there will be no solar generation. 2026-08-14 20:40:03.446412: - You will run out of battery in 4 and a quarter hours. 2026-08-14 20:40:03.446433: - Your next charge slot will be in 14 hours where import rates will be cheap (15.5p). 2026-08-14 20:40:03.446451: 2026-08-14 20:40:03.502976: Plan calculation took 1.11 seconds 2026-08-14 20:40:03.506741: No high rate period found 2026-08-14 20:40:03.554301: Import threshold used for optimisation was 27.18p 2026-08-14 20:40:03.620178: Low import rate windows [0: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 1: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 2: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 3: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 4: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 5: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 6: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 7: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 8: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 9: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 10: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 11: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 12: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 13: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 14: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 15: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 16: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 17: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 18: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 19: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 20: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 21: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 22: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 23: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 24: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 25: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 26: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 27: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 28: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 29: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 30: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 31: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 32: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 33: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 34: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 35: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 36: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 37: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 38: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 39: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 40: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 41: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 42: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 43: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 44: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 45: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 46: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 47: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 48: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 49: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 50: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 51: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 52: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 53: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 54: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 55: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 56: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 57: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 58: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 59: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 60: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 61: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 62: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 63: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 64: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 65: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 66: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 67: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 68: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 69: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 70: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 71: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 72: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 73: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 74: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 75: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 76: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 77: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 78: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 79: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 80: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 81: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 82: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 83: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 84: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 85: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 86: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 87: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 88: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 89: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 90: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 91: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 92: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 93: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 94: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1] 2026-08-14 20:40:03.627737: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 36%, target 19% 2026-08-14 20:40:03.627869: Inverter 0 disabled charge window while waiting for schedule (now 08-14 20:40:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 20:40:03.627973: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:40:03.628216: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:40:03.628296: No export window planned 2026-08-14 20:40:03.628388: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 20:40:03.628418: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:40:03.628527: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:40:03.628695: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 20:40:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 20:40:03.628748: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 20:40:03.628804: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 20:40:03.628880: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:40:03.628916: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:40:03.628938: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:40:03.628989: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:40:03.629013: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:40:03.629033: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:40:03.629055: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:40:03.629107: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:40:03.629136: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:40:03.629157: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:40:03.629180: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:40:03.629199: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:40:03.629223: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:40:03.629242: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:40:03.629260: Inverter 0 count register writes 0 2026-08-14 20:40:03.646055: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 20:40:03.651325: Total inverter register writes now 815 2026-08-14 20:40:03.684335: Info: Completed run status Demand 2026-08-14 20:40:03.690532: Info: record_status Demand 2026-08-14 20:40:03.698022: Saved current settings to /config/predbat_config.json 2026-08-14 20:40:03.698454: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 20:40:41.801462: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:40:41.801723: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:40:41.801773: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:40:41.801954: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:40:41.802025: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:40:41.802048: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:40:41.802092: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:42:42.026862: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:42:42.027113: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:42:42.027150: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:42:42.027283: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:42:42.027323: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:42:42.027344: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:42:42.027362: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:44:42.262745: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:44:42.263011: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:44:42.263056: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:44:42.263206: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:44:42.263250: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:44:42.263273: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:44:42.263291: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:45:00.363947: --------------- PredBat - update at 2026-08-14 20:45:00+01:00 with clock skew 0 minutes, minutes now 1245 2026-08-14 20:45:00.364688: Saved current settings to /config/predbat_config.json 2026-08-14 20:45:00.364786: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 50.0 minutes 2026-08-14 20:45:00.364904: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 20:45:00.365105: Autoupdate: Currently up to date 2026-08-14 20:45:00.382043: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 20:45:00.382152: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 20:45:00.382288: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 20:45:00.382733: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 20:45:00.382833: Predbat mode is set to Control charge & discharge 2026-08-14 20:45:00.543861: Found 21602 load_today datapoints going back 28 days 2026-08-14 20:45:00.543991: Using load_power data to fill gaps in load_today data 2026-08-14 20:45:01.209727: Processing 721 30-minute periods for power integration 2026-08-14 20:45:01.371815: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 20:45:01.371941: Car charging hold False, threshold 6.0kWh 2026-08-14 20:45:01.371982: Current data so far today: load 22.1kWh, import 28.9kWh, export 0.0kWh, PV 0kWh 2026-08-14 20:45:01.386802: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 20:45:01.387213: Standing charge is set to 49.98p 2026-08-14 20:45:01.435040: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 20:45:01.435128: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 20:45:01.435318: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 610.0 minutes 2026-08-14 20:45:01.435726: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 610.0 minutes 2026-08-14 20:45:01.440741: Loaded 95 datapoints of futurerate analysis 2026-08-14 20:45:01.569469: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13'] 2026-08-14 20:45:01.607352: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 20:45:01.607786: Import rates: min 13.77p, max 43.82p, average 26.09p 2026-08-14 20:45:01.641719: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 20:45:01.641821: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 20:45:01.642910: High export rate found rates in range 99p to -99p 2026-08-14 20:45:01.727669: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 20:45:01.727808: Car 0 charging is not planned as it is not plugged in 2026-08-14 20:45:01.739309: Battery level now 5.78kWh, -1hr ago 7.04kWh, at midnight 2.43kWh, battery value change in the last hour -14.85p, change today 39.64p, rate_forward 11.83p 2026-08-14 20:45:01.739659: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.4kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 20:45:01.788264: Today's energy total net 28.9kWh, import 28.9kWh, export 0.0kWh, cost 730.7p, import 680.72p, export 0.0p, carbon 0.0kg 2026-08-14 20:45:01.788388: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 20:45:01.866797: Using weighted-bucket historical load forecast over 14 days 2026-08-14 20:45:01.891594: Today's load divergence 142.45%, in-day adjustment 141.2%, damping 0.95x, yesterday 146.81% today 140.32% blend 13.54% 2026-08-14 20:45:01.891694: Today's predicted so far 11.67kWh with 0.0kWh car/iBoost excluded, 17.19kWh import ignored, and 11.67kWh forecast extra. 2026-08-14 20:45:01.891727: Today's actual load so far 22.15kWh with 0.0kWh car/iBoost excluded, and 17.19kWh import ignored. 2026-08-14 20:45:01.922189: Inverter 0: Type SK Sunsynk 2026-08-14 20:45:01.922272: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 20:45:01.922755: Reserve min: 7%, battery_min: 7% 2026-08-14 20:45:01.922829: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 20:45:01.923077: Inverter 0 SoC: 5.76kW 36%, current charge rate 5000W, current discharge rate 5250W, current battery power 350W, current battery voltage 51.2V, grid power -55W, load power 408W, PV Power 0W 2026-08-14 20:45:01.923213: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:45:01.923288: Inverter 0 scheduled charge enable is False 2026-08-14 20:45:01.923311: Inverter 0 charge windows currently [] 2026-08-14 20:45:01.923332: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 20:45:01.923423: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:45:01.923447: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:45:01.923474: Inverter 0 scheduled discharge enable is False 2026-08-14 20:45:01.923576: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:45:01.923606: Inverter 0 discharge windows currently [] 2026-08-14 20:45:01.923643: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:45:01.923659: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:45:01.923676: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:45:01.981915: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 20:45:01.982014: Plan was last updated on 2026-08-14 20:35:00+01:00 and is now 10.0 minutes old 2026-08-14 20:45:01.982217: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 20:45:01.982252: Best export window [ ] 2026-08-14 20:45:01.982911: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 20:45:01.985448: Load divergence over 8.0 hours mean 487.17W, min 279.0W, max 1164.0W, std dev 147.54W, divergence 15.14% 2026-08-14 20:45:02.001001: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 20:45:02.001153: LoadML is_calculating False 2026-08-14 20:45:02.001215: Creating pool of 12 processes to match your CPU count 2026-08-14 20:45:02.106290: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1358.68p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 47.48kWh, PV 0.0kWh 2026-08-14 20:45:02.238140: Battery has 4.08 hours left - now at 5.76kWh 2026-08-14 20:45:02.291234: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1389.46p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 48.69kWh, PV 0.0kWh 2026-08-14 20:45:02.381912: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1266.37p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 48.69kWh, PV 0.0kWh 2026-08-14 20:45:02.458865: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1241.94p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 47.48kWh, PV 0.0kWh 2026-08-14 20:45:02.459031: Saving plan best values to HA entities 2026-08-14 20:45:02.608941: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 20:45:02.613767: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 20:45:02.618597: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.34kWh, house 6.32kWh, export 0.0kWh, metric 1241.94p, metric10 1266.37p 2026-08-14 20:45:02.683349: Marginal costs baseline metric (no standing charge): 1141.9737 2026-08-14 20:45:02.973928: Marginal energy costs matrix computed: min=23.3 max=33.33 2026-08-14 20:45:03.048975: Rate array import [{'start': 1245, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 40.4p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1245, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 20:45:03.049746: - Your estimated bill for today is £7.31 and tomorrow is £4.42 2026-08-14 20:45:03.049793: - Import rates are very expensive (34.7p - 40.4p) for the next 1 and a quarter hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 20:45:03.049815: - The battery is currently at 36% and is in eco mode for the next 14 hours. 2026-08-14 20:45:03.049834: - For the next 48 hours there will be no solar generation. 2026-08-14 20:45:03.049851: - You will run out of battery in 4 hours. 2026-08-14 20:45:03.049868: - Your next charge slot will be in 14 hours where import rates will be cheap (15.5p). 2026-08-14 20:45:03.049889: 2026-08-14 20:45:03.109989: Plan calculation took 1.13 seconds 2026-08-14 20:45:03.113874: No high rate period found 2026-08-14 20:45:03.162101: Import threshold used for optimisation was 27.18p 2026-08-14 20:45:03.212901: Low import rate windows [0: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 1: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 2: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 3: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 4: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 5: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 6: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 7: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 8: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 9: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 10: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 11: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 12: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 13: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 14: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 15: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 16: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 17: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 18: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 19: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 20: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 21: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 22: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 23: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 24: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 25: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 26: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 27: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 28: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 29: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 30: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 31: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 32: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 33: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 34: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 35: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 36: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 37: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 38: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 39: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 40: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 41: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 42: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 43: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 44: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 45: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 46: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 47: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 48: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 49: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 50: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 51: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 52: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 53: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 54: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 55: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 56: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 57: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 58: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 59: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 60: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 61: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 62: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 63: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 64: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 65: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 66: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 67: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 68: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 69: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 70: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 71: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 72: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 73: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 74: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 75: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 76: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 77: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 78: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 79: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 80: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 81: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 82: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 83: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 84: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 85: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 86: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 87: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 88: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 89: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 90: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 91: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 92: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 93: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 94: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1] 2026-08-14 20:45:03.221335: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 36%, target 19% 2026-08-14 20:45:03.221469: Inverter 0 disabled charge window while waiting for schedule (now 08-14 20:45:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 20:45:03.221605: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:45:03.221956: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:45:03.222086: No export window planned 2026-08-14 20:45:03.222259: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 20:45:03.222311: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:45:03.222503: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:45:03.222747: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 20:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 20:45:03.222830: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 20:45:03.222909: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 20:45:03.223058: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:45:03.223102: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:45:03.223136: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:45:03.223180: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:45:03.223216: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:45:03.223273: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:45:03.223311: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:45:03.223433: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:45:03.223469: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:45:03.223507: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:45:03.223538: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:45:03.223568: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:45:03.223620: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:45:03.223652: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:45:03.223684: Inverter 0 count register writes 0 2026-08-14 20:45:03.239228: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 20:45:03.239402: Recompute is saving previous plan... 2026-08-14 20:45:03.242709: Best charge window [ 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0% ] 2026-08-14 20:45:03.242796: Best export window [ ] 2026-08-14 20:45:03.243651: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 20:45:03.246802: Load divergence over 8.0 hours mean 487.17W, min 279.0W, max 1164.0W, std dev 147.54W, divergence 15.14% 2026-08-14 20:45:03.265390: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 20:45:03.265530: LoadML is_calculating False 2026-08-14 20:45:03.265603: Creating pool of 12 processes to match your CPU count 2026-08-14 20:45:03.343565: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 20:45:03.345441: Optimise levels pass started at 2026-08-14 20:45:03 2026-08-14 20:45:03.345497: Optimise all windows, total charge 94 export 1 2026-08-14 20:45:04.430341: >> Region optimisation pass width 960 gives best_metric 1208.91p, best_cost 1218.73p, best_cycle 37.53kWh, best_import 28.87kWh 2026-08-14 20:45:04.874271: >> Region optimisation pass width 480 gives best_metric 1208.91p, best_cost 1218.73p, best_cycle 37.53kWh, best_import 28.87kWh 2026-08-14 20:45:05.370546: >> Region optimisation pass width 240 gives best_metric 1208.91p, best_cost 1218.73p, best_cycle 37.53kWh, best_import 28.87kWh 2026-08-14 20:45:06.460790: >> Region optimisation pass width 120 gives best_metric 1208.91p, best_cost 1218.73p, best_cycle 37.53kWh, best_import 28.87kWh 2026-08-14 20:45:06.461138: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 77 2026-08-14 20:45:06.461289: Optimise levels pass ended at 2026-08-14 20:45:06, duration 3.1 seconds tried 316 combinations 2026-08-14 20:45:06.461361: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1208.91p, best_keep 0kWh, best_cycle 37.53kWh, best_carbon 0kg, best_import 28.87kWh 2026-08-14 20:45:06.482665: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 20:45:11.867568: Tweak plan optimisation started metric 1116.89p, cost 1126.17p 2026-08-14 20:45:12.242984: Tweak optimisation finished metric 1116.89p, cost 1126.17p, metric_keep 0kWh, cycle 29.27kWh, carbon 0kg, import 22.64kWh, changed 8 window(s) 2026-08-14 20:45:12.261175: Swap charge optimisation started metric 1116.89p, cost 1126.17p, min_improvement_swap 0.1p 2026-08-14 20:45:19.009769: Swap charge optimisation finished metric 1116.89p, cost 1126.17p 2026-08-14 20:45:19.099192: Raw charge windows [ 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100% ] reserve 1.12 2026-08-14 20:45:19.099795: Unclipped charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 21:00:00 @ 32.23p 100% ] reserve 1.12 2026-08-14 20:45:19.100118: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 21:00:00 @ 32.23p 100% ] reserve 1.12 2026-08-14 20:45:19.100363: Filtered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:30:00 @ 14.59p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 21:00:00 @ 32.23p 100% ] reserve 1.12 2026-08-14 20:45:19.132159: Previous plan best metric is 1116.89 (cost 1126.17) and new plan best metric is 1116.89 (cost 1126.17) 2026-08-14 20:45:19.132329: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 20:45:19.132500: Plan valid is now true after recompute was False 2026-08-14 20:45:19.157374: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1355.76p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 47.29kWh, PV 0.0kWh 2026-08-14 20:45:19.254306: Battery has 4.08 hours left - now at 5.76kWh 2026-08-14 20:45:19.293748: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1386.4p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 48.49kWh, PV 0.0kWh 2026-08-14 20:45:19.369309: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1252.58p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 48.49kWh, PV 0.0kWh 2026-08-14 20:45:19.442354: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1226.14p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 47.29kWh, PV 0.0kWh 2026-08-14 20:45:19.442447: Saving plan best values to HA entities 2026-08-14 20:45:19.576684: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 20:45:19.582058: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 20:45:19.587118: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.32kWh, house 6.32kWh, export 0.0kWh, metric 1226.14p, metric10 1252.58p 2026-08-14 20:45:19.656748: Marginal costs baseline metric (no standing charge): 1126.1725 2026-08-14 20:45:19.920433: Marginal energy costs matrix computed: min=23.3 max=33.33 2026-08-14 20:45:19.989386: Rate array import [{'start': 1245, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 40.4p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1245, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 20:45:19.990056: - Your estimated bill for today is £7.31 and tomorrow is £4.42 2026-08-14 20:45:19.990101: - Import rates are very expensive (34.7p - 40.4p) for the next 1 and a quarter hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 20:45:19.990121: - The battery is currently at 36% and is in eco mode for the next 14 hours. 2026-08-14 20:45:19.990136: - For the next 48 hours there will be no solar generation. 2026-08-14 20:45:19.990150: - You will run out of battery in 4 hours. 2026-08-14 20:45:19.990165: - Your next charge slot will be in 14 hours where import rates will be cheap (15.5p). 2026-08-14 20:45:19.990182: 2026-08-14 20:45:20.048391: Plan calculation took 16.81 seconds 2026-08-14 20:45:20.048789: Inverter 0: Type SK Sunsynk 2026-08-14 20:45:20.048838: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 20:45:20.049566: Reserve min: 7%, battery_min: 7% 2026-08-14 20:45:20.049684: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 20:45:20.050092: Inverter 0 SoC: 5.76kW 36%, current charge rate 5000W, current discharge rate 5250W, current battery power 350W, current battery voltage 51.2V, grid power -55W, load power 408W, PV Power 0W 2026-08-14 20:45:20.050358: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:45:20.050471: Inverter 0 scheduled charge enable is False 2026-08-14 20:45:20.050511: Inverter 0 charge windows currently [] 2026-08-14 20:45:20.050541: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 20:45:20.050668: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:45:20.050708: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:45:20.050745: Inverter 0 scheduled discharge enable is False 2026-08-14 20:45:20.050873: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:45:20.050911: Inverter 0 discharge windows currently [] 2026-08-14 20:45:20.050934: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:45:20.050955: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:45:20.050992: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:45:20.108716: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 36%, target 19% 2026-08-14 20:45:20.108910: Inverter 0 disabled charge window while waiting for schedule (now 08-14 20:45:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 20:45:20.109064: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:45:20.109344: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:45:20.109471: No export window planned 2026-08-14 20:45:20.109715: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 20:45:20.109771: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:45:20.110104: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:45:20.110390: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 20:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 20:45:20.110461: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 20:45:20.110557: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 20:45:20.110688: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:45:20.110728: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:45:20.110756: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:45:20.110780: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:45:20.110807: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:45:20.110833: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:45:20.110857: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:45:20.110915: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:45:20.110965: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:45:20.111025: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:45:20.111074: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:45:20.111136: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:45:20.111180: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:45:20.111239: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:45:20.111281: Inverter 0 count register writes 0 2026-08-14 20:45:20.136073: Total inverter register writes now 815 2026-08-14 20:45:20.165493: Info: Completed run status Demand 2026-08-14 20:45:20.171401: Info: record_status Demand 2026-08-14 20:45:20.177191: Saved current settings to /config/predbat_config.json 2026-08-14 20:45:20.177453: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 20:45:57.275685: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:45:57.275942: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:45:57.275986: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:45:57.276160: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:45:57.276217: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:45:57.276238: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:45:57.276255: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:48:11.518420: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:48:11.518683: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:48:11.518733: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:48:11.518917: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:48:11.518956: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:48:11.518988: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:48:11.519006: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:50:00.728225: --------------- PredBat - update at 2026-08-14 20:50:00+01:00 with clock skew 0 minutes, minutes now 1250 2026-08-14 20:50:00.729043: Saved current settings to /config/predbat_config.json 2026-08-14 20:50:00.729174: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 55.0 minutes 2026-08-14 20:50:00.729252: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 20:50:00.729364: Autoupdate: Currently up to date 2026-08-14 20:50:00.748991: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 20:50:00.749119: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 20:50:00.749286: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 20:50:00.749850: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 20:50:00.749975: Predbat mode is set to Control charge & discharge 2026-08-14 20:50:00.946571: Found 21602 load_today datapoints going back 28 days 2026-08-14 20:50:00.946733: Using load_power data to fill gaps in load_today data 2026-08-14 20:50:01.766555: Processing 721 30-minute periods for power integration 2026-08-14 20:50:01.970524: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 20:50:01.970682: Car charging hold False, threshold 6.0kWh 2026-08-14 20:50:01.970732: Current data so far today: load 22.15kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 20:50:01.989470: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 20:50:01.990336: Standing charge is set to 49.98p 2026-08-14 20:50:02.039786: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 20:50:02.039907: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 20:50:02.040176: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 615.0 minutes 2026-08-14 20:50:02.040644: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 615.0 minutes 2026-08-14 20:50:02.046890: Loaded 95 datapoints of futurerate analysis 2026-08-14 20:50:02.198372: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13'] 2026-08-14 20:50:02.248348: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 20:50:02.248924: Import rates: min 13.77p, max 43.82p, average 26.07p 2026-08-14 20:50:02.293434: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 20:50:02.294086: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 20:50:02.295440: High export rate found rates in range 99p to -99p 2026-08-14 20:50:02.400771: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 20:50:02.400902: Car 0 charging is not planned as it is not plugged in 2026-08-14 20:50:02.414760: Battery level now 5.76kWh, -1hr ago 7.04kWh, at midnight 2.43kWh, battery value change in the last hour -15.14p, change today 39.36p, rate_forward 11.83p 2026-08-14 20:50:02.415134: Last hour: net energy 0.05kWh, import 0.05kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 2.02p, import 2.02p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 20:50:02.471471: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.83p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 20:50:02.471625: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 20:50:02.569813: Using weighted-bucket historical load forecast over 14 days 2026-08-14 20:50:02.601793: Today's load divergence 142.35%, in-day adjustment 141.1%, damping 0.95x, yesterday 146.81% today 140.23% blend 13.19% 2026-08-14 20:50:02.601876: Today's predicted so far 11.7kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 11.7kWh forecast extra. 2026-08-14 20:50:02.601908: Today's actual load so far 22.14kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 20:50:02.633200: Inverter 0: Type SK Sunsynk 2026-08-14 20:50:02.633309: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 20:50:02.633887: Reserve min: 7%, battery_min: 7% 2026-08-14 20:50:02.633966: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 20:50:02.634248: Inverter 0 SoC: 5.76kW 36%, current charge rate 5000W, current discharge rate 5250W, current battery power 444W, current battery voltage 51.2V, grid power -53W, load power 499W, PV Power 0W 2026-08-14 20:50:02.634423: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:50:02.634538: Inverter 0 scheduled charge enable is False 2026-08-14 20:50:02.634572: Inverter 0 charge windows currently [] 2026-08-14 20:50:02.634598: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 20:50:02.634747: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:50:02.634789: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:50:02.634824: Inverter 0 scheduled discharge enable is False 2026-08-14 20:50:02.634952: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:50:02.634989: Inverter 0 discharge windows currently [] 2026-08-14 20:50:02.635011: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:50:02.635030: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:50:02.635047: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:50:02.711213: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 20:50:02.711375: Plan was last updated on 2026-08-14 20:45:00+01:00 and is now 5.0 minutes old 2026-08-14 20:50:02.711681: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 20:50:02.711728: Best export window [ ] 2026-08-14 20:50:02.712565: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 20:50:02.716091: Load divergence over 8.0 hours mean 488.71W, min 342.0W, max 1182.6W, std dev 133.74W, divergence 13.68% 2026-08-14 20:50:02.737321: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 20:50:02.737445: LoadML is_calculating False 2026-08-14 20:50:02.737509: Creating pool of 12 processes to match your CPU count 2026-08-14 20:50:02.868155: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1360.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 47.39kWh, PV 0.0kWh 2026-08-14 20:50:02.992223: Battery has 4.08 hours left - now at 5.76kWh 2026-08-14 20:50:03.035577: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1390.71p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 48.59kWh, PV 0.0kWh 2026-08-14 20:50:03.104752: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1262.17p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 48.59kWh, PV 0.0kWh 2026-08-14 20:50:03.185600: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1236.82p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 47.39kWh, PV 0.0kWh 2026-08-14 20:50:03.185711: Saving plan best values to HA entities 2026-08-14 20:50:03.343538: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 20:50:03.349156: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 20:50:03.354460: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.83kWh, house 6.27kWh, export 0.0kWh, metric 1236.82p, metric10 1262.17p 2026-08-14 20:50:03.432967: Marginal costs baseline metric (no standing charge): 1136.8511 2026-08-14 20:50:03.717339: Marginal energy costs matrix computed: min=23.4 max=33.03 2026-08-14 20:50:03.802342: Rate array import [{'start': 1250, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 40.4p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1250, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 20:50:03.803152: - Your estimated bill for today is £7.35 and tomorrow is £4.40 2026-08-14 20:50:03.803200: - Import rates are very expensive (34.7p - 40.4p) for the next 1 and a quarter hours and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 20:50:03.803222: - The battery is currently at 36% and is in eco mode for the next 14 hours. 2026-08-14 20:50:03.803241: - For the next 48 hours there will be no solar generation. 2026-08-14 20:50:03.803258: - You will run out of battery in 4 hours. 2026-08-14 20:50:03.803276: - Your next charge slot will be in 14 hours where import rates will be cheap (15.5p). 2026-08-14 20:50:03.803293: 2026-08-14 20:50:03.872916: Plan calculation took 1.16 seconds 2026-08-14 20:50:03.876610: No high rate period found 2026-08-14 20:50:03.933683: Import threshold used for optimisation was 17.0p 2026-08-14 20:50:03.988268: Low import rate windows [0: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 1: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 2: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 3: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 4: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 5: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 6: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 7: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 8: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 9: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 10: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 11: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 12: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 13: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 14: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 15: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 16: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 17: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 18: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 19: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 20: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 21: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 22: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 23: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 24: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 25: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 26: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 27: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 28: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 29: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 30: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 31: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 32: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 33: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 34: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 35: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 36: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 37: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 38: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 39: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 40: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 41: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 42: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 43: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 44: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 45: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 46: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 47: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 48: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 49: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 50: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 51: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 52: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 53: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 54: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 55: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 56: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 57: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 58: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 59: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 60: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 61: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 62: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 63: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 64: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 65: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 66: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 67: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 68: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 69: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 70: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 71: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 72: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 73: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 74: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 75: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 76: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 77: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 78: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 79: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 80: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 81: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 82: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 83: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 84: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 85: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 86: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 87: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 88: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 89: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 90: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 91: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 92: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 93: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 94: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1] 2026-08-14 20:50:03.996343: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 36%, target 19% 2026-08-14 20:50:03.996493: Inverter 0 disabled charge window while waiting for schedule (now 08-14 20:50:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 20:50:03.996723: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:50:03.997359: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:50:03.997478: No export window planned 2026-08-14 20:50:03.997603: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 20:50:03.997640: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:50:03.997836: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:50:03.998025: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 20:50:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 20:50:03.998088: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 20:50:03.998158: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 20:50:03.998247: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:50:03.998287: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:50:03.998314: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:50:03.998339: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:50:03.998363: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:50:03.998392: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:50:03.998417: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:50:03.998513: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:50:03.998550: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:50:03.998581: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:50:03.998605: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:50:03.998634: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:50:03.998673: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:50:03.998699: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:50:03.998719: Inverter 0 count register writes 0 2026-08-14 20:50:04.015097: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 20:50:04.020839: Total inverter register writes now 815 2026-08-14 20:50:04.051533: Info: Completed run status Demand 2026-08-14 20:50:04.057316: Info: record_status Demand 2026-08-14 20:50:04.063448: Saved current settings to /config/predbat_config.json 2026-08-14 20:50:04.063761: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 20:50:14.830224: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 20:50:15.908988: Processing 1345 30-minute periods for power integration 2026-08-14 20:50:16.022755: ML Component: Car charging hold False, car energy reported load False 2026-08-14 20:50:16.127751: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 20:50:16.243327: ML Temperature data points: 49151 2026-08-14 20:50:16.540473: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 20:50:16.584268: ML Component: Data fetch completed, load data age 56.0 days, 16227 data points 2026-08-14 20:50:16.584490: ML Component: No training needed, model age is 0.65 hours 2026-08-14 20:50:16.584588: ML Component: Generating predictions load data age 56.0 days, 16227 data points 2026-08-14 20:50:16.722381: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0537 max_dow {0: 0.10336562496256083, 1: 0.1091281248660758, 2: 0.11737499983031302, 3: 0.11972187416721135, 4: 0.17116562535744162, 5: 0.10228437502831222, 6: 0.10759687461592257} 2026-08-14 20:50:17.212491: ML Component: Generated 576 predictions (total 42.53 kWh over 48h) 2026-08-14 20:50:17.243870: ML Component: Prediction cycle completed 2026-08-14 20:50:17.357117: ML Component: Saved 16227 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 20:50:41.751450: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:50:41.751648: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:50:41.751699: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:50:41.751844: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:50:41.751911: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:50:41.751929: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:50:41.751944: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:52:41.972649: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:52:41.973041: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:52:41.973129: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:52:41.973338: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:52:41.973392: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:52:41.973432: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:52:41.973466: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:54:42.226987: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:54:42.227229: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:54:42.227273: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:54:42.227460: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:54:42.227535: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:54:42.227567: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:54:42.227584: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:55:00.334402: --------------- PredBat - update at 2026-08-14 20:55:00+01:00 with clock skew 0 minutes, minutes now 1255 2026-08-14 20:55:00.335209: Saved current settings to /config/predbat_config.json 2026-08-14 20:55:00.335388: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 60.0 minutes 2026-08-14 20:55:00.335535: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 20:55:00.335638: Autoupdate: Currently up to date 2026-08-14 20:55:00.364252: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 20:55:00.364449: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 20:55:00.364778: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 20:55:00.365680: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 20:55:00.365920: Predbat mode is set to Control charge & discharge 2026-08-14 20:55:00.565874: Found 21602 load_today datapoints going back 28 days 2026-08-14 20:55:00.566030: Using load_power data to fill gaps in load_today data 2026-08-14 20:55:01.464761: Processing 721 30-minute periods for power integration 2026-08-14 20:55:01.678890: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 20:55:01.679040: Car charging hold False, threshold 6.0kWh 2026-08-14 20:55:01.679107: Current data so far today: load 22.2kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 20:55:01.698127: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 20:55:01.698660: Standing charge is set to 49.98p 2026-08-14 20:55:01.745118: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 20:55:01.745218: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 20:55:01.745397: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 620.0 minutes 2026-08-14 20:55:01.745757: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 620.0 minutes 2026-08-14 20:55:01.750829: Loaded 95 datapoints of futurerate analysis 2026-08-14 20:55:01.879631: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13'] 2026-08-14 20:55:01.918227: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 20:55:01.918528: Import rates: min 13.77p, max 43.82p, average 26.06p 2026-08-14 20:55:01.954524: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 20:55:01.954646: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 20:55:01.955892: High export rate found rates in range 99p to -99p 2026-08-14 20:55:02.042737: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 20:55:02.042876: Car 0 charging is not planned as it is not plugged in 2026-08-14 20:55:02.055388: Battery level now 5.76kWh, -1hr ago 6.8kWh, at midnight 2.43kWh, battery value change in the last hour -12.3p, change today 39.36p, rate_forward 11.83p 2026-08-14 20:55:02.055758: Last hour: net energy 0.05kWh, import 0.05kWh, export 0.0kWh, car 0kWh, load 1.2kWh, net cost 1.82p, import 1.82p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 20:55:02.115913: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.83p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 20:55:02.116142: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 20:55:02.207128: Using weighted-bucket historical load forecast over 14 days 2026-08-14 20:55:02.232192: Today's load divergence 142.27%, in-day adjustment 141.01%, damping 0.95x, yesterday 146.81% today 140.15% blend 12.85% 2026-08-14 20:55:02.232282: Today's predicted so far 11.73kWh with 0.0kWh car/iBoost excluded, 17.38kWh import ignored, and 11.73kWh forecast extra. 2026-08-14 20:55:02.232309: Today's actual load so far 22.14kWh with 0.0kWh car/iBoost excluded, and 17.38kWh import ignored. 2026-08-14 20:55:02.272152: Inverter 0: Type SK Sunsynk 2026-08-14 20:55:02.272252: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 20:55:02.272943: Reserve min: 7%, battery_min: 7% 2026-08-14 20:55:02.273102: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 20:55:02.273413: Inverter 0 SoC: 5.7kW 36%, current charge rate 5000W, current discharge rate 5250W, current battery power 440W, current battery voltage 51.2V, grid power -55W, load power 499W, PV Power 0W 2026-08-14 20:55:02.273660: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:55:02.273836: Inverter 0 scheduled charge enable is False 2026-08-14 20:55:02.273898: Inverter 0 charge windows currently [] 2026-08-14 20:55:02.273950: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 20:55:02.274165: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:55:02.274215: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:55:02.274256: Inverter 0 scheduled discharge enable is False 2026-08-14 20:55:02.274412: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:55:02.274485: Inverter 0 discharge windows currently [] 2026-08-14 20:55:02.274513: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:55:02.274533: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:55:02.274551: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:55:02.338098: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 20:55:02.338221: Plan was last updated on 2026-08-14 20:45:00+01:00 and is now 10.0 minutes old 2026-08-14 20:55:02.338427: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 20:55:02.338462: Best export window [ ] 2026-08-14 20:55:02.339118: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 20:55:02.341689: Load divergence over 8.0 hours mean 490.34W, min 376.2W, max 1057.8W, std dev 120.61W, divergence 12.3% 2026-08-14 20:55:02.357212: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 20:55:02.357300: LoadML is_calculating False 2026-08-14 20:55:02.357354: Creating pool of 12 processes to match your CPU count 2026-08-14 20:55:02.470182: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1361.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 47.47kWh, PV 0.0kWh 2026-08-14 20:55:02.620320: Battery has 4.0 hours left - now at 5.7kWh 2026-08-14 20:55:02.676332: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1392.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 48.68kWh, PV 0.0kWh 2026-08-14 20:55:02.770691: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1269.08p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 48.68kWh, PV 0.0kWh 2026-08-14 20:55:02.851987: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1244.79p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 47.47kWh, PV 0.0kWh 2026-08-14 20:55:02.852095: Saving plan best values to HA entities 2026-08-14 20:55:03.003255: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 20:55:03.009851: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 20:55:03.015979: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.35kWh, house 6.26kWh, export 0.0kWh, metric 1244.79p, metric10 1269.08p 2026-08-14 20:55:03.095586: Marginal costs baseline metric (no standing charge): 1144.8214 2026-08-14 20:55:03.331680: Marginal energy costs matrix computed: min=23.5 max=32.78 2026-08-14 20:55:03.416154: Rate array import [{'start': 1255, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 40.4p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1255, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 20:55:03.417006: - Your estimated bill for today is £7.35 and tomorrow is £4.40 2026-08-14 20:55:03.417080: - Import rates are very expensive (34.7p - 40.4p) for the next 1 hour and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 20:55:03.417120: - The battery is currently at 36% and is in eco mode for the next 14 hours. 2026-08-14 20:55:03.417139: - For the next 48 hours there will be no solar generation. 2026-08-14 20:55:03.417156: - You will run out of battery in 4 hours. 2026-08-14 20:55:03.417174: - Your next charge slot will be in 14 hours where import rates will be cheap (15.5p). 2026-08-14 20:55:03.417190: 2026-08-14 20:55:03.482319: Plan calculation took 1.14 seconds 2026-08-14 20:55:03.486175: No high rate period found 2026-08-14 20:55:03.538474: Import threshold used for optimisation was 17.0p 2026-08-14 20:55:03.607640: Low import rate windows [0: 08-14 20:30:00 - 08-14 21:00:00 @ 40.38, 1: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 2: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 3: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 4: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 5: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 6: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 7: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 8: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 9: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 10: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 11: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 12: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 13: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 14: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 15: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 16: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 17: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 18: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 19: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 20: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 21: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 22: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 23: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 24: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 25: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 26: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 27: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 28: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 29: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 30: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 31: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 32: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 33: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 34: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 35: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 36: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 37: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 38: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 39: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 40: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 41: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 42: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 43: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 44: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 45: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 46: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 47: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 48: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 49: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 50: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 51: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 52: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 53: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 54: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 55: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 56: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 57: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 58: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 59: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 60: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 61: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 62: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 63: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 64: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 65: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 66: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 67: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 68: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 69: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 70: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 71: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 72: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 73: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 74: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 75: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 76: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 77: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 78: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 79: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 80: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 81: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 82: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 83: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 84: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 85: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 86: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 87: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 88: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 89: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 90: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 91: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 92: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 93: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 94: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1] 2026-08-14 20:55:03.616313: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 36%, target 19% 2026-08-14 20:55:03.616458: Inverter 0 disabled charge window while waiting for schedule (now 08-14 20:55:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 20:55:03.616589: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:55:03.617031: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:55:03.617145: No export window planned 2026-08-14 20:55:03.617261: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 20:55:03.617298: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:55:03.617440: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:55:03.617670: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 20:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 20:55:03.617765: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 20:55:03.617831: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 20:55:03.617920: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:55:03.617961: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:55:03.617989: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:55:03.618014: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:55:03.618042: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:55:03.618066: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:55:03.618090: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:55:03.618151: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:55:03.618208: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:55:03.618235: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:55:03.618259: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:55:03.618283: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:55:03.618308: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:55:03.618331: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:55:03.618357: Inverter 0 count register writes 0 2026-08-14 20:55:03.636858: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 20:55:03.637076: Recompute is saving previous plan... 2026-08-14 20:55:03.640177: Best charge window [ 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0% ] 2026-08-14 20:55:03.640255: Best export window [ ] 2026-08-14 20:55:03.641142: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 20:55:03.644244: Load divergence over 8.0 hours mean 490.34W, min 376.2W, max 1057.8W, std dev 120.61W, divergence 12.3% 2026-08-14 20:55:03.661587: Calculating data from yesterday for savings calculation 2026-08-14 20:55:03.674358: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 20:55:03.718282: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 20:55:03.730555: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 870.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 20:55:03.746505: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 20:55:03.782471: Yesterday: Predbat disabled was £8.57 (adjusted £8.43) vs £6.21 (adjusted £5.91), saving £2.35 (adjusted £2.52) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 13.25kWh 2026-08-14 20:55:03.856839: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 901.12p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 20:55:03.857004: Yesterday: No Battery/PV system cost predicted was £9.01 (adjusted £9.01) vs £6.21 (adjusted £5.91), saving £2.8 (adjusted £3.1) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 20:55:03.866901: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 20:55:03.866997: LoadML is_calculating False 2026-08-14 20:55:03.867057: Creating pool of 12 processes to match your CPU count 2026-08-14 20:55:03.952425: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 20:55:03.954644: Optimise levels pass started at 2026-08-14 20:55:03 2026-08-14 20:55:03.954740: Optimise all windows, total charge 94 export 1 2026-08-14 20:55:05.100393: >> Region optimisation pass width 960 gives best_metric 1213.42p, best_cost 1221.57p, best_cycle 37.61kWh, best_import 28.82kWh 2026-08-14 20:55:05.544588: >> Region optimisation pass width 480 gives best_metric 1213.42p, best_cost 1221.57p, best_cycle 37.61kWh, best_import 28.82kWh 2026-08-14 20:55:06.057613: >> Region optimisation pass width 240 gives best_metric 1213.42p, best_cost 1221.57p, best_cycle 37.61kWh, best_import 28.82kWh 2026-08-14 20:55:07.138423: >> Region optimisation pass width 120 gives best_metric 1213.42p, best_cost 1221.57p, best_cycle 37.61kWh, best_import 28.82kWh 2026-08-14 20:55:07.138762: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 77 2026-08-14 20:55:07.138859: Optimise levels pass ended at 2026-08-14 20:55:07, duration 3.2 seconds tried 316 combinations 2026-08-14 20:55:07.138969: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1213.42p, best_keep 0kWh, best_cycle 37.61kWh, best_carbon 0kg, best_import 28.82kWh 2026-08-14 20:55:07.158447: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 20:55:12.302958: Tweak plan optimisation started metric 1119.7p, cost 1128.96p 2026-08-14 20:55:12.580391: Tweak optimisation finished metric 1119.7p, cost 1128.96p, metric_keep 0kWh, cycle 29.21kWh, carbon 0kg, import 22.59kWh, changed 8 window(s) 2026-08-14 20:55:12.598788: Swap charge optimisation started metric 1119.7p, cost 1128.96p, min_improvement_swap 0.1p 2026-08-14 20:55:18.940588: Swap charge optimisation finished metric 1119.7p, cost 1128.96p 2026-08-14 20:55:19.051361: Pruned 1 dead plan slot(s) in 11 trial(s), nominal metric 1115.71p -> 1115.71p, plan now metric 1119.76p, cost 1128.96p, cycle 29.21kWh, import 22.59kWh 2026-08-14 20:55:19.061630: Raw charge windows [ 14-08 20:30:00 - 14-08 21:00:00 @ 40.38p 0%, 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100% ] reserve 1.12 2026-08-14 20:55:19.062200: Unclipped charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 21:00:00 @ 32.23p 100% ] reserve 1.12 2026-08-14 20:55:19.062505: Unfiltered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 21:00:00 @ 32.23p 100% ] reserve 1.12 2026-08-14 20:55:19.062756: Filtered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:30:00 @ 14.59p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 21:00:00 @ 32.23p 100% ] reserve 1.12 2026-08-14 20:55:19.097988: Previous plan best metric is 1119.8 (cost 1129.1) and new plan best metric is 1119.7 (cost 1128.96) 2026-08-14 20:55:19.098209: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 20:55:19.098359: Plan valid is now true after recompute was False 2026-08-14 20:55:19.124033: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1358.78p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 47.29kWh, PV 0.0kWh 2026-08-14 20:55:19.223823: Battery has 4.0 hours left - now at 5.7kWh 2026-08-14 20:55:19.270034: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1389.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 48.48kWh, PV 0.0kWh 2026-08-14 20:55:19.347929: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1255.37p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 48.48kWh, PV 0.0kWh 2026-08-14 20:55:19.425890: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1229.07p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 47.29kWh, PV 0.0kWh 2026-08-14 20:55:19.425978: Saving plan best values to HA entities 2026-08-14 20:55:19.584074: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 20:55:19.589193: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 20:55:19.593941: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.33kWh, house 6.26kWh, export 0.0kWh, metric 1229.07p, metric10 1255.37p 2026-08-14 20:55:19.662309: Marginal costs baseline metric (no standing charge): 1129.1006 2026-08-14 20:55:19.942573: Marginal energy costs matrix computed: min=23.5 max=32.78 2026-08-14 20:55:20.022204: Rate array import [{'start': 1255, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 40.4p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1255, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 20:55:20.023057: - Your estimated bill for today is £7.35 and tomorrow is £4.40 2026-08-14 20:55:20.023126: - Import rates are very expensive (34.7p - 40.4p) for the next 1 hour and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 20:55:20.023169: - The battery is currently at 36% and is in eco mode for the next 14 hours. 2026-08-14 20:55:20.023195: - For the next 48 hours there will be no solar generation. 2026-08-14 20:55:20.023221: - You will run out of battery in 4 hours. 2026-08-14 20:55:20.023264: - Your next charge slot will be in 14 hours where import rates will be cheap (15.5p). 2026-08-14 20:55:20.023307: 2026-08-14 20:55:20.086676: Plan calculation took 16.45 seconds 2026-08-14 20:55:20.087042: Inverter 0: Type SK Sunsynk 2026-08-14 20:55:20.087090: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 20:55:20.087773: Reserve min: 7%, battery_min: 7% 2026-08-14 20:55:20.087863: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 20:55:20.088214: Inverter 0 SoC: 5.7kW 36%, current charge rate 5000W, current discharge rate 5250W, current battery power 440W, current battery voltage 51.2V, grid power -55W, load power 499W, PV Power 0W 2026-08-14 20:55:20.088454: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:55:20.088564: Inverter 0 scheduled charge enable is False 2026-08-14 20:55:20.088599: Inverter 0 charge windows currently [] 2026-08-14 20:55:20.088628: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 20:55:20.088767: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:55:20.088808: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:55:20.088844: Inverter 0 scheduled discharge enable is False 2026-08-14 20:55:20.089050: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:55:20.089100: Inverter 0 discharge windows currently [] 2026-08-14 20:55:20.089123: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:55:20.089142: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:55:20.089163: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:55:20.142619: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 36%, target 19% 2026-08-14 20:55:20.142788: Inverter 0 disabled charge window while waiting for schedule (now 08-14 20:55:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 20:55:20.142875: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:55:20.143099: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:55:20.143210: No export window planned 2026-08-14 20:55:20.143344: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 20:55:20.143378: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 20:55:20.143515: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 20:55:20.143677: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 20:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 20:55:20.143780: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 20:55:20.143857: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 20:55:20.143959: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:55:20.144018: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:55:20.144046: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:55:20.144075: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:55:20.144116: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:55:20.144143: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:55:20.144191: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 20:55:20.144254: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:55:20.144309: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:55:20.144357: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:55:20.144385: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:55:20.144409: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:55:20.144446: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:55:20.144485: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 20:55:20.144506: Inverter 0 count register writes 0 2026-08-14 20:55:20.165056: Total inverter register writes now 815 2026-08-14 20:55:20.198842: Info: Completed run status Demand 2026-08-14 20:55:20.205608: Info: record_status Demand 2026-08-14 20:55:20.214482: Saved current settings to /config/predbat_config.json 2026-08-14 20:55:20.214901: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 20:55:57.319593: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:55:57.320011: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:55:57.320074: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:55:57.320230: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:55:57.320277: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:55:57.320298: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:55:57.320315: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 20:56:56.217388: TemperatureAPI: Using coordinates latitude 53.4, longitude -2.2 2026-08-14 20:56:56.358542: TemperatureAPI: Successfully fetched temperature data from Open-Meteo API 2026-08-14 20:57:33.944388: Info: HAHistory: Pruning history data started. 2026-08-14 20:57:33.946749: Info: HAHistory: Pruning history data completed. 2026-08-14 20:58:11.554836: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 20:58:11.555046: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 20:58:11.555081: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 20:58:11.555191: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 20:58:11.555225: Note: Inverter does not support discharge freeze - disabled 2026-08-14 20:58:11.555242: Note: Inverter does not support charge freeze - disabled 2026-08-14 20:58:11.555256: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:00:00.759647: --------------- PredBat - update at 2026-08-14 21:00:00+01:00 with clock skew 0 minutes, minutes now 1260 2026-08-14 21:00:00.760486: Saved current settings to /config/predbat_config.json 2026-08-14 21:00:00.760628: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 65.0 minutes 2026-08-14 21:00:00.760710: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 21:00:00.760825: Autoupdate: Currently up to date 2026-08-14 21:00:00.782419: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 21:00:00.782535: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 21:00:00.782783: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 21:00:00.783420: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 21:00:00.783545: Predbat mode is set to Control charge & discharge 2026-08-14 21:00:00.989473: Found 21602 load_today datapoints going back 27 days 2026-08-14 21:00:00.989632: Using load_power data to fill gaps in load_today data 2026-08-14 21:00:01.801725: Processing 721 30-minute periods for power integration 2026-08-14 21:00:01.992798: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 21:00:01.992934: Car charging hold False, threshold 6.0kWh 2026-08-14 21:00:01.993009: Current data so far today: load 22.25kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 21:00:02.009501: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 21:00:02.010114: Standing charge is set to 49.98p 2026-08-14 21:00:02.063163: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 21:00:02.063278: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 21:00:02.063514: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 625.0 minutes 2026-08-14 21:00:02.063977: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 625.0 minutes 2026-08-14 21:00:02.070653: Loaded 95 datapoints of futurerate analysis 2026-08-14 21:00:02.270835: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41'] 2026-08-14 21:00:02.323236: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 21:00:02.323768: Import rates: min 13.77p, max 43.82p, average 26.04p 2026-08-14 21:00:02.368521: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 21:00:02.368668: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 21:00:02.370194: High export rate found rates in range 99p to -99p 2026-08-14 21:00:02.480061: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 21:00:02.480275: Car 0 charging is not planned as it is not plugged in 2026-08-14 21:00:02.497834: Battery level now 5.7kWh, -1hr ago 6.65kWh, at midnight 2.43kWh, battery value change in the last hour -11.26p, change today 38.6p, rate_forward 11.83p 2026-08-14 21:00:02.498402: Last hour: net energy 0.04kWh, import 0.04kWh, export 0.0kWh, car 0kWh, load 1.1kWh, net cost 1.64p, import 1.64p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 21:00:02.578642: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 21:00:02.578822: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 21:00:02.680296: Using weighted-bucket historical load forecast over 14 days 2026-08-14 21:00:02.711907: Today's load divergence 142.44%, in-day adjustment 141.13%, damping 0.95x, yesterday 146.81% today 140.32% blend 12.5% 2026-08-14 21:00:02.712011: Today's predicted so far 11.83kWh with 0.0kWh car/iBoost excluded, 17.37kWh import ignored, and 11.83kWh forecast extra. 2026-08-14 21:00:02.712046: Today's actual load so far 22.31kWh with 0.0kWh car/iBoost excluded, and 17.37kWh import ignored. 2026-08-14 21:00:02.745245: Inverter 0: Type SK Sunsynk 2026-08-14 21:00:02.745341: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 21:00:02.745913: Reserve min: 7%, battery_min: 7% 2026-08-14 21:00:02.745994: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 21:00:02.746259: Inverter 0 SoC: 5.7kW 36%, current charge rate 5000W, current discharge rate 5250W, current battery power 480W, current battery voltage 51.2V, grid power -55W, load power 533W, PV Power 0W 2026-08-14 21:00:02.746418: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:00:02.746508: Inverter 0 scheduled charge enable is False 2026-08-14 21:00:02.746536: Inverter 0 charge windows currently [] 2026-08-14 21:00:02.746562: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 21:00:02.746679: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:00:02.746715: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:00:02.746765: Inverter 0 scheduled discharge enable is False 2026-08-14 21:00:02.746898: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:00:02.746935: Inverter 0 discharge windows currently [] 2026-08-14 21:00:02.746958: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:00:02.746976: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:00:02.746994: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:00:02.814022: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 21:00:02.814153: Plan was last updated on 2026-08-14 20:55:00+01:00 and is now 5.0 minutes old 2026-08-14 21:00:02.814475: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 21:00:02.814536: Best export window [ ] 2026-08-14 21:00:02.815452: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 21:00:02.818708: Load divergence over 8.0 hours mean 493.46W, min 377.4W, max 1138.2W, std dev 122.33W, divergence 12.4% 2026-08-14 21:00:02.838516: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 21:00:02.838633: LoadML is_calculating False 2026-08-14 21:00:02.838773: Creating pool of 12 processes to match your CPU count 2026-08-14 21:00:02.960514: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1357.6p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 47.33kWh, PV 0.0kWh 2026-08-14 21:00:03.106585: Battery has 4.0 hours left - now at 5.7kWh 2026-08-14 21:00:03.157528: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1388.01p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 48.52kWh, PV 0.0kWh 2026-08-14 21:00:03.240338: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1259.45p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 48.52kWh, PV 0.0kWh 2026-08-14 21:00:03.337116: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1234.3p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 47.33kWh, PV 0.0kWh 2026-08-14 21:00:03.337219: Saving plan best values to HA entities 2026-08-14 21:00:03.530516: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 21:00:03.536639: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 21:00:03.542790: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.83kWh, house 6.17kWh, export 0.0kWh, metric 1234.3p, metric10 1259.45p 2026-08-14 21:00:03.638326: Marginal costs baseline metric (no standing charge): 1134.3347 2026-08-14 21:00:03.932861: Marginal energy costs matrix computed: min=23.59 max=32.48 2026-08-14 21:00:04.020125: Rate array import [{'start': 1260, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 35.1p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1260, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 21:00:04.021281: - Your estimated bill for today is £7.35 and tomorrow is £4.38 2026-08-14 21:00:04.021342: - Import rates are very expensive (34.7p - 35.1p) for the next 1 hour and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 21:00:04.021365: - The battery is currently at 36% and is in eco mode for the next 14 hours. 2026-08-14 21:00:04.021385: - For the next 48 hours there will be no solar generation. 2026-08-14 21:00:04.021402: - You will run out of battery in 4 hours. 2026-08-14 21:00:04.021419: - Your next charge slot will be in 14 hours where import rates will be cheap (15.5p). 2026-08-14 21:00:04.021436: 2026-08-14 21:00:04.092510: Plan calculation took 1.28 seconds 2026-08-14 21:00:04.095689: No high rate period found 2026-08-14 21:00:04.148570: Import threshold used for optimisation was 27.8p 2026-08-14 21:00:04.205415: Low import rate windows [0: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 1: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 2: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 3: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 4: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 5: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 6: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 7: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 8: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 9: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 10: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 11: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 12: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 13: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 14: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 15: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 16: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 17: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 18: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 19: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 20: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 21: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 22: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 23: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 24: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 25: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 26: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 27: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 28: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 29: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 30: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 31: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 32: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 33: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 34: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 35: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 36: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 37: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 38: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 39: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 40: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 41: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 42: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 43: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 44: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 45: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 46: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 47: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 48: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 49: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 50: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 51: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 52: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 53: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 54: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 55: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 56: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 57: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 58: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 59: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 60: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 61: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 62: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 63: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 64: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 65: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 66: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 67: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 68: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 69: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 70: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 71: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 72: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 73: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 74: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 75: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 76: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 77: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 78: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 79: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 80: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 81: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 82: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 83: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 84: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 85: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 86: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 87: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 88: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 89: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 90: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 91: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 92: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 93: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1] 2026-08-14 21:00:04.213811: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 36%, target 19% 2026-08-14 21:00:04.213956: Inverter 0 disabled charge window while waiting for schedule (now 08-14 21:00:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 21:00:04.214074: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:00:04.214347: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:00:04.214443: No export window planned 2026-08-14 21:00:04.214592: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 21:00:04.214629: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:00:04.214787: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:00:04.215020: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 21:00:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 21:00:04.215101: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 21:00:04.215169: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 21:00:04.215258: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:00:04.215300: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:00:04.215328: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:00:04.215353: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:00:04.215378: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:00:04.215401: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:00:04.215426: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:00:04.215487: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:00:04.215516: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:00:04.215540: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:00:04.215564: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:00:04.215587: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:00:04.215611: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:00:04.215634: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:00:04.215654: Inverter 0 count register writes 0 2026-08-14 21:00:04.231032: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 21:00:04.236610: Total inverter register writes now 815 2026-08-14 21:00:04.274021: Info: Completed run status Demand 2026-08-14 21:00:04.280836: Info: record_status Demand 2026-08-14 21:00:04.288330: Saved current settings to /config/predbat_config.json 2026-08-14 21:00:04.288624: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 21:00:42.406896: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:00:42.407173: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:00:42.407215: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:00:42.407391: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:00:42.407460: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:00:42.407483: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:00:42.407511: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:02:56.633922: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:02:56.634213: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:02:56.634259: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:02:56.634394: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:02:56.634434: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:02:56.634454: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:02:56.634472: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:04:56.872400: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:04:56.872737: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:04:56.872788: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:04:56.873060: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:04:56.873133: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:04:56.873158: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:04:56.873176: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:05:00.965817: --------------- PredBat - update at 2026-08-14 21:05:00+01:00 with clock skew 0 minutes, minutes now 1265 2026-08-14 21:05:00.966539: Saved current settings to /config/predbat_config.json 2026-08-14 21:05:00.966690: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 70.0 minutes 2026-08-14 21:05:00.966806: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 21:05:00.966934: Autoupdate: Currently up to date 2026-08-14 21:05:00.985594: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 21:05:00.985753: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 21:05:00.985917: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 21:05:00.986451: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 21:05:00.986572: Predbat mode is set to Control charge & discharge 2026-08-14 21:05:01.162410: Found 21602 load_today datapoints going back 27 days 2026-08-14 21:05:01.162553: Using load_power data to fill gaps in load_today data 2026-08-14 21:05:01.945389: Processing 721 30-minute periods for power integration 2026-08-14 21:05:02.147903: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 21:05:02.148056: Car charging hold False, threshold 6.0kWh 2026-08-14 21:05:02.148118: Current data so far today: load 22.3kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 21:05:02.167440: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 21:05:02.168073: Standing charge is set to 49.98p 2026-08-14 21:05:02.219490: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 21:05:02.219599: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 21:05:02.219829: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 630.0 minutes 2026-08-14 21:05:02.220218: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 630.0 minutes 2026-08-14 21:05:02.226348: Loaded 95 datapoints of futurerate analysis 2026-08-14 21:05:02.388023: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41'] 2026-08-14 21:05:02.434712: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 21:05:02.435208: Import rates: min 13.77p, max 43.82p, average 26.04p 2026-08-14 21:05:02.477757: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 21:05:02.477893: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 21:05:02.479228: High export rate found rates in range 99p to -99p 2026-08-14 21:05:02.582051: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 21:05:02.582188: Car 0 charging is not planned as it is not plugged in 2026-08-14 21:05:02.595641: Battery level now 5.7kWh, -1hr ago 6.55kWh, at midnight 2.43kWh, battery value change in the last hour -10.12p, change today 38.6p, rate_forward 11.83p 2026-08-14 21:05:02.596045: Last hour: net energy 0.04kWh, import 0.04kWh, export 0.0kWh, car 0kWh, load 1.0kWh, net cost 1.46p, import 1.46p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 21:05:02.663601: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 21:05:02.663781: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 21:05:02.777537: Using weighted-bucket historical load forecast over 14 days 2026-08-14 21:05:02.810640: Today's load divergence 142.57%, in-day adjustment 141.21%, damping 0.95x, yesterday 146.81% today 140.44% blend 12.15% 2026-08-14 21:05:02.810753: Today's predicted so far 11.92kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 11.92kWh forecast extra. 2026-08-14 21:05:02.810787: Today's actual load so far 22.44kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 21:05:02.843374: Inverter 0: Type SK Sunsynk 2026-08-14 21:05:02.843459: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 21:05:02.843982: Reserve min: 7%, battery_min: 7% 2026-08-14 21:05:02.844056: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 21:05:02.844355: Inverter 0 SoC: 5.6kW 35%, current charge rate 5000W, current discharge rate 5250W, current battery power 477W, current battery voltage 51.2V, grid power -51W, load power 527W, PV Power 0W 2026-08-14 21:05:02.844498: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:05:02.844596: Inverter 0 scheduled charge enable is False 2026-08-14 21:05:02.844624: Inverter 0 charge windows currently [] 2026-08-14 21:05:02.844644: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 21:05:02.844753: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:05:02.844783: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:05:02.844813: Inverter 0 scheduled discharge enable is False 2026-08-14 21:05:02.844936: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:05:02.845018: Inverter 0 discharge windows currently [] 2026-08-14 21:05:02.845043: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:05:02.845059: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:05:02.845072: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:05:02.903756: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 21:05:02.903901: Plan was last updated on 2026-08-14 20:55:00+01:00 and is now 10.0 minutes old 2026-08-14 21:05:02.904154: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 21:05:02.904203: Best export window [ ] 2026-08-14 21:05:02.904855: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 21:05:02.907428: Load divergence over 8.0 hours mean 496.51W, min 274.8W, max 1243.8W, std dev 145.48W, divergence 14.65% 2026-08-14 21:05:02.923104: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 21:05:02.923206: LoadML is_calculating False 2026-08-14 21:05:02.923261: Creating pool of 12 processes to match your CPU count 2026-08-14 21:05:03.042784: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1358.8p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 47.37kWh, PV 0.0kWh 2026-08-14 21:05:03.174942: Battery has 3.92 hours left - now at 5.6kWh 2026-08-14 21:05:03.214732: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1389.19p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.57kWh, PV 0.0kWh 2026-08-14 21:05:03.293774: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1266.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.57kWh, PV 0.0kWh 2026-08-14 21:05:03.373762: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1242.05p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 47.37kWh, PV 0.0kWh 2026-08-14 21:05:03.373852: Saving plan best values to HA entities 2026-08-14 21:05:03.526302: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 21:05:03.531746: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 21:05:03.536990: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.33kWh, house 6.17kWh, export 0.0kWh, metric 1242.05p, metric10 1266.1p 2026-08-14 21:05:03.607465: Marginal costs baseline metric (no standing charge): 1142.0837 2026-08-14 21:05:03.846850: Marginal energy costs matrix computed: min=23.27 max=32.25 2026-08-14 21:05:03.933631: Rate array import [{'start': 1265, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 35.1p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1265, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 21:05:03.934594: - Your estimated bill for today is £7.35 and tomorrow is £4.38 2026-08-14 21:05:03.934662: - Import rates are very expensive (34.7p - 35.1p) for the next 55 minutes and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 21:05:03.934689: - The battery is currently at 35% and is in eco mode for the next 14 hours. 2026-08-14 21:05:03.934708: - For the next 48 hours there will be no solar generation. 2026-08-14 21:05:03.934725: - You will run out of battery in 3 hours. 2026-08-14 21:05:03.934742: - Your next charge slot will be in 14 hours where import rates will be cheap (15.5p). 2026-08-14 21:05:03.934760: 2026-08-14 21:05:04.003679: Plan calculation took 1.10 seconds 2026-08-14 21:05:04.008093: No high rate period found 2026-08-14 21:05:04.062288: Import threshold used for optimisation was 27.8p 2026-08-14 21:05:04.123791: Low import rate windows [0: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 1: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 2: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 3: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 4: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 5: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 6: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 7: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 8: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 9: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 10: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 11: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 12: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 13: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 14: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 15: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 16: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 17: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 18: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 19: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 20: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 21: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 22: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 23: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 24: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 25: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 26: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 27: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 28: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 29: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 30: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 31: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 32: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 33: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 34: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 35: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 36: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 37: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 38: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 39: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 40: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 41: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 42: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 43: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 44: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 45: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 46: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 47: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 48: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 49: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 50: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 51: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 52: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 53: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 54: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 55: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 56: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 57: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 58: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 59: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 60: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 61: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 62: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 63: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 64: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 65: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 66: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 67: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 68: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 69: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 70: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 71: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 72: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 73: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 74: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 75: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 76: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 77: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 78: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 79: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 80: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 81: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 82: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 83: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 84: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 85: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 86: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 87: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 88: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 89: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 90: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 91: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 92: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 93: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 94: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71] 2026-08-14 21:05:04.133386: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 35%, target 19% 2026-08-14 21:05:04.133601: Inverter 0 disabled charge window while waiting for schedule (now 08-14 21:05:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 21:05:04.133794: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:05:04.134112: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:05:04.134238: No export window planned 2026-08-14 21:05:04.134424: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 21:05:04.134503: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:05:04.134746: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:05:04.134981: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 21:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 21:05:04.135075: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 21:05:04.135150: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 21:05:04.135251: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:05:04.135293: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:05:04.135320: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:05:04.135351: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:05:04.135376: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:05:04.135400: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:05:04.135453: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:05:04.135523: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:05:04.135560: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:05:04.135589: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:05:04.135613: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:05:04.135665: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:05:04.135724: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:05:04.135787: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:05:04.135836: Inverter 0 count register writes 0 2026-08-14 21:05:04.154595: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 21:05:04.154850: Recompute is saving previous plan... 2026-08-14 21:05:04.158257: Best charge window [ 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0% ] 2026-08-14 21:05:04.158349: Best export window [ ] 2026-08-14 21:05:04.159198: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 21:05:04.162324: Load divergence over 8.0 hours mean 496.51W, min 274.8W, max 1243.8W, std dev 145.48W, divergence 14.65% 2026-08-14 21:05:04.180599: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 21:05:04.180745: LoadML is_calculating False 2026-08-14 21:05:04.180848: Creating pool of 12 processes to match your CPU count 2026-08-14 21:05:04.280357: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 21:05:04.285497: Optimise levels pass started at 2026-08-14 21:05:04 2026-08-14 21:05:04.285592: Optimise all windows, total charge 94 export 1 2026-08-14 21:05:05.590413: >> Region optimisation pass width 960 gives best_metric 1212.36p, best_cost 1222.55p, best_cycle 37.86kWh, best_import 28.98kWh 2026-08-14 21:05:06.053796: >> Region optimisation pass width 480 gives best_metric 1212.36p, best_cost 1222.55p, best_cycle 37.86kWh, best_import 28.98kWh 2026-08-14 21:05:06.678755: >> Region optimisation pass width 240 gives best_metric 1212.36p, best_cost 1222.55p, best_cycle 37.86kWh, best_import 28.98kWh 2026-08-14 21:05:07.794936: >> Region optimisation pass width 120 gives best_metric 1212.36p, best_cost 1222.55p, best_cycle 37.86kWh, best_import 28.98kWh 2026-08-14 21:05:07.795346: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 76 2026-08-14 21:05:07.795429: Optimise levels pass ended at 2026-08-14 21:05:07, duration 3.5 seconds tried 312 combinations 2026-08-14 21:05:07.795534: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1212.36p, best_keep 0kWh, best_cycle 37.86kWh, best_carbon 0kg, best_import 28.98kWh 2026-08-14 21:05:07.812684: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 21:05:13.486698: Tweak plan optimisation started metric 1117.14p, cost 1126.47p 2026-08-14 21:05:13.777510: Tweak optimisation finished metric 1117.14p, cost 1126.47p, metric_keep 0kWh, cycle 29.12kWh, carbon 0kg, import 22.5kWh, changed 8 window(s) 2026-08-14 21:05:13.799320: Swap charge optimisation started metric 1117.14p, cost 1126.47p, min_improvement_swap 0.1p 2026-08-14 21:05:21.701099: Swap charge optimisation finished metric 1117.14p, cost 1126.47p 2026-08-14 21:05:21.842924: Pruned 1 dead plan slot(s) in 11 trial(s), nominal metric 1113.23p -> 1113.23p, plan now metric 1117.15p, cost 1126.47p, cycle 29.12kWh, import 22.5kWh 2026-08-14 21:05:21.856681: Raw charge windows [ 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100% ] reserve 1.12 2026-08-14 21:05:21.857474: Unclipped charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 21:30:00 @ 31.97p 100% ] reserve 1.12 2026-08-14 21:05:21.857890: Unfiltered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 21:30:00 @ 31.97p 100% ] reserve 1.12 2026-08-14 21:05:21.858191: Filtered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:30:00 @ 14.59p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 21:30:00 @ 31.97p 100% ] reserve 1.12 2026-08-14 21:05:21.900856: Previous plan best metric is 1117.18 (cost 1126.52) and new plan best metric is 1117.14 (cost 1126.47) 2026-08-14 21:05:21.901163: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 21:05:21.901406: Plan valid is now true after recompute was False 2026-08-14 21:05:21.933300: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1356.11p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 47.2kWh, PV 0.0kWh 2026-08-14 21:05:22.066546: Battery has 3.92 hours left - now at 5.6kWh 2026-08-14 21:05:22.134729: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1386.37p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.39kWh, PV 0.0kWh 2026-08-14 21:05:22.224251: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1252.56p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.39kWh, PV 0.0kWh 2026-08-14 21:05:22.308199: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1226.49p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 47.2kWh, PV 0.0kWh 2026-08-14 21:05:22.308291: Saving plan best values to HA entities 2026-08-14 21:05:22.450731: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 21:05:22.456660: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 21:05:22.462475: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.32kWh, house 6.17kWh, export 0.0kWh, metric 1226.49p, metric10 1252.56p 2026-08-14 21:05:22.534723: Marginal costs baseline metric (no standing charge): 1126.519 2026-08-14 21:05:22.778720: Marginal energy costs matrix computed: min=23.27 max=32.25 2026-08-14 21:05:22.850360: Rate array import [{'start': 1265, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 35.1p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1265, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 21:05:22.850997: - Your estimated bill for today is £7.35 and tomorrow is £4.38 2026-08-14 21:05:22.851036: - Import rates are very expensive (34.7p - 35.1p) for the next 55 minutes and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 21:05:22.851054: - The battery is currently at 35% and is in eco mode for the next 14 hours. 2026-08-14 21:05:22.851069: - For the next 48 hours there will be no solar generation. 2026-08-14 21:05:22.851084: - You will run out of battery in 3 hours. 2026-08-14 21:05:22.851097: - Your next charge slot will be in 14 hours where import rates will be cheap (15.5p). 2026-08-14 21:05:22.851112: 2026-08-14 21:05:22.915944: Plan calculation took 18.76 seconds 2026-08-14 21:05:22.916280: Inverter 0: Type SK Sunsynk 2026-08-14 21:05:22.916318: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 21:05:22.916886: Reserve min: 7%, battery_min: 7% 2026-08-14 21:05:22.916980: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 21:05:22.917256: Inverter 0 SoC: 5.6kW 35%, current charge rate 5000W, current discharge rate 5250W, current battery power 474W, current battery voltage 51.2V, grid power -54W, load power 527W, PV Power 0W 2026-08-14 21:05:22.917457: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:05:22.917565: Inverter 0 scheduled charge enable is False 2026-08-14 21:05:22.917601: Inverter 0 charge windows currently [] 2026-08-14 21:05:22.917626: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 21:05:22.917737: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:05:22.917769: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:05:22.917799: Inverter 0 scheduled discharge enable is False 2026-08-14 21:05:22.917912: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:05:22.917962: Inverter 0 discharge windows currently [] 2026-08-14 21:05:22.917983: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:05:22.918001: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:05:22.918015: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:05:22.969939: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 35%, target 19% 2026-08-14 21:05:22.970116: Inverter 0 disabled charge window while waiting for schedule (now 08-14 21:05:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 21:05:22.970202: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:05:22.970397: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:05:22.970479: No export window planned 2026-08-14 21:05:22.970587: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 21:05:22.970676: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:05:22.970897: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:05:22.971103: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 21:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 21:05:22.971182: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 21:05:22.971273: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 21:05:22.971383: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:05:22.971426: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:05:22.971459: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:05:22.971485: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:05:22.971513: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:05:22.971545: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:05:22.971569: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:05:22.971626: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:05:22.971675: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:05:22.971704: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:05:22.971728: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:05:22.971752: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:05:22.971782: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:05:22.971807: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:05:22.971827: Inverter 0 count register writes 0 2026-08-14 21:05:22.992086: Total inverter register writes now 815 2026-08-14 21:05:23.025083: Info: Completed run status Demand 2026-08-14 21:05:23.031160: Info: record_status Demand 2026-08-14 21:05:23.038309: Saved current settings to /config/predbat_config.json 2026-08-14 21:05:23.038628: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 21:05:57.137256: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:05:57.137494: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:05:57.137555: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:05:57.137794: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:05:57.137849: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:05:57.137870: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:05:57.137888: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:07:57.357449: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:07:57.357672: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:07:57.357718: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:07:57.357859: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:07:57.357892: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:07:57.357912: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:07:57.357926: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:10:00.581659: --------------- PredBat - update at 2026-08-14 21:10:00+01:00 with clock skew 0 minutes, minutes now 1270 2026-08-14 21:10:00.582876: Saved current settings to /config/predbat_config.json 2026-08-14 21:10:00.583063: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 75.0 minutes 2026-08-14 21:10:00.583287: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 21:10:00.583469: Autoupdate: Currently up to date 2026-08-14 21:10:00.604126: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 21:10:00.604264: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 21:10:00.604428: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 21:10:00.605000: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 21:10:00.605125: Predbat mode is set to Control charge & discharge 2026-08-14 21:10:00.810450: Found 21602 load_today datapoints going back 28 days 2026-08-14 21:10:00.810629: Using load_power data to fill gaps in load_today data 2026-08-14 21:10:01.658017: Processing 721 30-minute periods for power integration 2026-08-14 21:10:01.857650: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 21:10:01.857792: Car charging hold False, threshold 6.0kWh 2026-08-14 21:10:01.857841: Current data so far today: load 22.2kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 21:10:01.876718: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 21:10:01.877280: Standing charge is set to 49.98p 2026-08-14 21:10:01.919449: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 21:10:01.919562: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 21:10:01.919808: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 635.0 minutes 2026-08-14 21:10:01.920261: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 635.0 minutes 2026-08-14 21:10:01.926168: Loaded 95 datapoints of futurerate analysis 2026-08-14 21:10:02.084509: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41'] 2026-08-14 21:10:02.134684: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 21:10:02.135210: Import rates: min 13.77p, max 43.82p, average 26.03p 2026-08-14 21:10:02.178758: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 21:10:02.178916: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 21:10:02.180319: High export rate found rates in range 99p to -99p 2026-08-14 21:10:02.285121: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 21:10:02.285255: Car 0 charging is not planned as it is not plugged in 2026-08-14 21:10:02.298045: Battery level now 5.6kWh, -1hr ago 6.55kWh, at midnight 2.43kWh, battery value change in the last hour -11.26p, change today 37.46p, rate_forward 11.83p 2026-08-14 21:10:02.298412: Last hour: net energy 0.03kWh, import 0.03kWh, export 0.0kWh, car 0kWh, load 0.8kWh, net cost 1.27p, import 1.27p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 21:10:02.363561: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 21:10:02.363818: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 21:10:02.464682: Using weighted-bucket historical load forecast over 14 days 2026-08-14 21:10:02.497274: Today's load divergence 142.25%, in-day adjustment 140.93%, damping 0.95x, yesterday 146.81% today 140.14% blend 11.81% 2026-08-14 21:10:02.497376: Today's predicted so far 11.93kWh with 0.0kWh car/iBoost excluded, 17.18kWh import ignored, and 11.93kWh forecast extra. 2026-08-14 21:10:02.497409: Today's actual load so far 22.31kWh with 0.0kWh car/iBoost excluded, and 17.18kWh import ignored. 2026-08-14 21:10:02.531958: Inverter 0: Type SK Sunsynk 2026-08-14 21:10:02.532049: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 21:10:02.532636: Reserve min: 7%, battery_min: 7% 2026-08-14 21:10:02.532721: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 21:10:02.533113: Inverter 0 SoC: 5.6kW 35%, current charge rate 5000W, current discharge rate 5250W, current battery power 515W, current battery voltage 51.2V, grid power -52W, load power 566W, PV Power 0W 2026-08-14 21:10:02.533327: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:10:02.533444: Inverter 0 scheduled charge enable is False 2026-08-14 21:10:02.533494: Inverter 0 charge windows currently [] 2026-08-14 21:10:02.533580: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 21:10:02.533797: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:10:02.533843: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:10:02.533887: Inverter 0 scheduled discharge enable is False 2026-08-14 21:10:02.534102: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:10:02.534149: Inverter 0 discharge windows currently [] 2026-08-14 21:10:02.534175: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:10:02.534216: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:10:02.534251: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:10:02.636262: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 21:10:02.636379: Plan was last updated on 2026-08-14 21:05:00+01:00 and is now 5.0 minutes old 2026-08-14 21:10:02.636650: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 21:10:02.636696: Best export window [ ] 2026-08-14 21:10:02.637527: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 21:10:02.640673: Load divergence over 8.0 hours mean 496.53W, min 274.8W, max 1206.0W, std dev 143.11W, divergence 14.41% 2026-08-14 21:10:02.662161: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 21:10:02.662316: LoadML is_calculating False 2026-08-14 21:10:02.662420: Creating pool of 12 processes to match your CPU count 2026-08-14 21:10:02.812738: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1355.99p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 47.14kWh, PV 0.0kWh 2026-08-14 21:10:02.939140: Battery has 3.92 hours left - now at 5.6kWh 2026-08-14 21:10:02.988125: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1386.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.33kWh, PV 0.0kWh 2026-08-14 21:10:03.073091: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1257.74p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.33kWh, PV 0.0kWh 2026-08-14 21:10:03.156109: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1232.73p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 47.14kWh, PV 0.0kWh 2026-08-14 21:10:03.156207: Saving plan best values to HA entities 2026-08-14 21:10:03.318968: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 21:10:03.324767: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 21:10:03.330708: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.82kWh, house 6.13kWh, export 0.0kWh, metric 1232.73p, metric10 1257.74p 2026-08-14 21:10:03.413140: Marginal costs baseline metric (no standing charge): 1132.7674 2026-08-14 21:10:03.692550: Marginal energy costs matrix computed: min=22.94 max=32.01 2026-08-14 21:10:03.779517: Rate array import [{'start': 1270, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 35.1p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1270, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 21:10:03.780668: - Your estimated bill for today is £7.35 and tomorrow is £4.36 2026-08-14 21:10:03.780736: - Import rates are very expensive (34.7p - 35.1p) for the next 50 minutes and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 21:10:03.780779: - The battery is currently at 35% and is in eco mode for the next 14 hours. 2026-08-14 21:10:03.780812: - For the next 48 hours there will be no solar generation. 2026-08-14 21:10:03.780853: - You will run out of battery in 3 hours. 2026-08-14 21:10:03.780888: - Your next charge slot will be in 14 hours where import rates will be cheap (15.5p). 2026-08-14 21:10:03.780920: 2026-08-14 21:10:03.854826: Plan calculation took 1.22 seconds 2026-08-14 21:10:03.859513: No high rate period found 2026-08-14 21:10:03.918638: Import threshold used for optimisation was 27.8p 2026-08-14 21:10:03.976160: Low import rate windows [0: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 1: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 2: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 3: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 4: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 5: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 6: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 7: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 8: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 9: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 10: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 11: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 12: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 13: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 14: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 15: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 16: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 17: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 18: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 19: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 20: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 21: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 22: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 23: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 24: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 25: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 26: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 27: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 28: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 29: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 30: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 31: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 32: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 33: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 34: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 35: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 36: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 37: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 38: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 39: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 40: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 41: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 42: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 43: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 44: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 45: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 46: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 47: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 48: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 49: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 50: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 51: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 52: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 53: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 54: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 55: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 56: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 57: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 58: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 59: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 60: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 61: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 62: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 63: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 64: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 65: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 66: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 67: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 68: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 69: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 70: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 71: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 72: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 73: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 74: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 75: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 76: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 77: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 78: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 79: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 80: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 81: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 82: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 83: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 84: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 85: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 86: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 87: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 88: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 89: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 90: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 91: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 92: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 93: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 94: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71] 2026-08-14 21:10:03.984919: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 35%, target 19% 2026-08-14 21:10:03.985103: Inverter 0 disabled charge window while waiting for schedule (now 08-14 21:10:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 21:10:03.985231: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:10:03.985498: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:10:03.985609: No export window planned 2026-08-14 21:10:03.985735: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 21:10:03.985772: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:10:03.985918: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:10:03.986104: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 21:10:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 21:10:03.986167: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 21:10:03.986237: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 21:10:03.986326: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:10:03.986360: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:10:03.986389: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:10:03.986414: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:10:03.986438: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:10:03.986462: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:10:03.986508: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:10:03.986581: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:10:03.986639: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:10:03.986667: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:10:03.986692: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:10:03.986715: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:10:03.986738: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:10:03.986762: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:10:03.986784: Inverter 0 count register writes 0 2026-08-14 21:10:04.003685: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 21:10:04.009529: Total inverter register writes now 815 2026-08-14 21:10:04.043671: Info: Completed run status Demand 2026-08-14 21:10:04.050782: Info: record_status Demand 2026-08-14 21:10:04.058474: Saved current settings to /config/predbat_config.json 2026-08-14 21:10:04.058949: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 21:10:42.167601: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:10:42.167900: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:10:42.167958: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:10:42.168169: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:10:42.168224: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:10:42.168250: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:10:42.168273: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:12:42.389513: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:12:42.389789: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:12:42.389825: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:12:42.389956: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:12:42.390022: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:12:42.390043: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:12:42.390060: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:14:56.626808: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:14:56.627148: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:14:56.627205: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:14:56.627357: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:14:56.627396: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:14:56.627417: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:14:56.627435: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:15:00.727185: --------------- PredBat - update at 2026-08-14 21:15:00+01:00 with clock skew 0 minutes, minutes now 1275 2026-08-14 21:15:00.728127: Saved current settings to /config/predbat_config.json 2026-08-14 21:15:00.729343: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 80.0 minutes 2026-08-14 21:15:00.729435: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 21:15:00.729514: Autoupdate: Currently up to date 2026-08-14 21:15:00.747107: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 21:15:00.747228: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 21:15:00.747391: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 21:15:00.748035: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 21:15:00.748200: Predbat mode is set to Control charge & discharge 2026-08-14 21:15:00.933204: Found 21602 load_today datapoints going back 28 days 2026-08-14 21:15:00.933393: Using load_power data to fill gaps in load_today data 2026-08-14 21:15:01.609363: Processing 721 30-minute periods for power integration 2026-08-14 21:15:01.765823: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 21:15:01.765955: Car charging hold False, threshold 6.0kWh 2026-08-14 21:15:01.766010: Current data so far today: load 22.2kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 21:15:01.781599: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 21:15:01.782154: Standing charge is set to 49.98p 2026-08-14 21:15:01.825863: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 21:15:01.825951: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 21:15:01.826126: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 640.0 minutes 2026-08-14 21:15:01.826483: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 640.0 minutes 2026-08-14 21:15:01.831382: Loaded 95 datapoints of futurerate analysis 2026-08-14 21:15:01.952766: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41'] 2026-08-14 21:15:01.994598: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 21:15:01.995052: Import rates: min 13.77p, max 43.82p, average 26.02p 2026-08-14 21:15:02.029665: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 21:15:02.029784: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 21:15:02.030857: High export rate found rates in range 99p to -99p 2026-08-14 21:15:02.113018: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 21:15:02.113153: Car 0 charging is not planned as it is not plugged in 2026-08-14 21:15:02.125420: Battery level now 5.6kWh, -1hr ago 6.36kWh, at midnight 2.43kWh, battery value change in the last hour -8.99p, change today 37.46p, rate_forward 11.83p 2026-08-14 21:15:02.125751: Last hour: net energy 0.03kWh, import 0.03kWh, export 0.0kWh, car 0kWh, load 0.7kWh, net cost 1.09p, import 1.09p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 21:15:02.185873: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 21:15:02.186033: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 21:15:02.281676: Using weighted-bucket historical load forecast over 14 days 2026-08-14 21:15:02.315169: Today's load divergence 142.12%, in-day adjustment 140.79%, damping 0.95x, yesterday 146.81% today 140.01% blend 11.46% 2026-08-14 21:15:02.315287: Today's predicted so far 11.94kWh with 0.0kWh car/iBoost excluded, 17.19kWh import ignored, and 11.94kWh forecast extra. 2026-08-14 21:15:02.315323: Today's actual load so far 22.27kWh with 0.0kWh car/iBoost excluded, and 17.19kWh import ignored. 2026-08-14 21:15:02.348466: Inverter 0: Type SK Sunsynk 2026-08-14 21:15:02.348560: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 21:15:02.349169: Reserve min: 7%, battery_min: 7% 2026-08-14 21:15:02.349260: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 21:15:02.349537: Inverter 0 SoC: 5.6kW 35%, current charge rate 5000W, current discharge rate 5250W, current battery power 477W, current battery voltage 51.2V, grid power -56W, load power 530W, PV Power 0W 2026-08-14 21:15:02.349717: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:15:02.349805: Inverter 0 scheduled charge enable is False 2026-08-14 21:15:02.349833: Inverter 0 charge windows currently [] 2026-08-14 21:15:02.349859: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 21:15:02.349966: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:15:02.350001: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:15:02.350036: Inverter 0 scheduled discharge enable is False 2026-08-14 21:15:02.350165: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:15:02.350202: Inverter 0 discharge windows currently [] 2026-08-14 21:15:02.350225: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:15:02.350244: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:15:02.350261: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:15:02.407421: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 21:15:02.407548: Plan was last updated on 2026-08-14 21:05:00+01:00 and is now 10.0 minutes old 2026-08-14 21:15:02.407872: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 21:15:02.408091: Best export window [ ] 2026-08-14 21:15:02.409209: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 21:15:02.412461: Load divergence over 8.0 hours mean 496.61W, min 279.0W, max 1164.0W, std dev 142.92W, divergence 14.39% 2026-08-14 21:15:02.431928: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 21:15:02.432041: LoadML is_calculating False 2026-08-14 21:15:02.432106: Creating pool of 12 processes to match your CPU count 2026-08-14 21:15:02.544032: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1355.57p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 47.17kWh, PV 0.0kWh 2026-08-14 21:15:02.666636: Battery has 3.92 hours left - now at 5.6kWh 2026-08-14 21:15:02.707353: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1385.87p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.36kWh, PV 0.0kWh 2026-08-14 21:15:02.782355: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1262.78p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.36kWh, PV 0.0kWh 2026-08-14 21:15:02.866253: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1238.83p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 47.17kWh, PV 0.0kWh 2026-08-14 21:15:02.866353: Saving plan best values to HA entities 2026-08-14 21:15:03.017196: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 21:15:03.022048: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 21:15:03.027150: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.34kWh, house 6.05kWh, export 0.0kWh, metric 1238.83p, metric10 1262.78p 2026-08-14 21:15:03.106284: Marginal costs baseline metric (no standing charge): 1138.8675 2026-08-14 21:15:03.393927: Marginal energy costs matrix computed: min=22.62 max=31.85 2026-08-14 21:15:03.487992: Rate array import [{'start': 1275, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 35.1p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1275, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 21:15:03.488785: - Your estimated bill for today is £7.35 and tomorrow is £4.34 2026-08-14 21:15:03.488834: - Import rates are very expensive (34.7p - 35.1p) for the next 45 minutes and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 21:15:03.488857: - The battery is currently at 35% and is in eco mode for the next 14 hours. 2026-08-14 21:15:03.488875: - For the next 48 hours there will be no solar generation. 2026-08-14 21:15:03.488892: - You will run out of battery in 3 hours. 2026-08-14 21:15:03.488910: - Your next charge slot will be in 14 hours where import rates will be cheap (15.5p). 2026-08-14 21:15:03.488982: 2026-08-14 21:15:03.547277: Plan calculation took 1.14 seconds 2026-08-14 21:15:03.551223: No high rate period found 2026-08-14 21:15:03.604683: Import threshold used for optimisation was 27.8p 2026-08-14 21:15:03.666943: Low import rate windows [0: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 1: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 2: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 3: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 4: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 5: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 6: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 7: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 8: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 9: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 10: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 11: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 12: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 13: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 14: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 15: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 16: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 17: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 18: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 19: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 20: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 21: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 22: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 23: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 24: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 25: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 26: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 27: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 28: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 29: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 30: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 31: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 32: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 33: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 34: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 35: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 36: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 37: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 38: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 39: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 40: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 41: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 42: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 43: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 44: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 45: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 46: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 47: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 48: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 49: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 50: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 51: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 52: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 53: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 54: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 55: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 56: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 57: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 58: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 59: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 60: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 61: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 62: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 63: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 64: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 65: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 66: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 67: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 68: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 69: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 70: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 71: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 72: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 73: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 74: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 75: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 76: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 77: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 78: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 79: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 80: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 81: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 82: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 83: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 84: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 85: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 86: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 87: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 88: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 89: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 90: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 91: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 92: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 93: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 94: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71] 2026-08-14 21:15:03.675067: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 35%, target 19% 2026-08-14 21:15:03.675205: Inverter 0 disabled charge window while waiting for schedule (now 08-14 21:15:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 21:15:03.675321: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:15:03.675600: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:15:03.675695: No export window planned 2026-08-14 21:15:03.675811: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 21:15:03.675846: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:15:03.675980: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:15:03.676165: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 21:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 21:15:03.676229: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 21:15:03.676291: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 21:15:03.676385: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:15:03.676426: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:15:03.676458: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:15:03.676490: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:15:03.676522: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:15:03.676549: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:15:03.676594: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:15:03.676658: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:15:03.676694: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:15:03.676724: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:15:03.676753: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:15:03.676778: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:15:03.676801: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:15:03.676828: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:15:03.676848: Inverter 0 count register writes 0 2026-08-14 21:15:03.693248: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 21:15:03.693400: Recompute is saving previous plan... 2026-08-14 21:15:03.695980: Best charge window [ 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0% ] 2026-08-14 21:15:03.696042: Best export window [ ] 2026-08-14 21:15:03.696709: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 21:15:03.699223: Load divergence over 8.0 hours mean 496.61W, min 279.0W, max 1164.0W, std dev 142.92W, divergence 14.39% 2026-08-14 21:15:03.714090: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 21:15:03.714171: LoadML is_calculating False 2026-08-14 21:15:03.714224: Creating pool of 12 processes to match your CPU count 2026-08-14 21:15:03.793413: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 21:15:03.795473: Optimise levels pass started at 2026-08-14 21:15:03 2026-08-14 21:15:03.795531: Optimise all windows, total charge 94 export 1 2026-08-14 21:15:04.901470: >> Region optimisation pass width 960 gives best_metric 1210.22p, best_cost 1219.32p, best_cycle 37.93kWh, best_import 28.87kWh 2026-08-14 21:15:05.318984: >> Region optimisation pass width 480 gives best_metric 1210.22p, best_cost 1219.32p, best_cycle 37.93kWh, best_import 28.87kWh 2026-08-14 21:15:05.835894: >> Region optimisation pass width 240 gives best_metric 1210.22p, best_cost 1219.32p, best_cycle 37.93kWh, best_import 28.87kWh 2026-08-14 21:15:06.869748: >> Region optimisation pass width 120 gives best_metric 1210.22p, best_cost 1219.32p, best_cycle 37.93kWh, best_import 28.87kWh 2026-08-14 21:15:06.870170: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 76 2026-08-14 21:15:06.870277: Optimise levels pass ended at 2026-08-14 21:15:06, duration 3.1 seconds tried 312 combinations 2026-08-14 21:15:06.870384: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1210.22p, best_keep 0kWh, best_cycle 37.93kWh, best_carbon 0kg, best_import 28.87kWh 2026-08-14 21:15:06.891386: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 21:15:12.014235: Tweak plan optimisation started metric 1113.7p, cost 1123.07p 2026-08-14 21:15:12.341236: Tweak optimisation finished metric 1113.7p, cost 1123.07p, metric_keep 0kWh, cycle 29.12kWh, carbon 0kg, import 22.37kWh, changed 8 window(s) 2026-08-14 21:15:12.362313: Swap charge optimisation started metric 1113.7p, cost 1123.07p, min_improvement_swap 0.1p 2026-08-14 21:15:18.775878: Swap charge optimisation finished metric 1113.7p, cost 1123.07p 2026-08-14 21:15:18.877639: Pruned 1 dead plan slot(s) in 10 trial(s), nominal metric 1109.82p -> 1109.82p, plan now metric 1113.71p, cost 1123.07p, cycle 29.12kWh, import 22.37kWh 2026-08-14 21:15:18.887885: Raw charge windows [ 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100% ] reserve 1.12 2026-08-14 21:15:18.888435: Unclipped charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 21:30:00 @ 31.97p 100% ] reserve 1.12 2026-08-14 21:15:18.888762: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 21:30:00 @ 31.97p 100% ] reserve 1.12 2026-08-14 21:15:18.889034: Filtered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:30:00 @ 14.59p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 21:30:00 @ 31.97p 100% ] reserve 1.12 2026-08-14 21:15:18.921166: Previous plan best metric is 1113.71 (cost 1123.07) and new plan best metric is 1113.7 (cost 1123.07) 2026-08-14 21:15:18.921331: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 21:15:18.921526: Plan valid is now true after recompute was False 2026-08-14 21:15:18.946005: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1352.65p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 46.98kWh, PV 0.0kWh 2026-08-14 21:15:19.056853: Battery has 3.92 hours left - now at 5.6kWh 2026-08-14 21:15:19.103460: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1382.81p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.16kWh, PV 0.0kWh 2026-08-14 21:15:19.178846: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1248.99p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.16kWh, PV 0.0kWh 2026-08-14 21:15:19.279745: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1223.03p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 46.98kWh, PV 0.0kWh 2026-08-14 21:15:19.279868: Saving plan best values to HA entities 2026-08-14 21:15:19.429194: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 21:15:19.434064: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 21:15:19.438915: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.32kWh, house 6.05kWh, export 0.0kWh, metric 1223.03p, metric10 1248.99p 2026-08-14 21:15:19.519676: Marginal costs baseline metric (no standing charge): 1123.0663 2026-08-14 21:15:19.772514: Marginal energy costs matrix computed: min=22.62 max=31.85 2026-08-14 21:15:19.846962: Rate array import [{'start': 1275, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 35.1p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1275, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 21:15:19.848353: - Your estimated bill for today is £7.35 and tomorrow is £4.34 2026-08-14 21:15:19.848409: - Import rates are very expensive (34.7p - 35.1p) for the next 45 minutes and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 21:15:19.848433: - The battery is currently at 35% and is in eco mode for the next 14 hours. 2026-08-14 21:15:19.848451: - For the next 48 hours there will be no solar generation. 2026-08-14 21:15:19.848468: - You will run out of battery in 3 hours. 2026-08-14 21:15:19.848485: - Your next charge slot will be in 14 hours where import rates will be cheap (15.5p). 2026-08-14 21:15:19.848503: 2026-08-14 21:15:19.909629: Plan calculation took 16.22 seconds 2026-08-14 21:15:19.909993: Inverter 0: Type SK Sunsynk 2026-08-14 21:15:19.910042: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 21:15:19.910734: Reserve min: 7%, battery_min: 7% 2026-08-14 21:15:19.910824: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 21:15:19.911133: Inverter 0 SoC: 5.53kW 35%, current charge rate 5000W, current discharge rate 5250W, current battery power 459W, current battery voltage 51.2V, grid power -56W, load power 513W, PV Power 0W 2026-08-14 21:15:19.911375: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:15:19.911487: Inverter 0 scheduled charge enable is False 2026-08-14 21:15:19.911529: Inverter 0 charge windows currently [] 2026-08-14 21:15:19.911559: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 21:15:19.911697: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:15:19.911733: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:15:19.911769: Inverter 0 scheduled discharge enable is False 2026-08-14 21:15:19.911898: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:15:19.911936: Inverter 0 discharge windows currently [] 2026-08-14 21:15:19.911959: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:15:19.911982: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:15:19.911999: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:15:19.973045: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 35%, target 19% 2026-08-14 21:15:19.973196: Inverter 0 disabled charge window while waiting for schedule (now 08-14 21:15:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 21:15:19.973316: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:15:19.973537: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:15:19.973635: No export window planned 2026-08-14 21:15:19.973755: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 21:15:19.973791: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:15:19.973930: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:15:19.974091: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 21:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 21:15:19.974146: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 21:15:19.974200: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 21:15:19.974310: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:15:19.974353: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:15:19.974380: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:15:19.974410: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:15:19.974435: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:15:19.974461: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:15:19.974515: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:15:19.974586: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:15:19.974618: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:15:19.974643: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:15:19.974666: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:15:19.974689: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:15:19.974712: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:15:19.974735: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:15:19.974755: Inverter 0 count register writes 0 2026-08-14 21:15:19.995604: Total inverter register writes now 815 2026-08-14 21:15:20.030204: Info: Completed run status Demand 2026-08-14 21:15:20.036289: Info: record_status Demand 2026-08-14 21:15:20.043901: Saved current settings to /config/predbat_config.json 2026-08-14 21:15:20.044256: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 21:15:57.151196: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:15:57.151433: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:15:57.151475: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:15:57.151743: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:15:57.151788: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:15:57.151810: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:15:57.151828: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:17:57.371045: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:17:57.371286: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:17:57.371326: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:17:57.371570: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:17:57.371619: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:17:57.371637: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:17:57.371651: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:20:00.584733: --------------- PredBat - update at 2026-08-14 21:20:00+01:00 with clock skew 0 minutes, minutes now 1280 2026-08-14 21:20:00.585836: Saved current settings to /config/predbat_config.json 2026-08-14 21:20:00.586003: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 85.0 minutes 2026-08-14 21:20:00.586130: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 21:20:00.586246: Autoupdate: Currently up to date 2026-08-14 21:20:00.606912: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 21:20:00.607128: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 21:20:00.607363: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 21:20:00.607978: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 21:20:00.608140: Predbat mode is set to Control charge & discharge 2026-08-14 21:20:00.834672: Found 21602 load_today datapoints going back 28 days 2026-08-14 21:20:00.834854: Using load_power data to fill gaps in load_today data 2026-08-14 21:20:01.781466: Processing 721 30-minute periods for power integration 2026-08-14 21:20:01.950148: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 21:20:01.950283: Car charging hold False, threshold 6.0kWh 2026-08-14 21:20:01.950326: Current data so far today: load 22.32kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 21:20:01.967936: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 21:20:01.968759: Standing charge is set to 49.98p 2026-08-14 21:20:02.023927: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 21:20:02.024035: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 21:20:02.024272: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 645.0 minutes 2026-08-14 21:20:02.024813: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 645.0 minutes 2026-08-14 21:20:02.032871: Loaded 95 datapoints of futurerate analysis 2026-08-14 21:20:02.171175: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41'] 2026-08-14 21:20:02.210003: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 21:20:02.210372: Import rates: min 13.77p, max 43.82p, average 26.02p 2026-08-14 21:20:02.244772: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 21:20:02.244897: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 21:20:02.246242: High export rate found rates in range 99p to -99p 2026-08-14 21:20:02.347105: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 21:20:02.347244: Car 0 charging is not planned as it is not plugged in 2026-08-14 21:20:02.359699: Battery level now 5.6kWh, -1hr ago 6.36kWh, at midnight 2.43kWh, battery value change in the last hour -8.99p, change today 37.46p, rate_forward 11.83p 2026-08-14 21:20:02.360015: Last hour: net energy 0.02kWh, import 0.02kWh, export 0.0kWh, car 0kWh, load 0.62kWh, net cost 0.91p, import 0.91p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 21:20:02.433970: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 21:20:02.434200: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 21:20:02.535551: Using weighted-bucket historical load forecast over 14 days 2026-08-14 21:20:02.572454: Today's load divergence 142.19%, in-day adjustment 140.83%, damping 0.95x, yesterday 146.81% today 140.08% blend 11.11% 2026-08-14 21:20:02.572588: Today's predicted so far 11.97kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 11.97kWh forecast extra. 2026-08-14 21:20:02.572627: Today's actual load so far 22.33kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 21:20:02.609495: Inverter 0: Type SK Sunsynk 2026-08-14 21:20:02.609626: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 21:20:02.610265: Reserve min: 7%, battery_min: 7% 2026-08-14 21:20:02.610356: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 21:20:02.610712: Inverter 0 SoC: 5.53kW 35%, current charge rate 5000W, current discharge rate 5250W, current battery power 475W, current battery voltage 51.2V, grid power -55W, load power 532W, PV Power 0W 2026-08-14 21:20:02.610935: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:20:02.611084: Inverter 0 scheduled charge enable is False 2026-08-14 21:20:02.611131: Inverter 0 charge windows currently [] 2026-08-14 21:20:02.611162: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 21:20:02.611315: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:20:02.611359: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:20:02.611409: Inverter 0 scheduled discharge enable is False 2026-08-14 21:20:02.611620: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:20:02.611665: Inverter 0 discharge windows currently [] 2026-08-14 21:20:02.611693: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:20:02.611739: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:20:02.611766: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:20:02.679613: Dynamic load last period 0.30kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 21:20:02.679730: Plan was last updated on 2026-08-14 21:15:00+01:00 and is now 5.0 minutes old 2026-08-14 21:20:02.679994: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 21:20:02.680041: Best export window [ ] 2026-08-14 21:20:02.680896: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 21:20:02.684055: Load divergence over 8.0 hours mean 493.59W, min 345.0W, max 1182.6W, std dev 131.58W, divergence 13.33% 2026-08-14 21:20:02.703532: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 21:20:02.703679: LoadML is_calculating False 2026-08-14 21:20:02.703745: Creating pool of 12 processes to match your CPU count 2026-08-14 21:20:02.834945: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1354.82p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 47.15kWh, PV 0.0kWh 2026-08-14 21:20:02.964306: Battery has 3.83 hours left - now at 5.53kWh 2026-08-14 21:20:03.016696: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1384.97p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.34kWh, PV 0.0kWh 2026-08-14 21:20:03.105181: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1256.43p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.34kWh, PV 0.0kWh 2026-08-14 21:20:03.204779: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1231.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 47.15kWh, PV 0.0kWh 2026-08-14 21:20:03.204877: Saving plan best values to HA entities 2026-08-14 21:20:03.389102: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 21:20:03.395701: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 21:20:03.404104: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.83kWh, house 6.08kWh, export 0.0kWh, metric 1231.54p, metric10 1256.43p 2026-08-14 21:20:03.519280: Marginal costs baseline metric (no standing charge): 1131.5739 2026-08-14 21:20:03.856033: Marginal energy costs matrix computed: min=22.29 max=31.72 2026-08-14 21:20:03.945760: Rate array import [{'start': 1280, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 35.1p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1280, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 21:20:03.946582: - Your estimated bill for today is £7.35 and tomorrow is £4.35 2026-08-14 21:20:03.946631: - Import rates are very expensive (34.7p - 35.1p) for the next 40 minutes and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 21:20:03.946655: - The battery is currently at 35% and is in eco mode for the next 14 hours. 2026-08-14 21:20:03.946673: - For the next 48 hours there will be no solar generation. 2026-08-14 21:20:03.946690: - You will run out of battery in 3 and three quarters hours. 2026-08-14 21:20:03.946707: - Your next charge slot will be in 14 hours where import rates will be cheap (15.5p). 2026-08-14 21:20:03.946750: 2026-08-14 21:20:04.013343: Plan calculation took 1.33 seconds 2026-08-14 21:20:04.017394: No high rate period found 2026-08-14 21:20:04.069695: Import threshold used for optimisation was 27.18p 2026-08-14 21:20:04.119430: Low import rate windows [0: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 1: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 2: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 3: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 4: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 5: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 6: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 7: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 8: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 9: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 10: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 11: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 12: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 13: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 14: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 15: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 16: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 17: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 18: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 19: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 20: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 21: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 22: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 23: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 24: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 25: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 26: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 27: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 28: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 29: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 30: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 31: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 32: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 33: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 34: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 35: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 36: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 37: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 38: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 39: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 40: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 41: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 42: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 43: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 44: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 45: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 46: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 47: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 48: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 49: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 50: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 51: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 52: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 53: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 54: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 55: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 56: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 57: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 58: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 59: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 60: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 61: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 62: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 63: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 64: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 65: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 66: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 67: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 68: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 69: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 70: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 71: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 72: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 73: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 74: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 75: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 76: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 77: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 78: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 79: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 80: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 81: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 82: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 83: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 84: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 85: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 86: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 87: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 88: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 89: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 90: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 91: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 92: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 93: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 94: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71] 2026-08-14 21:20:04.127107: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 35%, target 19% 2026-08-14 21:20:04.127245: Inverter 0 disabled charge window while waiting for schedule (now 08-14 21:20:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 21:20:04.127366: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:20:04.127661: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:20:04.127760: No export window planned 2026-08-14 21:20:04.127879: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 21:20:04.127915: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:20:04.128051: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:20:04.128233: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 21:20:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 21:20:04.128295: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 21:20:04.128360: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 21:20:04.128450: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:20:04.128495: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:20:04.128523: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:20:04.128548: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:20:04.128591: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:20:04.128618: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:20:04.128642: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:20:04.128704: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:20:04.128741: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:20:04.128767: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:20:04.128792: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:20:04.128819: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:20:04.128842: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:20:04.128866: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:20:04.128886: Inverter 0 count register writes 0 2026-08-14 21:20:04.144422: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 21:20:04.149554: Total inverter register writes now 815 2026-08-14 21:20:04.180737: Info: Completed run status Demand 2026-08-14 21:20:04.187070: Info: record_status Demand 2026-08-14 21:20:04.193701: Saved current settings to /config/predbat_config.json 2026-08-14 21:20:04.194005: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 21:20:19.011447: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 21:20:19.972867: Processing 1345 30-minute periods for power integration 2026-08-14 21:20:20.083169: ML Component: Car charging hold False, car energy reported load False 2026-08-14 21:20:20.166606: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 21:20:20.263129: ML Temperature data points: 49121 2026-08-14 21:20:20.551689: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 21:20:20.590377: ML Component: Data fetch completed, load data age 56.0 days, 16233 data points 2026-08-14 21:20:20.590524: ML Component: No training needed, model age is 1.15 hours 2026-08-14 21:20:20.590641: ML Component: Generating predictions load data age 56.0 days, 16233 data points 2026-08-14 21:20:20.741441: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0296 max_dow {0: 0.10336562496256083, 1: 0.1091281248660758, 2: 0.11737499983031302, 3: 0.11972187416721135, 4: 0.17116562535744162, 5: 0.10228437502831222, 6: 0.10759687461592257} 2026-08-14 21:20:21.220378: ML Component: Generated 576 predictions (total 42.40 kWh over 48h) 2026-08-14 21:20:21.259234: ML Component: Prediction cycle completed 2026-08-14 21:20:21.376923: ML Component: Saved 16233 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 21:20:42.308038: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:20:42.308365: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:20:42.308448: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:20:42.308697: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:20:42.308767: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:20:42.308811: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:20:42.308849: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:22:56.547349: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:22:56.547555: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:22:56.547605: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:22:56.547742: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:22:56.547816: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:22:56.547866: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:22:56.547883: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:24:56.762053: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:24:56.762301: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:24:56.762337: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:24:56.762466: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:24:56.762507: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:24:56.762528: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:24:56.762546: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:25:00.837089: --------------- PredBat - update at 2026-08-14 21:25:00+01:00 with clock skew 0 minutes, minutes now 1285 2026-08-14 21:25:00.837858: Saved current settings to /config/predbat_config.json 2026-08-14 21:25:00.837985: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 90.0 minutes 2026-08-14 21:25:00.838094: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 21:25:00.838184: Autoupdate: Currently up to date 2026-08-14 21:25:00.855218: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 21:25:00.855340: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 21:25:00.855622: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 21:25:00.856228: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 21:25:00.856357: Predbat mode is set to Control charge & discharge 2026-08-14 21:25:01.036539: Found 21602 load_today datapoints going back 28 days 2026-08-14 21:25:01.036742: Using load_power data to fill gaps in load_today data 2026-08-14 21:25:01.738614: Processing 721 30-minute periods for power integration 2026-08-14 21:25:01.894203: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 21:25:01.894331: Car charging hold False, threshold 6.0kWh 2026-08-14 21:25:01.894370: Current data so far today: load 22.35kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 21:25:01.910214: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 21:25:01.910641: Standing charge is set to 49.98p 2026-08-14 21:25:01.957464: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 21:25:01.957600: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 21:25:01.957856: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 650.0 minutes 2026-08-14 21:25:01.958272: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 650.0 minutes 2026-08-14 21:25:01.963637: Loaded 95 datapoints of futurerate analysis 2026-08-14 21:25:02.087957: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41'] 2026-08-14 21:25:02.125189: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 21:25:02.125595: Import rates: min 13.77p, max 43.82p, average 26.01p 2026-08-14 21:25:02.160171: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 21:25:02.160286: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 21:25:02.161490: High export rate found rates in range 99p to -99p 2026-08-14 21:25:02.245628: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 21:25:02.245747: Car 0 charging is not planned as it is not plugged in 2026-08-14 21:25:02.258137: Battery level now 5.53kWh, -1hr ago 6.2kWh, at midnight 2.43kWh, battery value change in the last hour -7.95p, change today 36.61p, rate_forward 11.83p 2026-08-14 21:25:02.258552: Last hour: net energy 0.02kWh, import 0.02kWh, export 0.0kWh, car 0kWh, load 0.45kWh, net cost 0.73p, import 0.73p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 21:25:02.317721: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 21:25:02.317861: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 21:25:02.396018: Using weighted-bucket historical load forecast over 14 days 2026-08-14 21:25:02.420911: Today's load divergence 142.08%, in-day adjustment 140.71%, damping 0.95x, yesterday 146.81% today 139.97% blend 10.76% 2026-08-14 21:25:02.421000: Today's predicted so far 12.0kWh with 0.0kWh car/iBoost excluded, 17.38kWh import ignored, and 12.0kWh forecast extra. 2026-08-14 21:25:02.421286: Today's actual load so far 22.31kWh with 0.0kWh car/iBoost excluded, and 17.38kWh import ignored. 2026-08-14 21:25:02.450255: Inverter 0: Type SK Sunsynk 2026-08-14 21:25:02.450337: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 21:25:02.450799: Reserve min: 7%, battery_min: 7% 2026-08-14 21:25:02.450867: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 21:25:02.451099: Inverter 0 SoC: 5.44kW 34%, current charge rate 5000W, current discharge rate 5250W, current battery power 564W, current battery voltage 51.2V, grid power -54W, load power 616W, PV Power 0W 2026-08-14 21:25:02.451233: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:25:02.451304: Inverter 0 scheduled charge enable is False 2026-08-14 21:25:02.451328: Inverter 0 charge windows currently [] 2026-08-14 21:25:02.451349: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 21:25:02.451437: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:25:02.451467: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:25:02.451495: Inverter 0 scheduled discharge enable is False 2026-08-14 21:25:02.451612: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:25:02.451645: Inverter 0 discharge windows currently [] 2026-08-14 21:25:02.451663: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:25:02.451678: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:25:02.451693: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:25:02.509263: Dynamic load last period 0.30kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 21:25:02.509384: Plan was last updated on 2026-08-14 21:15:00+01:00 and is now 10.0 minutes old 2026-08-14 21:25:02.509795: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 21:25:02.509875: Best export window [ ] 2026-08-14 21:25:02.510820: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 21:25:02.514411: Load divergence over 8.0 hours mean 490.61W, min 376.2W, max 1057.8W, std dev 120.5W, divergence 12.28% 2026-08-14 21:25:02.534099: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 21:25:02.534209: LoadML is_calculating False 2026-08-14 21:25:02.534265: Creating pool of 12 processes to match your CPU count 2026-08-14 21:25:02.643861: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1357.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 47.22kWh, PV 0.0kWh 2026-08-14 21:25:02.771692: Battery has 3.67 hours left - now at 5.44kWh 2026-08-14 21:25:02.812058: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1387.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.4kWh, PV 0.0kWh 2026-08-14 21:25:02.884426: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1264.08p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.4kWh, PV 0.0kWh 2026-08-14 21:25:02.958170: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1240.26p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 47.22kWh, PV 0.0kWh 2026-08-14 21:25:02.958254: Saving plan best values to HA entities 2026-08-14 21:25:03.115473: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 21:25:03.120390: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 21:25:03.125074: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.35kWh, house 6.1kWh, export 0.0kWh, metric 1240.26p, metric10 1264.08p 2026-08-14 21:25:03.200758: Marginal costs baseline metric (no standing charge): 1140.2961 2026-08-14 21:25:03.431667: Marginal energy costs matrix computed: min=21.97 max=31.61 2026-08-14 21:25:03.505886: Rate array import [{'start': 1285, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 35.1p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1285, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 21:25:03.506481: - Your estimated bill for today is £7.35 and tomorrow is £4.36 2026-08-14 21:25:03.506518: - Import rates are very expensive (34.7p - 35.1p) for the next 35 minutes and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 21:25:03.506537: - The battery is currently at 34% and is in eco mode for the next 14 hours. 2026-08-14 21:25:03.506551: - For the next 48 hours there will be no solar generation. 2026-08-14 21:25:03.506579: - You will run out of battery in 3 and three quarters hours. 2026-08-14 21:25:03.506597: - Your next charge slot will be in 14 hours where import rates will be cheap (15.5p). 2026-08-14 21:25:03.506611: 2026-08-14 21:25:03.559703: Plan calculation took 1.05 seconds 2026-08-14 21:25:03.563024: No high rate period found 2026-08-14 21:25:03.606288: Import threshold used for optimisation was 27.18p 2026-08-14 21:25:03.654040: Low import rate windows [0: 08-14 21:00:00 - 08-14 21:30:00 @ 35.1, 1: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 2: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 3: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 4: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 5: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 6: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 7: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 8: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 9: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 10: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 11: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 12: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 13: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 14: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 15: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 16: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 17: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 18: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 19: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 20: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 21: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 22: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 23: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 24: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 25: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 26: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 27: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 28: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 29: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 30: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 31: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 32: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 33: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 34: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 35: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 36: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 37: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 38: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 39: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 40: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 41: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 42: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 43: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 44: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 45: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 46: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 47: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 48: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 49: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 50: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 51: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 52: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 53: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 54: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 55: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 56: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 57: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 58: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 59: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 60: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 61: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 62: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 63: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 64: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 65: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 66: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 67: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 68: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 69: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 70: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 71: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 72: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 73: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 74: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 75: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 76: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 77: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 78: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 79: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 80: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 81: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 82: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 83: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 84: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 85: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 86: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 87: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 88: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 89: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 90: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 91: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 92: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 93: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 94: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71] 2026-08-14 21:25:03.661015: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 34%, target 19% 2026-08-14 21:25:03.661128: Inverter 0 disabled charge window while waiting for schedule (now 08-14 21:25:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 21:25:03.661228: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:25:03.661471: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:25:03.661551: No export window planned 2026-08-14 21:25:03.661668: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 21:25:03.661699: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:25:03.661835: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:25:03.662003: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 21:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 21:25:03.662054: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 21:25:03.662107: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 21:25:03.662187: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:25:03.662217: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:25:03.662241: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:25:03.662261: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:25:03.662285: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:25:03.662304: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:25:03.662324: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:25:03.662372: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:25:03.662395: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:25:03.662415: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:25:03.662436: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:25:03.662456: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:25:03.662476: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:25:03.662495: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:25:03.662516: Inverter 0 count register writes 0 2026-08-14 21:25:03.676135: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 21:25:03.676281: Recompute is saving previous plan... 2026-08-14 21:25:03.678829: Best charge window [ 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0% ] 2026-08-14 21:25:03.678904: Best export window [ ] 2026-08-14 21:25:03.679609: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 21:25:03.682125: Load divergence over 8.0 hours mean 490.61W, min 376.2W, max 1057.8W, std dev 120.5W, divergence 12.28% 2026-08-14 21:25:03.696789: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 21:25:03.696869: LoadML is_calculating False 2026-08-14 21:25:03.696920: Creating pool of 12 processes to match your CPU count 2026-08-14 21:25:03.775961: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 21:25:03.777829: Optimise levels pass started at 2026-08-14 21:25:03 2026-08-14 21:25:03.777891: Optimise all windows, total charge 94 export 1 2026-08-14 21:25:04.892787: >> Region optimisation pass width 960 gives best_metric 1213.32p, best_cost 1220.74p, best_cycle 37.92kWh, best_import 28.92kWh 2026-08-14 21:25:05.319041: >> Region optimisation pass width 480 gives best_metric 1213.32p, best_cost 1220.74p, best_cycle 37.92kWh, best_import 28.92kWh 2026-08-14 21:25:05.836919: >> Region optimisation pass width 240 gives best_metric 1213.32p, best_cost 1220.74p, best_cycle 37.92kWh, best_import 28.92kWh 2026-08-14 21:25:06.870435: >> Region optimisation pass width 120 gives best_metric 1213.32p, best_cost 1220.74p, best_cycle 37.92kWh, best_import 28.92kWh 2026-08-14 21:25:06.870954: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 76 2026-08-14 21:25:06.871062: Optimise levels pass ended at 2026-08-14 21:25:06, duration 3.1 seconds tried 312 combinations 2026-08-14 21:25:06.871135: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1213.32p, best_keep 0kWh, best_cycle 37.92kWh, best_carbon 0kg, best_import 28.92kWh 2026-08-14 21:25:06.894525: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 0, 13.5, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 21:25:11.944554: Tweak plan optimisation started metric 1115.13p, cost 1124.52p 2026-08-14 21:25:12.263179: Tweak optimisation finished metric 1115.13p, cost 1124.52p, metric_keep 0kWh, cycle 28.96kWh, carbon 0kg, import 22.43kWh, changed 8 window(s) 2026-08-14 21:25:12.283560: Swap charge optimisation started metric 1115.13p, cost 1124.52p, min_improvement_swap 0.1p 2026-08-14 21:25:18.547097: Swap charge optimisation finished metric 1115.13p, cost 1124.52p 2026-08-14 21:25:18.647034: Raw charge windows [ 14-08 21:00:00 - 14-08 21:30:00 @ 35.1p 0%, 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 84%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100% ] reserve 1.12 2026-08-14 21:25:18.647622: Unclipped charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 21:30:00 @ 31.97p 100% ] reserve 1.12 2026-08-14 21:25:18.647926: Unfiltered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 21:30:00 @ 31.97p 100% ] reserve 1.12 2026-08-14 21:25:18.648169: Filtered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:30:00 @ 14.59p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 21:30:00 @ 31.97p 100% ] reserve 1.12 2026-08-14 21:25:18.678868: Previous plan best metric is 1115.2 (cost 1124.58) and new plan best metric is 1115.13 (cost 1124.52) 2026-08-14 21:25:18.679049: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 21:25:18.679217: Plan valid is now true after recompute was False 2026-08-14 21:25:18.703893: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1354.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 47.03kWh, PV 0.0kWh 2026-08-14 21:25:18.799770: Battery has 3.67 hours left - now at 5.44kWh 2026-08-14 21:25:18.838384: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1384.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.21kWh, PV 0.0kWh 2026-08-14 21:25:18.906541: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1250.37p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.21kWh, PV 0.0kWh 2026-08-14 21:25:18.986264: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1224.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 47.03kWh, PV 0.0kWh 2026-08-14 21:25:18.986414: Saving plan best values to HA entities 2026-08-14 21:25:19.123640: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 21:25:19.129333: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 21:25:19.135082: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.33kWh, house 6.1kWh, export 0.0kWh, metric 1224.54p, metric10 1250.37p 2026-08-14 21:25:19.210814: Marginal costs baseline metric (no standing charge): 1124.5753 2026-08-14 21:25:19.498804: Marginal energy costs matrix computed: min=21.97 max=31.61 2026-08-14 21:25:19.567241: Rate array import [{'start': 1285, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p - 35.1p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1285, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 21:25:19.567898: - Your estimated bill for today is £7.35 and tomorrow is £4.36 2026-08-14 21:25:19.567937: - Import rates are very expensive (34.7p - 35.1p) for the next 35 minutes and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 21:25:19.567956: - The battery is currently at 34% and is in eco mode for the next 14 hours. 2026-08-14 21:25:19.567971: - For the next 48 hours there will be no solar generation. 2026-08-14 21:25:19.567985: - You will run out of battery in 3 and three quarters hours. 2026-08-14 21:25:19.567998: - Your next charge slot will be in 14 hours where import rates will be cheap (15.5p). 2026-08-14 21:25:19.568012: 2026-08-14 21:25:19.636451: Plan calculation took 15.96 seconds 2026-08-14 21:25:19.636850: Inverter 0: Type SK Sunsynk 2026-08-14 21:25:19.636900: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 21:25:19.637694: Reserve min: 7%, battery_min: 7% 2026-08-14 21:25:19.637794: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 21:25:19.638194: Inverter 0 SoC: 5.44kW 34%, current charge rate 5000W, current discharge rate 5250W, current battery power 571W, current battery voltage 51.2V, grid power -54W, load power 622W, PV Power 0W 2026-08-14 21:25:19.638525: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:25:19.638706: Inverter 0 scheduled charge enable is False 2026-08-14 21:25:19.638765: Inverter 0 charge windows currently [] 2026-08-14 21:25:19.638824: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 21:25:19.638958: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:25:19.638995: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:25:19.639032: Inverter 0 scheduled discharge enable is False 2026-08-14 21:25:19.639162: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:25:19.639199: Inverter 0 discharge windows currently [] 2026-08-14 21:25:19.639222: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:25:19.639244: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:25:19.639261: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:25:19.710593: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 34%, target 19% 2026-08-14 21:25:19.710753: Inverter 0 disabled charge window while waiting for schedule (now 08-14 21:25:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 21:25:19.710825: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:25:19.711018: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:25:19.711101: No export window planned 2026-08-14 21:25:19.711214: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 21:25:19.711249: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:25:19.711382: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:25:19.711601: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 21:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 21:25:19.711681: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 21:25:19.711785: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 21:25:19.711887: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:25:19.711957: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:25:19.711996: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:25:19.712022: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:25:19.712052: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:25:19.712087: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:25:19.712122: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:25:19.712238: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:25:19.712297: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:25:19.712362: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:25:19.712418: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:25:19.712464: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:25:19.712500: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:25:19.712554: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:25:19.712618: Inverter 0 count register writes 0 2026-08-14 21:25:19.733426: Total inverter register writes now 815 2026-08-14 21:25:19.766249: Info: Completed run status Demand 2026-08-14 21:25:19.772786: Info: record_status Demand 2026-08-14 21:25:19.778758: Saved current settings to /config/predbat_config.json 2026-08-14 21:25:19.779032: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 21:25:56.884378: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:25:56.884675: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:25:56.884731: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:25:56.884898: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:25:56.884938: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:25:56.885020: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:25:56.885049: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:28:11.831750: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:28:11.832051: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:28:11.832104: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:28:11.832249: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:28:11.832282: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:28:11.832303: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:28:11.832321: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:30:00.038201: --------------- PredBat - update at 2026-08-14 21:30:00+01:00 with clock skew 0 minutes, minutes now 1290 2026-08-14 21:30:00.038918: Saved current settings to /config/predbat_config.json 2026-08-14 21:30:00.039044: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 95.0 minutes 2026-08-14 21:30:00.039133: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 21:30:00.039260: Autoupdate: Currently up to date 2026-08-14 21:30:00.063549: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 21:30:00.063699: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 21:30:00.063918: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 21:30:00.064472: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 21:30:00.064692: Predbat mode is set to Control charge & discharge 2026-08-14 21:30:00.269831: Found 21602 load_today datapoints going back 28 days 2026-08-14 21:30:00.269995: Using load_power data to fill gaps in load_today data 2026-08-14 21:30:01.117557: Processing 721 30-minute periods for power integration 2026-08-14 21:30:01.317880: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 21:30:01.318025: Car charging hold False, threshold 6.0kWh 2026-08-14 21:30:01.318073: Current data so far today: load 22.45kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 21:30:01.337640: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 21:30:01.338704: Standing charge is set to 49.98p 2026-08-14 21:30:01.378190: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 21:30:01.378301: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 21:30:01.378503: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 655.0 minutes 2026-08-14 21:30:01.378916: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 655.0 minutes 2026-08-14 21:30:01.384813: Loaded 95 datapoints of futurerate analysis 2026-08-14 21:30:01.546833: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41'] 2026-08-14 21:30:01.592790: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 21:30:01.593301: Import rates: min 13.77p, max 43.82p, average 26.01p 2026-08-14 21:30:01.636906: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 21:30:01.637143: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 21:30:01.638847: High export rate found rates in range 99p to -99p 2026-08-14 21:30:01.747857: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 21:30:01.748027: Car 0 charging is not planned as it is not plugged in 2026-08-14 21:30:01.762416: Battery level now 5.44kWh, -1hr ago 5.98kWh, at midnight 2.43kWh, battery value change in the last hour -6.43p, change today 35.57p, rate_forward 11.83p 2026-08-14 21:30:01.762808: Last hour: net energy 0.01kWh, import 0.01kWh, export 0.0kWh, car 0kWh, load 0.5kWh, net cost 0.55p, import 0.55p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 21:30:01.829740: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 21:30:01.829902: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 21:30:01.939799: Using weighted-bucket historical load forecast over 14 days 2026-08-14 21:30:01.975117: Today's load divergence 142.32%, in-day adjustment 140.89%, damping 0.95x, yesterday 146.81% today 140.21% blend 10.42% 2026-08-14 21:30:01.975230: Today's predicted so far 12.1kWh with 0.0kWh car/iBoost excluded, 17.37kWh import ignored, and 12.1kWh forecast extra. 2026-08-14 21:30:01.975263: Today's actual load so far 22.51kWh with 0.0kWh car/iBoost excluded, and 17.37kWh import ignored. 2026-08-14 21:30:02.044747: Inverter 0: Type SK Sunsynk 2026-08-14 21:30:02.044870: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 21:30:02.045874: Reserve min: 7%, battery_min: 7% 2026-08-14 21:30:02.046149: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 21:30:02.046642: Inverter 0 SoC: 5.44kW 34%, current charge rate 5000W, current discharge rate 5250W, current battery power 474W, current battery voltage 51.2V, grid power -53W, load power 528W, PV Power 0W 2026-08-14 21:30:02.046908: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:30:02.047053: Inverter 0 scheduled charge enable is False 2026-08-14 21:30:02.047110: Inverter 0 charge windows currently [] 2026-08-14 21:30:02.047161: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 21:30:02.047366: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:30:02.047427: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:30:02.047502: Inverter 0 scheduled discharge enable is False 2026-08-14 21:30:02.047766: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:30:02.047833: Inverter 0 discharge windows currently [] 2026-08-14 21:30:02.047875: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:30:02.047910: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:30:02.047944: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:30:02.152501: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 21:30:02.152652: Plan was last updated on 2026-08-14 21:25:00+01:00 and is now 5.0 minutes old 2026-08-14 21:30:02.153105: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 21:30:02.153209: Best export window [ ] 2026-08-14 21:30:02.154280: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 21:30:02.158140: Load divergence over 8.0 hours mean 490.74W, min 377.4W, max 1138.2W, std dev 123.24W, divergence 12.56% 2026-08-14 21:30:02.180028: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 21:30:02.180201: LoadML is_calculating False 2026-08-14 21:30:02.180308: Creating pool of 12 processes to match your CPU count 2026-08-14 21:30:02.310537: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1353.07p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 47.13kWh, PV 0.0kWh 2026-08-14 21:30:02.445716: Battery has 3.75 hours left - now at 5.44kWh 2026-08-14 21:30:02.496294: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1383.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.3kWh, PV 0.0kWh 2026-08-14 21:30:02.586804: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1254.45p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.3kWh, PV 0.0kWh 2026-08-14 21:30:02.684467: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1229.78p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 47.13kWh, PV 0.0kWh 2026-08-14 21:30:02.684583: Saving plan best values to HA entities 2026-08-14 21:30:02.860332: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 21:30:02.865145: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 21:30:02.869812: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.83kWh, house 6.01kWh, export 0.0kWh, metric 1229.78p, metric10 1254.45p 2026-08-14 21:30:02.949534: Marginal costs baseline metric (no standing charge): 1129.8096 2026-08-14 21:30:03.219831: Marginal energy costs matrix computed: min=21.65 max=31.43 2026-08-14 21:30:03.316189: Rate array import [{'start': 1290, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1290, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 21:30:03.317115: - Your estimated bill for today is £7.35 and tomorrow is £4.33 2026-08-14 21:30:03.317176: - Import rates are very expensive (34.7p) for the next 30 minutes and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 21:30:03.317199: - The battery is currently at 34% and is in eco mode for the next 14 hours. 2026-08-14 21:30:03.317218: - For the next 48 hours there will be no solar generation. 2026-08-14 21:30:03.317236: - You will run out of battery in 3 and three quarters hours. 2026-08-14 21:30:03.317253: - Your next charge slot will be in 14 hours where import rates will be cheap (15.5p). 2026-08-14 21:30:03.317278: 2026-08-14 21:30:03.383667: Plan calculation took 1.23 seconds 2026-08-14 21:30:03.387468: No high rate period found 2026-08-14 21:30:03.438837: Import threshold used for optimisation was 27.18p 2026-08-14 21:30:03.492922: Low import rate windows [0: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 1: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 2: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 3: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 4: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 5: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 6: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 7: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 8: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 9: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 10: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 11: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 12: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 13: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 14: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 15: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 16: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 17: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 18: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 19: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 20: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 21: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 22: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 23: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 24: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 25: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 26: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 27: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 28: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 29: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 30: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 31: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 32: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 33: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 34: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 35: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 36: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 37: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 38: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 39: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 40: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 41: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 42: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 43: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 44: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 45: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 46: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 47: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 48: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 49: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 50: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 51: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 52: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 53: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 54: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 55: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 56: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 57: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 58: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 59: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 60: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 61: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 62: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 63: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 64: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 65: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 66: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 67: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 68: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 69: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 70: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 71: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 72: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 73: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 74: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 75: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 76: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 77: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 78: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 79: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 80: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 81: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 82: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 83: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 84: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 85: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 86: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 87: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 88: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 89: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 90: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 91: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 92: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 93: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71] 2026-08-14 21:30:03.500930: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 34%, target 19% 2026-08-14 21:30:03.501100: Inverter 0 disabled charge window while waiting for schedule (now 08-14 21:30:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 21:30:03.501210: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:30:03.501437: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:30:03.501512: No export window planned 2026-08-14 21:30:03.501634: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 21:30:03.501669: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:30:03.501781: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:30:03.501929: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 21:30:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 21:30:03.501982: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 21:30:03.502039: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 21:30:03.502124: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:30:03.502160: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:30:03.502184: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:30:03.502204: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:30:03.502225: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:30:03.502245: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:30:03.502265: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:30:03.502317: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:30:03.502346: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:30:03.502367: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:30:03.502386: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:30:03.502405: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:30:03.502424: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:30:03.502444: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:30:03.502460: Inverter 0 count register writes 0 2026-08-14 21:30:03.517444: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 21:30:03.525551: Total inverter register writes now 815 2026-08-14 21:30:03.554256: Info: Completed run status Demand 2026-08-14 21:30:03.559879: Info: record_status Demand 2026-08-14 21:30:03.565880: Saved current settings to /config/predbat_config.json 2026-08-14 21:30:03.566204: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 21:30:41.665356: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:30:41.665657: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:30:41.665741: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:30:41.666684: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:30:41.666751: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:30:41.666776: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:30:41.666794: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:32:41.884762: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:32:41.885036: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:32:41.885083: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:32:41.885253: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:32:41.885324: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:32:41.885345: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:32:41.885362: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:34:42.099793: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:34:42.100077: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:34:42.100122: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:34:42.100267: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:34:42.100332: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:34:42.100355: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:34:42.100373: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:35:00.189431: --------------- PredBat - update at 2026-08-14 21:35:00+01:00 with clock skew 0 minutes, minutes now 1295 2026-08-14 21:35:00.190394: Saved current settings to /config/predbat_config.json 2026-08-14 21:35:00.190618: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 100.0 minutes 2026-08-14 21:35:00.190747: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 21:35:00.190882: Autoupdate: Currently up to date 2026-08-14 21:35:00.210447: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 21:35:00.210603: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 21:35:00.210823: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 21:35:00.211393: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 21:35:00.211512: Predbat mode is set to Control charge & discharge 2026-08-14 21:35:00.409031: Found 21602 load_today datapoints going back 28 days 2026-08-14 21:35:00.409236: Using load_power data to fill gaps in load_today data 2026-08-14 21:35:01.177514: Processing 721 30-minute periods for power integration 2026-08-14 21:35:01.338551: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 21:35:01.338684: Car charging hold False, threshold 6.0kWh 2026-08-14 21:35:01.338722: Current data so far today: load 22.5kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 21:35:01.353879: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 21:35:01.354303: Standing charge is set to 49.98p 2026-08-14 21:35:01.399467: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 21:35:01.399562: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 21:35:01.399755: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 660.0 minutes 2026-08-14 21:35:01.400068: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 660.0 minutes 2026-08-14 21:35:01.404892: Loaded 95 datapoints of futurerate analysis 2026-08-14 21:35:01.532482: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41'] 2026-08-14 21:35:01.572702: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 21:35:01.573249: Import rates: min 13.77p, max 43.82p, average 26.0p 2026-08-14 21:35:01.608099: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 21:35:01.608214: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 21:35:01.609461: High export rate found rates in range 99p to -99p 2026-08-14 21:35:01.695247: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 21:35:01.695372: Car 0 charging is not planned as it is not plugged in 2026-08-14 21:35:01.707121: Battery level now 5.44kWh, -1hr ago 5.92kWh, at midnight 2.43kWh, battery value change in the last hour -5.68p, change today 35.57p, rate_forward 11.83p 2026-08-14 21:35:01.707486: Last hour: net energy 0.01kWh, import 0.01kWh, export 0.0kWh, car 0kWh, load 0.5kWh, net cost 0.37p, import 0.37p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 21:35:01.762730: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 21:35:01.762872: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 21:35:01.842640: Using weighted-bucket historical load forecast over 14 days 2026-08-14 21:35:01.868339: Today's load divergence 142.48%, in-day adjustment 141.01%, damping 0.95x, yesterday 146.81% today 140.36% blend 10.07% 2026-08-14 21:35:01.868443: Today's predicted so far 12.18kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 12.18kWh forecast extra. 2026-08-14 21:35:01.868469: Today's actual load so far 22.65kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 21:35:01.906432: Inverter 0: Type SK Sunsynk 2026-08-14 21:35:01.906528: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 21:35:01.907265: Reserve min: 7%, battery_min: 7% 2026-08-14 21:35:01.907360: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 21:35:01.907773: Inverter 0 SoC: 5.44kW 34%, current charge rate 5000W, current discharge rate 5250W, current battery power 387W, current battery voltage 51.2V, grid power -56W, load power 440W, PV Power 0W 2026-08-14 21:35:01.908126: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:35:01.908345: Inverter 0 scheduled charge enable is False 2026-08-14 21:35:01.908463: Inverter 0 charge windows currently [] 2026-08-14 21:35:01.908525: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 21:35:01.908738: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:35:01.908801: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:35:01.908868: Inverter 0 scheduled discharge enable is False 2026-08-14 21:35:01.909138: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:35:01.909195: Inverter 0 discharge windows currently [] 2026-08-14 21:35:01.909220: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:35:01.909239: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:35:01.909264: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:35:01.995219: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 21:35:01.995335: Plan was last updated on 2026-08-14 21:25:00+01:00 and is now 10.0 minutes old 2026-08-14 21:35:01.995640: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 21:35:01.995689: Best export window [ ] 2026-08-14 21:35:01.996703: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 21:35:02.000291: Load divergence over 8.0 hours mean 492.24W, min 274.8W, max 1243.8W, std dev 140.85W, divergence 14.31% 2026-08-14 21:35:02.021683: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 21:35:02.021810: LoadML is_calculating False 2026-08-14 21:35:02.021872: Creating pool of 12 processes to match your CPU count 2026-08-14 21:35:02.132594: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1352.19p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:20:00, load 47.19kWh, PV 0.0kWh 2026-08-14 21:35:02.247202: Battery has 3.75 hours left - now at 5.44kWh 2026-08-14 21:35:02.288808: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1382.11p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 48.36kWh, PV 0.0kWh 2026-08-14 21:35:02.358307: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1259.03p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 48.36kWh, PV 0.0kWh 2026-08-14 21:35:02.435570: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1235.44p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:20:00, load 47.19kWh, PV 0.0kWh 2026-08-14 21:35:02.435684: Saving plan best values to HA entities 2026-08-14 21:35:02.588896: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 21:35:02.594025: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 21:35:02.599113: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.33kWh, house 5.93kWh, export 0.0kWh, metric 1235.44p, metric10 1259.03p 2026-08-14 21:35:02.675511: Marginal costs baseline metric (no standing charge): 1135.4742 2026-08-14 21:35:02.920149: Marginal energy costs matrix computed: min=21.15 max=31.19 2026-08-14 21:35:02.992604: Rate array import [{'start': 1295, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1295, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 21:35:02.993237: - Your estimated bill for today is £7.35 and tomorrow is £4.31 2026-08-14 21:35:02.993279: - Import rates are very expensive (34.7p) for the next 25 minutes and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 21:35:02.993297: - The battery is currently at 34% and is in eco mode for the next 13 hours. 2026-08-14 21:35:02.993311: - For the next 48 hours there will be no solar generation. 2026-08-14 21:35:02.993325: - You will run out of battery in 3 and three quarters hours. 2026-08-14 21:35:02.993339: - Your next charge slot will be in 13 hours where import rates will be cheap (15.5p). 2026-08-14 21:35:02.993353: 2026-08-14 21:35:03.059014: Plan calculation took 1.06 seconds 2026-08-14 21:35:03.063491: No high rate period found 2026-08-14 21:35:03.122153: Import threshold used for optimisation was 27.18p 2026-08-14 21:35:03.178339: Low import rate windows [0: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 1: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 2: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 3: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 4: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 5: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 6: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 7: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 8: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 9: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 10: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 11: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 12: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 13: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 14: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 15: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 16: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 17: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 18: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 19: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 20: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 21: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 22: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 23: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 24: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 25: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 26: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 27: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 28: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 29: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 30: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 31: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 32: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 33: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 34: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 35: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 36: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 37: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 38: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 39: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 40: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 41: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 42: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 43: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 44: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 45: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 46: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 47: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 48: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 49: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 50: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 51: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 52: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 53: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 54: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 55: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 56: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 57: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 58: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 59: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 60: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 61: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 62: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 63: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 64: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 65: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 66: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 67: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 68: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 69: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 70: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 71: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 72: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 73: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 74: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 75: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 76: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 77: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 78: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 79: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 80: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 81: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 82: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 83: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 84: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 85: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 86: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 87: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 88: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 89: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 90: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 91: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 92: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 93: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 94: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67] 2026-08-14 21:35:03.185820: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 34%, target 19% 2026-08-14 21:35:03.185954: Inverter 0 disabled charge window while waiting for schedule (now 08-14 21:35:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 21:35:03.186094: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:35:03.186366: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:35:03.186461: No export window planned 2026-08-14 21:35:03.186626: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 21:35:03.186672: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:35:03.186833: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:35:03.187026: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 21:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 21:35:03.187089: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 21:35:03.187182: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 21:35:03.187309: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:35:03.187375: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:35:03.187423: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:35:03.187467: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:35:03.187518: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:35:03.187568: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:35:03.187641: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:35:03.187714: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:35:03.187746: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:35:03.187768: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:35:03.187787: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:35:03.187806: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:35:03.187824: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:35:03.187847: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:35:03.187863: Inverter 0 count register writes 0 2026-08-14 21:35:03.202916: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 21:35:03.203087: Recompute is saving previous plan... 2026-08-14 21:35:03.207334: Best charge window [ 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0% ] 2026-08-14 21:35:03.207439: Best export window [ ] 2026-08-14 21:35:03.208433: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 21:35:03.211470: Load divergence over 8.0 hours mean 492.24W, min 274.8W, max 1243.8W, std dev 140.85W, divergence 14.31% 2026-08-14 21:35:03.226489: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 21:35:03.226596: LoadML is_calculating False 2026-08-14 21:35:03.226657: Creating pool of 12 processes to match your CPU count 2026-08-14 21:35:03.304496: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 21:35:03.306696: Optimise levels pass started at 2026-08-14 21:35:03 2026-08-14 21:35:03.306766: Optimise all windows, total charge 94 export 1 2026-08-14 21:35:04.378132: >> Region optimisation pass width 960 gives best_metric 1209.9p, best_cost 1219.63p, best_cycle 38.25kWh, best_import 29.01kWh 2026-08-14 21:35:04.789903: >> Region optimisation pass width 480 gives best_metric 1209.9p, best_cost 1219.63p, best_cycle 38.25kWh, best_import 29.01kWh 2026-08-14 21:35:05.264000: >> Region optimisation pass width 240 gives best_metric 1209.9p, best_cost 1219.63p, best_cycle 38.25kWh, best_import 29.01kWh 2026-08-14 21:35:06.428310: >> Region optimisation pass width 120 gives best_metric 1209.9p, best_cost 1219.63p, best_cycle 38.25kWh, best_import 29.01kWh 2026-08-14 21:35:06.428689: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 75 2026-08-14 21:35:06.428773: Optimise levels pass ended at 2026-08-14 21:35:06, duration 3.1 seconds tried 320 combinations 2026-08-14 21:35:06.428843: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1209.9p, best_keep 0kWh, best_cycle 38.25kWh, best_carbon 0kg, best_import 29.01kWh 2026-08-14 21:35:06.454036: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 0, 16.0, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 21:35:11.466381: Tweak plan optimisation started metric 1110.51p, cost 1119.91p 2026-08-14 21:35:11.785491: Tweak optimisation finished metric 1110.51p, cost 1119.91p, metric_keep 0kWh, cycle 28.96kWh, carbon 0kg, import 22.26kWh, changed 8 window(s) 2026-08-14 21:35:11.806645: Swap charge optimisation started metric 1110.51p, cost 1119.91p, min_improvement_swap 0.1p 2026-08-14 21:35:19.282719: Swap charge optimisation finished metric 1110.51p, cost 1119.91p 2026-08-14 21:35:19.396263: Raw charge windows [ 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100% ] reserve 1.12 2026-08-14 21:35:19.397029: Unclipped charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:00:00 @ 31.82p 100% ] reserve 1.12 2026-08-14 21:35:19.397427: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:00:00 @ 31.82p 100% ] reserve 1.12 2026-08-14 21:35:19.397750: Filtered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:30:00 @ 14.59p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:00:00 @ 31.82p 100% ] reserve 1.12 2026-08-14 21:35:19.439068: Previous plan best metric is 1110.51 (cost 1119.91) and new plan best metric is 1110.51 (cost 1119.91) 2026-08-14 21:35:19.439339: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 21:35:19.439569: Plan valid is now true after recompute was False 2026-08-14 21:35:19.469700: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1349.5p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:20:00, load 47.01kWh, PV 0.0kWh 2026-08-14 21:35:19.584516: Battery has 3.75 hours left - now at 5.44kWh 2026-08-14 21:35:19.629433: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1379.3p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 48.18kWh, PV 0.0kWh 2026-08-14 21:35:19.706164: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1245.48p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 48.18kWh, PV 0.0kWh 2026-08-14 21:35:19.786770: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1219.88p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:20:00, load 47.01kWh, PV 0.0kWh 2026-08-14 21:35:19.786871: Saving plan best values to HA entities 2026-08-14 21:35:19.947886: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 21:35:19.954456: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 21:35:19.961336: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.32kWh, house 5.93kWh, export 0.0kWh, metric 1219.88p, metric10 1245.48p 2026-08-14 21:35:20.049186: Marginal costs baseline metric (no standing charge): 1119.9095 2026-08-14 21:35:20.337937: Marginal energy costs matrix computed: min=21.15 max=31.19 2026-08-14 21:35:20.402808: Rate array import [{'start': 1295, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1295, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 21:35:20.403463: - Your estimated bill for today is £7.35 and tomorrow is £4.31 2026-08-14 21:35:20.403502: - Import rates are very expensive (34.7p) for the next 25 minutes and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 21:35:20.403520: - The battery is currently at 34% and is in eco mode for the next 13 hours. 2026-08-14 21:35:20.403535: - For the next 48 hours there will be no solar generation. 2026-08-14 21:35:20.403549: - You will run out of battery in 3 and three quarters hours. 2026-08-14 21:35:20.403563: - Your next charge slot will be in 13 hours where import rates will be cheap (15.5p). 2026-08-14 21:35:20.403577: 2026-08-14 21:35:20.459493: Plan calculation took 17.26 seconds 2026-08-14 21:35:20.459878: Inverter 0: Type SK Sunsynk 2026-08-14 21:35:20.459934: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 21:35:20.460566: Reserve min: 7%, battery_min: 7% 2026-08-14 21:35:20.460669: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 21:35:20.461009: Inverter 0 SoC: 5.34kW 33%, current charge rate 5000W, current discharge rate 5250W, current battery power 376W, current battery voltage 51.2V, grid power -54W, load power 430W, PV Power 0W 2026-08-14 21:35:20.461248: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:35:20.461365: Inverter 0 scheduled charge enable is False 2026-08-14 21:35:20.461424: Inverter 0 charge windows currently [] 2026-08-14 21:35:20.461457: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 21:35:20.461613: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:35:20.461651: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:35:20.461694: Inverter 0 scheduled discharge enable is False 2026-08-14 21:35:20.461855: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:35:20.461893: Inverter 0 discharge windows currently [] 2026-08-14 21:35:20.461914: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:35:20.461948: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:35:20.461979: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:35:20.514292: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 33%, target 19% 2026-08-14 21:35:20.514446: Inverter 0 disabled charge window while waiting for schedule (now 08-14 21:35:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 21:35:20.514542: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:35:20.514753: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:35:20.514837: No export window planned 2026-08-14 21:35:20.514952: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 21:35:20.514988: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:35:20.515119: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:35:20.515280: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 21:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 21:35:20.515333: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 21:35:20.515388: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 21:35:20.515478: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:35:20.515521: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:35:20.515552: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:35:20.515577: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:35:20.515618: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:35:20.515651: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:35:20.515676: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:35:20.515738: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:35:20.515772: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:35:20.515798: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:35:20.515824: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:35:20.515848: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:35:20.515878: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:35:20.515931: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:35:20.515959: Inverter 0 count register writes 0 2026-08-14 21:35:20.536461: Total inverter register writes now 815 2026-08-14 21:35:20.583214: Info: Completed run status Demand 2026-08-14 21:35:20.590251: Info: record_status Demand 2026-08-14 21:35:20.596593: Saved current settings to /config/predbat_config.json 2026-08-14 21:35:20.596921: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 21:35:56.714625: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:35:56.714942: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:35:56.714985: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:35:56.715159: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:35:56.715197: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:35:56.715218: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:35:56.715235: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:37:56.926638: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:37:56.927049: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:37:56.927162: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:37:56.927318: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:37:56.927359: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:37:56.927383: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:37:56.927421: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:39:57.146601: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:39:57.146907: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:39:57.146975: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:39:57.147151: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:39:57.147203: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:39:57.147225: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:39:57.147243: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:40:00.228251: --------------- PredBat - update at 2026-08-14 21:40:00+01:00 with clock skew 0 minutes, minutes now 1300 2026-08-14 21:40:00.229153: Saved current settings to /config/predbat_config.json 2026-08-14 21:40:00.229289: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 105.0 minutes 2026-08-14 21:40:00.229384: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 21:40:00.229566: Autoupdate: Currently up to date 2026-08-14 21:40:00.247980: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 21:40:00.248095: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 21:40:00.248274: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 21:40:00.248837: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 21:40:00.249086: Predbat mode is set to Control charge & discharge 2026-08-14 21:40:00.434822: Found 21602 load_today datapoints going back 28 days 2026-08-14 21:40:00.434968: Using load_power data to fill gaps in load_today data 2026-08-14 21:40:01.146757: Processing 721 30-minute periods for power integration 2026-08-14 21:40:01.349608: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 21:40:01.349742: Car charging hold False, threshold 6.0kWh 2026-08-14 21:40:01.349787: Current data so far today: load 22.55kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 21:40:01.368524: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 21:40:01.369063: Standing charge is set to 49.98p 2026-08-14 21:40:01.416668: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 21:40:01.416775: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 21:40:01.417035: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 665.0 minutes 2026-08-14 21:40:01.417552: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 665.0 minutes 2026-08-14 21:40:01.424040: Loaded 95 datapoints of futurerate analysis 2026-08-14 21:40:01.568168: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41'] 2026-08-14 21:40:01.604262: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 21:40:01.604678: Import rates: min 13.77p, max 43.82p, average 26.0p 2026-08-14 21:40:01.639625: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 21:40:01.639745: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 21:40:01.640895: High export rate found rates in range 99p to -99p 2026-08-14 21:40:01.725227: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 21:40:01.725352: Car 0 charging is not planned as it is not plugged in 2026-08-14 21:40:01.737973: Battery level now 5.44kWh, -1hr ago 5.78kWh, at midnight 2.43kWh, battery value change in the last hour -4.07p, change today 35.57p, rate_forward 11.83p 2026-08-14 21:40:01.738282: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.5kWh, net cost 0.18p, import 0.18p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 21:40:01.795783: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 21:40:01.795998: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 21:40:01.881965: Using weighted-bucket historical load forecast over 14 days 2026-08-14 21:40:01.909717: Today's load divergence 142.43%, in-day adjustment 140.94%, damping 0.95x, yesterday 146.81% today 140.31% blend 9.72% 2026-08-14 21:40:01.909850: Today's predicted so far 12.19kWh with 0.0kWh car/iBoost excluded, 17.18kWh import ignored, and 12.19kWh forecast extra. 2026-08-14 21:40:01.909914: Today's actual load so far 22.65kWh with 0.0kWh car/iBoost excluded, and 17.18kWh import ignored. 2026-08-14 21:40:01.949054: Inverter 0: Type SK Sunsynk 2026-08-14 21:40:01.949154: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 21:40:01.949683: Reserve min: 7%, battery_min: 7% 2026-08-14 21:40:01.949761: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 21:40:01.950054: Inverter 0 SoC: 5.28kW 33%, current charge rate 5000W, current discharge rate 5250W, current battery power 470W, current battery voltage 51.2V, grid power -55W, load power 522W, PV Power 0W 2026-08-14 21:40:01.950223: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:40:01.950314: Inverter 0 scheduled charge enable is False 2026-08-14 21:40:01.950341: Inverter 0 charge windows currently [] 2026-08-14 21:40:01.950367: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 21:40:01.950469: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:40:01.950506: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:40:01.950541: Inverter 0 scheduled discharge enable is False 2026-08-14 21:40:01.950713: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:40:01.950758: Inverter 0 discharge windows currently [] 2026-08-14 21:40:01.950782: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:40:01.950800: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:40:01.950821: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:40:02.024237: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 21:40:02.024352: Plan was last updated on 2026-08-14 21:35:00+01:00 and is now 5.0 minutes old 2026-08-14 21:40:02.024646: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 21:40:02.024718: Best export window [ ] 2026-08-14 21:40:02.026153: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 21:40:02.029988: Load divergence over 8.0 hours mean 487.53W, min 274.8W, max 1206.0W, std dev 135.48W, divergence 13.89% 2026-08-14 21:40:02.051303: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 21:40:02.051443: LoadML is_calculating False 2026-08-14 21:40:02.051511: Creating pool of 12 processes to match your CPU count 2026-08-14 21:40:02.197738: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1353.37p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 47.09kWh, PV 0.0kWh 2026-08-14 21:40:02.325068: Battery has 3.58 hours left - now at 5.28kWh 2026-08-14 21:40:02.372076: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1383.15p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.26kWh, PV 0.0kWh 2026-08-14 21:40:02.446189: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1254.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.26kWh, PV 0.0kWh 2026-08-14 21:40:02.521730: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1230.11p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 47.09kWh, PV 0.0kWh 2026-08-14 21:40:02.522163: Saving plan best values to HA entities 2026-08-14 21:40:02.692641: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 21:40:02.697411: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 21:40:02.703271: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.82kWh, house 6.03kWh, export 0.0kWh, metric 1230.11p, metric10 1254.62p 2026-08-14 21:40:02.813505: Marginal costs baseline metric (no standing charge): 1130.142 2026-08-14 21:40:03.048765: Marginal energy costs matrix computed: min=20.65 max=31.02 2026-08-14 21:40:03.131236: Rate array import [{'start': 1300, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1300, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 21:40:03.132097: - Your estimated bill for today is £7.35 and tomorrow is £4.33 2026-08-14 21:40:03.132149: - Import rates are very expensive (34.7p) for the next 20 minutes and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 21:40:03.132172: - The battery is currently at 33% and is in eco mode for the next 13 hours. 2026-08-14 21:40:03.132192: - For the next 48 hours there will be no solar generation. 2026-08-14 21:40:03.132218: - You will run out of battery in 3 and a half hours. 2026-08-14 21:40:03.132258: - Your next charge slot will be in 13 hours where import rates will be cheap (15.5p). 2026-08-14 21:40:03.132292: 2026-08-14 21:40:03.190047: Plan calculation took 1.17 seconds 2026-08-14 21:40:03.193890: No high rate period found 2026-08-14 21:40:03.249615: Import threshold used for optimisation was 17.0p 2026-08-14 21:40:03.310460: Low import rate windows [0: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 1: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 2: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 3: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 4: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 5: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 6: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 7: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 8: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 9: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 10: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 11: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 12: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 13: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 14: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 15: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 16: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 17: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 18: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 19: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 20: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 21: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 22: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 23: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 24: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 25: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 26: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 27: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 28: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 29: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 30: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 31: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 32: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 33: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 34: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 35: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 36: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 37: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 38: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 39: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 40: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 41: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 42: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 43: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 44: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 45: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 46: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 47: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 48: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 49: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 50: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 51: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 52: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 53: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 54: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 55: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 56: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 57: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 58: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 59: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 60: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 61: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 62: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 63: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 64: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 65: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 66: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 67: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 68: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 69: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 70: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 71: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 72: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 73: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 74: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 75: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 76: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 77: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 78: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 79: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 80: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 81: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 82: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 83: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 84: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 85: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 86: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 87: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 88: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 89: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 90: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 91: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 92: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 93: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 94: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67] 2026-08-14 21:40:03.319293: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 33%, target 19% 2026-08-14 21:40:03.319447: Inverter 0 disabled charge window while waiting for schedule (now 08-14 21:40:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 21:40:03.319569: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:40:03.319846: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:40:03.319961: No export window planned 2026-08-14 21:40:03.320091: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 21:40:03.320127: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:40:03.320295: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:40:03.320481: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 21:40:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 21:40:03.320545: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 21:40:03.320613: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 21:40:03.320704: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:40:03.320748: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:40:03.320777: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:40:03.320810: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:40:03.320852: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:40:03.320898: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:40:03.320938: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:40:03.321055: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:40:03.321096: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:40:03.321123: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:40:03.321147: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:40:03.321170: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:40:03.321193: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:40:03.321220: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:40:03.321246: Inverter 0 count register writes 0 2026-08-14 21:40:03.339570: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 21:40:03.345073: Total inverter register writes now 815 2026-08-14 21:40:03.378990: Info: Completed run status Demand 2026-08-14 21:40:03.384997: Info: record_status Demand 2026-08-14 21:40:03.391646: Saved current settings to /config/predbat_config.json 2026-08-14 21:40:03.391982: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 21:40:41.495429: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:40:41.495722: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:40:41.495763: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:40:41.495950: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:40:41.495996: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:40:41.496018: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:40:41.496053: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:42:41.717496: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:42:41.717741: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:42:41.717802: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:42:41.718004: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:42:41.718044: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:42:41.718065: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:42:41.718083: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:44:41.947333: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:44:41.947584: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:44:41.947656: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:44:41.947817: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:44:41.947869: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:44:41.947890: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:44:41.947907: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:45:00.053725: --------------- PredBat - update at 2026-08-14 21:45:00+01:00 with clock skew 0 minutes, minutes now 1305 2026-08-14 21:45:00.054536: Saved current settings to /config/predbat_config.json 2026-08-14 21:45:00.054671: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 110.0 minutes 2026-08-14 21:45:00.054782: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 21:45:00.054913: Autoupdate: Currently up to date 2026-08-14 21:45:00.078132: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 21:45:00.078278: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 21:45:00.078457: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 21:45:00.078977: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 21:45:00.079134: Predbat mode is set to Control charge & discharge 2026-08-14 21:45:00.279839: Found 21602 load_today datapoints going back 28 days 2026-08-14 21:45:00.279983: Using load_power data to fill gaps in load_today data 2026-08-14 21:45:01.116489: Processing 721 30-minute periods for power integration 2026-08-14 21:45:01.312237: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 21:45:01.312378: Car charging hold False, threshold 6.0kWh 2026-08-14 21:45:01.312426: Current data so far today: load 22.6kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 21:45:01.331690: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 21:45:01.332207: Standing charge is set to 49.98p 2026-08-14 21:45:01.371266: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 21:45:01.371376: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 21:45:01.371579: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 670.0 minutes 2026-08-14 21:45:01.371963: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 670.0 minutes 2026-08-14 21:45:01.377922: Loaded 95 datapoints of futurerate analysis 2026-08-14 21:45:01.532050: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41'] 2026-08-14 21:45:01.578917: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 21:45:01.579409: Import rates: min 13.77p, max 43.82p, average 25.99p 2026-08-14 21:45:01.622482: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 21:45:01.622606: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 21:45:01.623944: High export rate found rates in range 99p to -99p 2026-08-14 21:45:01.726847: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 21:45:01.726998: Car 0 charging is not planned as it is not plugged in 2026-08-14 21:45:01.740167: Battery level now 5.28kWh, -1hr ago 5.76kWh, at midnight 2.43kWh, battery value change in the last hour -5.68p, change today 33.68p, rate_forward 11.83p 2026-08-14 21:45:01.740550: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.5kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 21:45:01.803029: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 21:45:01.803203: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 21:45:01.890554: Using weighted-bucket historical load forecast over 14 days 2026-08-14 21:45:01.918770: Today's load divergence 142.4%, in-day adjustment 140.9%, damping 0.95x, yesterday 146.81% today 140.28% blend 9.38% 2026-08-14 21:45:01.918863: Today's predicted so far 12.21kWh with 0.0kWh car/iBoost excluded, 17.19kWh import ignored, and 12.21kWh forecast extra. 2026-08-14 21:45:01.918892: Today's actual load so far 22.65kWh with 0.0kWh car/iBoost excluded, and 17.19kWh import ignored. 2026-08-14 21:45:01.954881: Inverter 0: Type SK Sunsynk 2026-08-14 21:45:01.954977: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 21:45:01.955554: Reserve min: 7%, battery_min: 7% 2026-08-14 21:45:01.955644: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 21:45:01.955947: Inverter 0 SoC: 5.28kW 33%, current charge rate 5000W, current discharge rate 5250W, current battery power 370W, current battery voltage 51.2V, grid power -54W, load power 421W, PV Power 0W 2026-08-14 21:45:01.956204: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:45:01.956306: Inverter 0 scheduled charge enable is False 2026-08-14 21:45:01.956337: Inverter 0 charge windows currently [] 2026-08-14 21:45:01.956363: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 21:45:01.956513: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:45:01.956557: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:45:01.956594: Inverter 0 scheduled discharge enable is False 2026-08-14 21:45:01.956720: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:45:01.956757: Inverter 0 discharge windows currently [] 2026-08-14 21:45:01.956779: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:45:01.956797: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:45:01.956819: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:45:02.029486: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 21:45:02.029634: Plan was last updated on 2026-08-14 21:35:00+01:00 and is now 10.0 minutes old 2026-08-14 21:45:02.029889: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 21:45:02.029934: Best export window [ ] 2026-08-14 21:45:02.030622: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 21:45:02.033164: Load divergence over 8.0 hours mean 484.46W, min 279.0W, max 1164.0W, std dev 129.61W, divergence 13.38% 2026-08-14 21:45:02.049236: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 21:45:02.049361: LoadML is_calculating False 2026-08-14 21:45:02.049421: Creating pool of 12 processes to match your CPU count 2026-08-14 21:45:02.164935: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1353.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 47.18kWh, PV 0.0kWh 2026-08-14 21:45:02.282726: Battery has 3.5 hours left - now at 5.28kWh 2026-08-14 21:45:02.324905: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1382.81p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 48.35kWh, PV 0.0kWh 2026-08-14 21:45:02.403581: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1259.72p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 48.35kWh, PV 0.0kWh 2026-08-14 21:45:02.481722: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1236.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 47.18kWh, PV 0.0kWh 2026-08-14 21:45:02.481812: Saving plan best values to HA entities 2026-08-14 21:45:02.627666: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 21:45:02.633810: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 21:45:02.639245: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.34kWh, house 5.96kWh, export 0.0kWh, metric 1236.27p, metric10 1259.72p 2026-08-14 21:45:02.706784: Marginal costs baseline metric (no standing charge): 1136.3 2026-08-14 21:45:02.974241: Marginal energy costs matrix computed: min=20.15 max=30.82 2026-08-14 21:45:03.063260: Rate array import [{'start': 1305, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1305, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 21:45:03.063967: - Your estimated bill for today is £7.35 and tomorrow is £4.32 2026-08-14 21:45:03.064040: - Import rates are very expensive (34.7p) for the next 15 minutes and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 21:45:03.064098: - The battery is currently at 33% and is in eco mode for the next 13 hours. 2026-08-14 21:45:03.064133: - For the next 48 hours there will be no solar generation. 2026-08-14 21:45:03.064158: - You will run out of battery in 3 and a half hours. 2026-08-14 21:45:03.064184: - Your next charge slot will be in 13 hours where import rates will be cheap (15.5p). 2026-08-14 21:45:03.064215: 2026-08-14 21:45:03.136485: Plan calculation took 1.11 seconds 2026-08-14 21:45:03.140348: No high rate period found 2026-08-14 21:45:03.209461: Import threshold used for optimisation was 17.0p 2026-08-14 21:45:03.263287: Low import rate windows [0: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 1: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 2: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 3: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 4: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 5: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 6: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 7: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 8: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 9: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 10: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 11: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 12: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 13: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 14: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 15: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 16: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 17: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 18: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 19: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 20: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 21: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 22: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 23: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 24: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 25: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 26: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 27: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 28: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 29: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 30: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 31: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 32: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 33: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 34: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 35: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 36: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 37: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 38: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 39: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 40: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 41: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 42: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 43: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 44: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 45: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 46: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 47: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 48: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 49: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 50: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 51: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 52: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 53: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 54: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 55: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 56: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 57: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 58: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 59: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 60: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 61: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 62: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 63: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 64: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 65: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 66: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 67: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 68: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 69: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 70: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 71: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 72: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 73: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 74: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 75: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 76: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 77: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 78: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 79: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 80: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 81: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 82: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 83: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 84: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 85: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 86: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 87: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 88: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 89: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 90: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 91: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 92: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 93: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 94: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67] 2026-08-14 21:45:03.271446: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 33%, target 19% 2026-08-14 21:45:03.271590: Inverter 0 disabled charge window while waiting for schedule (now 08-14 21:45:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 21:45:03.271705: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:45:03.271977: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:45:03.272083: No export window planned 2026-08-14 21:45:03.272231: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 21:45:03.272270: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:45:03.272411: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:45:03.272593: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 21:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 21:45:03.272657: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 21:45:03.272730: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 21:45:03.272821: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:45:03.272865: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:45:03.272894: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:45:03.272918: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:45:03.272943: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:45:03.273008: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:45:03.273034: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:45:03.273120: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:45:03.273187: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:45:03.273216: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:45:03.273240: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:45:03.273264: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:45:03.273296: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:45:03.273320: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:45:03.273340: Inverter 0 count register writes 0 2026-08-14 21:45:03.289389: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 21:45:03.289563: Recompute is saving previous plan... 2026-08-14 21:45:03.292627: Best charge window [ 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0% ] 2026-08-14 21:45:03.292704: Best export window [ ] 2026-08-14 21:45:03.293545: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 21:45:03.296752: Load divergence over 8.0 hours mean 484.46W, min 279.0W, max 1164.0W, std dev 129.61W, divergence 13.38% 2026-08-14 21:45:03.316215: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 21:45:03.316369: LoadML is_calculating False 2026-08-14 21:45:03.316470: Creating pool of 12 processes to match your CPU count 2026-08-14 21:45:03.409853: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 21:45:03.411850: Optimise levels pass started at 2026-08-14 21:45:03 2026-08-14 21:45:03.411918: Optimise all windows, total charge 94 export 1 2026-08-14 21:45:04.702442: >> Region optimisation pass width 960 gives best_metric 1212.08p, best_cost 1220.45p, best_cycle 38.17kWh, best_import 29.05kWh 2026-08-14 21:45:05.186456: >> Region optimisation pass width 480 gives best_metric 1212.08p, best_cost 1220.45p, best_cycle 38.17kWh, best_import 29.05kWh 2026-08-14 21:45:05.745973: >> Region optimisation pass width 240 gives best_metric 1212.08p, best_cost 1220.45p, best_cycle 38.17kWh, best_import 29.05kWh 2026-08-14 21:45:07.147182: >> Region optimisation pass width 120 gives best_metric 1212.08p, best_cost 1220.45p, best_cycle 38.17kWh, best_import 29.05kWh 2026-08-14 21:45:07.147793: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 75 2026-08-14 21:45:07.147912: Optimise levels pass ended at 2026-08-14 21:45:07, duration 3.7 seconds tried 320 combinations 2026-08-14 21:45:07.148034: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1212.08p, best_keep 0kWh, best_cycle 38.17kWh, best_carbon 0kg, best_import 29.05kWh 2026-08-14 21:45:07.176259: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 0, 16.0, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 21:45:12.411251: Tweak plan optimisation started metric 1111.07p, cost 1120.5p 2026-08-14 21:45:12.716604: Tweak optimisation finished metric 1111.07p, cost 1120.5p, metric_keep 0kWh, cycle 28.81kWh, carbon 0kg, import 22.28kWh, changed 8 window(s) 2026-08-14 21:45:12.736535: Swap charge optimisation started metric 1111.07p, cost 1120.5p, min_improvement_swap 0.1p 2026-08-14 21:45:18.874512: Swap charge optimisation finished metric 1111.07p, cost 1120.5p 2026-08-14 21:45:18.961152: Raw charge windows [ 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100% ] reserve 1.12 2026-08-14 21:45:18.961727: Unclipped charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:00:00 @ 31.82p 100% ] reserve 1.12 2026-08-14 21:45:18.962045: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:00:00 @ 31.82p 100% ] reserve 1.12 2026-08-14 21:45:18.962286: Filtered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:30:00 @ 14.59p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:00:00 @ 31.82p 100% ] reserve 1.12 2026-08-14 21:45:18.998748: Previous plan best metric is 1111.07 (cost 1120.5) and new plan best metric is 1111.07 (cost 1120.5) 2026-08-14 21:45:18.999104: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 21:45:18.999376: Plan valid is now true after recompute was False 2026-08-14 21:45:19.038268: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1350.08p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 46.99kWh, PV 0.0kWh 2026-08-14 21:45:19.155221: Battery has 3.5 hours left - now at 5.28kWh 2026-08-14 21:45:19.196358: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1379.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 48.15kWh, PV 0.0kWh 2026-08-14 21:45:19.276828: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1245.92p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 48.15kWh, PV 0.0kWh 2026-08-14 21:45:19.362988: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1220.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 46.99kWh, PV 0.0kWh 2026-08-14 21:45:19.363099: Saving plan best values to HA entities 2026-08-14 21:45:19.538456: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 21:45:19.543831: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 21:45:19.549478: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.32kWh, house 5.96kWh, export 0.0kWh, metric 1220.47p, metric10 1245.92p 2026-08-14 21:45:19.634823: Marginal costs baseline metric (no standing charge): 1120.4988 2026-08-14 21:45:19.928937: Marginal energy costs matrix computed: min=20.15 max=30.82 2026-08-14 21:45:20.007482: Rate array import [{'start': 1305, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1305, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 21:45:20.008114: - Your estimated bill for today is £7.35 and tomorrow is £4.32 2026-08-14 21:45:20.008154: - Import rates are very expensive (34.7p) for the next 15 minutes and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 21:45:20.008172: - The battery is currently at 33% and is in eco mode for the next 13 hours. 2026-08-14 21:45:20.008187: - For the next 48 hours there will be no solar generation. 2026-08-14 21:45:20.008200: - You will run out of battery in 3 and a half hours. 2026-08-14 21:45:20.008214: - Your next charge slot will be in 13 hours where import rates will be cheap (15.5p). 2026-08-14 21:45:20.008230: 2026-08-14 21:45:20.065389: Plan calculation took 16.78 seconds 2026-08-14 21:45:20.065766: Inverter 0: Type SK Sunsynk 2026-08-14 21:45:20.065858: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 21:45:20.066486: Reserve min: 7%, battery_min: 7% 2026-08-14 21:45:20.066567: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 21:45:20.066879: Inverter 0 SoC: 5.28kW 33%, current charge rate 5000W, current discharge rate 5250W, current battery power 380W, current battery voltage 51.2V, grid power -55W, load power 434W, PV Power 0W 2026-08-14 21:45:20.067127: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:45:20.067249: Inverter 0 scheduled charge enable is False 2026-08-14 21:45:20.067291: Inverter 0 charge windows currently [] 2026-08-14 21:45:20.067324: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 21:45:20.067469: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:45:20.067504: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:45:20.067543: Inverter 0 scheduled discharge enable is False 2026-08-14 21:45:20.067700: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:45:20.067737: Inverter 0 discharge windows currently [] 2026-08-14 21:45:20.067758: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:45:20.067792: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:45:20.067822: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:45:20.130146: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 33%, target 19% 2026-08-14 21:45:20.130391: Inverter 0 disabled charge window while waiting for schedule (now 08-14 21:45:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 21:45:20.130479: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:45:20.130747: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:45:20.130868: No export window planned 2026-08-14 21:45:20.131041: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 21:45:20.131124: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:45:20.131357: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:45:20.131574: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 21:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 21:45:20.131640: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 21:45:20.131698: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 21:45:20.131801: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:45:20.131849: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:45:20.131878: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:45:20.131904: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:45:20.131929: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:45:20.131959: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:45:20.131984: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:45:20.132049: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:45:20.132102: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:45:20.132133: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:45:20.132156: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:45:20.132183: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:45:20.132213: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:45:20.132236: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:45:20.132263: Inverter 0 count register writes 0 2026-08-14 21:45:20.157465: Total inverter register writes now 815 2026-08-14 21:45:20.198499: Info: Completed run status Demand 2026-08-14 21:45:20.205525: Info: record_status Demand 2026-08-14 21:45:20.212930: Saved current settings to /config/predbat_config.json 2026-08-14 21:45:20.213329: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 21:45:57.313769: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:45:57.314012: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:45:57.314056: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:45:57.314264: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:45:57.314318: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:45:57.314340: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:45:57.314359: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:48:11.551192: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:48:11.551490: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:48:11.551533: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:48:11.551736: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:48:11.551789: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:48:11.551822: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:48:11.551855: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:50:00.758130: --------------- PredBat - update at 2026-08-14 21:50:00+01:00 with clock skew 0 minutes, minutes now 1310 2026-08-14 21:50:00.759044: Saved current settings to /config/predbat_config.json 2026-08-14 21:50:00.759197: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 115.0 minutes 2026-08-14 21:50:00.759484: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 21:50:00.759597: Autoupdate: Currently up to date 2026-08-14 21:50:00.778765: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 21:50:00.778888: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 21:50:00.779024: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 21:50:00.779763: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 21:50:00.779873: Predbat mode is set to Control charge & discharge 2026-08-14 21:50:00.951756: Found 21602 load_today datapoints going back 28 days 2026-08-14 21:50:00.951892: Using load_power data to fill gaps in load_today data 2026-08-14 21:50:01.743146: Processing 721 30-minute periods for power integration 2026-08-14 21:50:01.944971: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 21:50:01.945121: Car charging hold False, threshold 6.0kWh 2026-08-14 21:50:01.945169: Current data so far today: load 22.65kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 21:50:01.965025: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 21:50:01.965516: Standing charge is set to 49.98p 2026-08-14 21:50:02.004301: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 21:50:02.004409: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 21:50:02.004622: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 675.0 minutes 2026-08-14 21:50:02.005088: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 675.0 minutes 2026-08-14 21:50:02.011233: Loaded 95 datapoints of futurerate analysis 2026-08-14 21:50:02.167971: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41'] 2026-08-14 21:50:02.208811: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 21:50:02.209305: Import rates: min 13.77p, max 43.82p, average 25.99p 2026-08-14 21:50:02.244875: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 21:50:02.244999: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 21:50:02.246123: High export rate found rates in range 99p to -99p 2026-08-14 21:50:02.337431: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 21:50:02.337581: Car 0 charging is not planned as it is not plugged in 2026-08-14 21:50:02.349761: Battery level now 5.28kWh, -1hr ago 5.76kWh, at midnight 2.43kWh, battery value change in the last hour -5.68p, change today 33.68p, rate_forward 11.83p 2026-08-14 21:50:02.350123: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.5kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 21:50:02.409327: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 21:50:02.409484: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 21:50:02.508790: Using weighted-bucket historical load forecast over 14 days 2026-08-14 21:50:02.550109: Today's load divergence 142.31%, in-day adjustment 140.8%, damping 0.95x, yesterday 146.81% today 140.2% blend 9.03% 2026-08-14 21:50:02.550260: Today's predicted so far 12.24kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 12.24kWh forecast extra. 2026-08-14 21:50:02.550298: Today's actual load so far 22.64kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 21:50:02.587131: Inverter 0: Type SK Sunsynk 2026-08-14 21:50:02.587224: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 21:50:02.587835: Reserve min: 7%, battery_min: 7% 2026-08-14 21:50:02.587910: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 21:50:02.588130: Inverter 0 SoC: 5.28kW 33%, current charge rate 5000W, current discharge rate 5250W, current battery power 1470W, current battery voltage 51.2V, grid power -57W, load power 1526W, PV Power 0W 2026-08-14 21:50:02.588283: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:50:02.588381: Inverter 0 scheduled charge enable is False 2026-08-14 21:50:02.588405: Inverter 0 charge windows currently [] 2026-08-14 21:50:02.588427: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 21:50:02.588518: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:50:02.588548: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:50:02.588577: Inverter 0 scheduled discharge enable is False 2026-08-14 21:50:02.588702: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:50:02.588753: Inverter 0 discharge windows currently [] 2026-08-14 21:50:02.588786: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:50:02.588815: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:50:02.588849: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:50:02.658811: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 21:50:02.658906: Plan was last updated on 2026-08-14 21:45:00+01:00 and is now 5.0 minutes old 2026-08-14 21:50:02.659118: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 21:50:02.659152: Best export window [ ] 2026-08-14 21:50:02.659817: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 21:50:02.662395: Load divergence over 8.0 hours mean 483.51W, min 345.0W, max 1182.6W, std dev 118.89W, divergence 12.29% 2026-08-14 21:50:02.678075: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 21:50:02.678160: LoadML is_calculating False 2026-08-14 21:50:02.678229: Creating pool of 12 processes to match your CPU count 2026-08-14 21:50:02.801466: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1350.3p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:20:00, load 47.09kWh, PV 0.0kWh 2026-08-14 21:50:02.959340: Battery has 3.5 hours left - now at 5.28kWh 2026-08-14 21:50:03.005958: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1379.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 48.25kWh, PV 0.0kWh 2026-08-14 21:50:03.086479: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1251.41p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 48.25kWh, PV 0.0kWh 2026-08-14 21:50:03.163556: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1227.02p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:20:00, load 47.09kWh, PV 0.0kWh 2026-08-14 21:50:03.163642: Saving plan best values to HA entities 2026-08-14 21:50:03.323003: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 21:50:03.327751: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 21:50:03.332520: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.83kWh, house 5.91kWh, export 0.0kWh, metric 1227.02p, metric10 1251.41p 2026-08-14 21:50:03.409164: Marginal costs baseline metric (no standing charge): 1127.0557 2026-08-14 21:50:03.721773: Marginal energy costs matrix computed: min=19.65 max=30.63 2026-08-14 21:50:03.810619: Rate array import [{'start': 1310, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1310, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 21:50:03.811452: - Your estimated bill for today is £7.35 and tomorrow is £4.30 2026-08-14 21:50:03.811524: - Import rates are very expensive (34.7p) for the next 10 minutes and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 21:50:03.811547: - The battery is currently at 33% and is in eco mode for the next 13 hours. 2026-08-14 21:50:03.811565: - For the next 48 hours there will be no solar generation. 2026-08-14 21:50:03.811582: - You will run out of battery in 3 and a half hours. 2026-08-14 21:50:03.811598: - Your next charge slot will be in 13 hours where import rates will be cheap (15.5p). 2026-08-14 21:50:03.811615: 2026-08-14 21:50:03.874851: Plan calculation took 1.22 seconds 2026-08-14 21:50:03.878020: No high rate period found 2026-08-14 21:50:03.921280: Import threshold used for optimisation was 17.0p 2026-08-14 21:50:03.973142: Low import rate windows [0: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 1: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 2: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 3: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 4: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 5: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 6: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 7: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 8: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 9: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 10: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 11: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 12: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 13: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 14: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 15: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 16: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 17: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 18: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 19: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 20: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 21: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 22: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 23: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 24: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 25: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 26: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 27: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 28: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 29: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 30: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 31: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 32: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 33: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 34: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 35: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 36: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 37: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 38: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 39: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 40: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 41: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 42: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 43: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 44: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 45: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 46: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 47: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 48: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 49: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 50: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 51: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 52: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 53: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 54: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 55: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 56: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 57: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 58: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 59: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 60: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 61: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 62: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 63: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 64: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 65: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 66: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 67: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 68: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 69: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 70: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 71: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 72: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 73: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 74: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 75: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 76: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 77: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 78: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 79: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 80: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 81: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 82: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 83: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 84: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 85: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 86: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 87: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 88: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 89: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 90: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 91: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 92: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 93: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 94: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67] 2026-08-14 21:50:03.980905: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 33%, target 19% 2026-08-14 21:50:03.981154: Inverter 0 disabled charge window while waiting for schedule (now 08-14 21:50:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 21:50:03.981362: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:50:03.981711: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:50:03.981811: No export window planned 2026-08-14 21:50:03.981998: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 21:50:03.982045: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:50:03.982249: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:50:03.982540: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 21:50:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 21:50:03.982634: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 21:50:03.982726: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 21:50:03.982882: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:50:03.982938: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:50:03.983002: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:50:03.983068: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:50:03.983123: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:50:03.983182: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:50:03.983240: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:50:03.983313: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:50:03.983371: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:50:03.983399: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:50:03.983428: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:50:03.983482: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:50:03.983545: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:50:03.983601: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:50:03.983651: Inverter 0 count register writes 0 2026-08-14 21:50:04.000219: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 21:50:04.005179: Total inverter register writes now 815 2026-08-14 21:50:04.033196: Info: Completed run status Demand 2026-08-14 21:50:04.038738: Info: record_status Demand 2026-08-14 21:50:04.044411: Saved current settings to /config/predbat_config.json 2026-08-14 21:50:04.044678: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 21:50:22.990514: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 21:50:23.971416: Processing 1345 30-minute periods for power integration 2026-08-14 21:50:24.067977: ML Component: Car charging hold False, car energy reported load False 2026-08-14 21:50:24.153832: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 21:50:24.243730: ML Temperature data points: 49091 2026-08-14 21:50:24.480563: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 21:50:24.513832: ML Component: Data fetch completed, load data age 56.0 days, 16239 data points 2026-08-14 21:50:24.513964: ML Component: No training needed, model age is 1.65 hours 2026-08-14 21:50:24.514043: ML Component: Generating predictions load data age 56.0 days, 16239 data points 2026-08-14 21:50:24.623843: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0481 max_dow {0: 0.10336562496256083, 1: 0.1091281248660758, 2: 0.11737499983031302, 3: 0.11972187416721135, 4: 0.17116562535744162, 5: 0.10228437502831222, 6: 0.10759687461592257} 2026-08-14 21:50:25.096398: ML Component: Generated 576 predictions (total 42.21 kWh over 48h) 2026-08-14 21:50:25.129352: ML Component: Prediction cycle completed 2026-08-14 21:50:25.229691: ML Component: Saved 16239 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 21:50:42.161396: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:50:42.161665: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:50:42.161706: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:50:42.161903: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:50:42.161949: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:50:42.161971: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:50:42.161989: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:52:42.377582: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:52:42.377827: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:52:42.377870: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:52:42.378005: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:52:42.378043: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:52:42.378085: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:52:42.378109: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:54:56.622873: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:54:56.623122: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:54:56.623194: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:54:56.623408: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:54:56.623500: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:54:56.623521: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:54:56.623538: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:55:00.706291: --------------- PredBat - update at 2026-08-14 21:55:00+01:00 with clock skew 0 minutes, minutes now 1315 2026-08-14 21:55:00.707194: Saved current settings to /config/predbat_config.json 2026-08-14 21:55:00.707431: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 120.0 minutes 2026-08-14 21:55:00.707572: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 21:55:00.707695: Autoupdate: Currently up to date 2026-08-14 21:55:00.725899: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 21:55:00.726020: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 21:55:00.726298: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 21:55:00.726947: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 21:55:00.727087: Predbat mode is set to Control charge & discharge 2026-08-14 21:55:00.926488: Found 21602 load_today datapoints going back 28 days 2026-08-14 21:55:00.926634: Using load_power data to fill gaps in load_today data 2026-08-14 21:55:01.739489: Processing 721 30-minute periods for power integration 2026-08-14 21:55:01.935170: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 21:55:01.935597: Car charging hold False, threshold 6.0kWh 2026-08-14 21:55:01.935663: Current data so far today: load 22.7kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 21:55:01.956573: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 21:55:01.957167: Standing charge is set to 49.98p 2026-08-14 21:55:02.022199: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 21:55:02.022371: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 21:55:02.022713: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 680.0 minutes 2026-08-14 21:55:02.023478: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 680.0 minutes 2026-08-14 21:55:02.035914: Loaded 95 datapoints of futurerate analysis 2026-08-14 21:55:02.214368: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41'] 2026-08-14 21:55:02.261946: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 21:55:02.262519: Import rates: min 13.77p, max 43.82p, average 25.98p 2026-08-14 21:55:02.306048: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 21:55:02.306197: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 21:55:02.307647: High export rate found rates in range 99p to -99p 2026-08-14 21:55:02.402263: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 21:55:02.402408: Car 0 charging is not planned as it is not plugged in 2026-08-14 21:55:02.415908: Battery level now 5.28kWh, -1hr ago 5.7kWh, at midnight 2.43kWh, battery value change in the last hour -4.92p, change today 33.68p, rate_forward 11.83p 2026-08-14 21:55:02.416358: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.5kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 21:55:02.474092: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 21:55:02.474265: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 21:55:02.559292: Using weighted-bucket historical load forecast over 14 days 2026-08-14 21:55:02.585601: Today's load divergence 142.09%, in-day adjustment 140.58%, damping 0.95x, yesterday 146.81% today 139.99% blend 8.68% 2026-08-14 21:55:02.585675: Today's predicted so far 12.28kWh with 0.0kWh car/iBoost excluded, 17.38kWh import ignored, and 12.28kWh forecast extra. 2026-08-14 21:55:02.585701: Today's actual load so far 22.59kWh with 0.0kWh car/iBoost excluded, and 17.38kWh import ignored. 2026-08-14 21:55:02.615222: Inverter 0: Type SK Sunsynk 2026-08-14 21:55:02.615328: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 21:55:02.615896: Reserve min: 7%, battery_min: 7% 2026-08-14 21:55:02.615998: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 21:55:02.616289: Inverter 0 SoC: 5.28kW 33%, current charge rate 5000W, current discharge rate 5250W, current battery power 1566W, current battery voltage 51.2V, grid power -55W, load power 1627W, PV Power 0W 2026-08-14 21:55:02.616482: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:55:02.616572: Inverter 0 scheduled charge enable is False 2026-08-14 21:55:02.616601: Inverter 0 charge windows currently [] 2026-08-14 21:55:02.616654: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 21:55:02.616764: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:55:02.616800: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:55:02.616835: Inverter 0 scheduled discharge enable is False 2026-08-14 21:55:02.617003: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:55:02.617046: Inverter 0 discharge windows currently [] 2026-08-14 21:55:02.617068: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:55:02.617091: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:55:02.617113: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:55:02.672860: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 21:55:02.673007: Plan was last updated on 2026-08-14 21:45:00+01:00 and is now 10.0 minutes old 2026-08-14 21:55:02.673283: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 21:55:02.673342: Best export window [ ] 2026-08-14 21:55:02.674151: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 21:55:02.677371: Load divergence over 8.0 hours mean 478.07W, min 378.0W, max 1057.8W, std dev 98.74W, divergence 10.33% 2026-08-14 21:55:02.696500: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 21:55:02.696622: LoadML is_calculating False 2026-08-14 21:55:02.696689: Creating pool of 12 processes to match your CPU count 2026-08-14 21:55:02.810647: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1349.61p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:30:00, load 47.15kWh, PV 0.0kWh 2026-08-14 21:55:02.941630: Battery has 3.58 hours left - now at 5.28kWh 2026-08-14 21:55:02.982093: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1379.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 48.31kWh, PV 0.0kWh 2026-08-14 21:55:03.057958: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1256.07p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 48.31kWh, PV 0.0kWh 2026-08-14 21:55:03.155187: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1232.78p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:30:00, load 47.15kWh, PV 0.0kWh 2026-08-14 21:55:03.155286: Saving plan best values to HA entities 2026-08-14 21:55:03.348113: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 21:55:03.353475: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 21:55:03.358728: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.35kWh, house 5.83kWh, export 0.0kWh, metric 1232.78p, metric10 1256.07p 2026-08-14 21:55:03.434675: Marginal costs baseline metric (no standing charge): 1132.8163 2026-08-14 21:55:03.722159: Marginal energy costs matrix computed: min=19.16 max=30.43 2026-08-14 21:55:03.804503: Rate array import [{'start': 1315, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1315, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 21:55:03.805348: - Your estimated bill for today is £7.35 and tomorrow is £4.28 2026-08-14 21:55:03.805400: - Import rates are very expensive (34.7p) for the next 5 minutes and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 21:55:03.805423: - The battery is currently at 33% and is in eco mode for the next 13 hours. 2026-08-14 21:55:03.805442: - For the next 48 hours there will be no solar generation. 2026-08-14 21:55:03.805465: - You will run out of battery in 3 and a half hours. 2026-08-14 21:55:03.805483: - Your next charge slot will be in 13 hours where import rates will be cheap (15.5p). 2026-08-14 21:55:03.805500: 2026-08-14 21:55:03.863781: Plan calculation took 1.19 seconds 2026-08-14 21:55:03.867698: No high rate period found 2026-08-14 21:55:03.916238: Import threshold used for optimisation was 17.0p 2026-08-14 21:55:03.967454: Low import rate windows [0: 08-14 21:30:00 - 08-14 22:00:00 @ 34.68, 1: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 2: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 3: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 4: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 5: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 6: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 7: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 8: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 9: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 10: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 11: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 12: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 13: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 14: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 15: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 16: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 17: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 18: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 19: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 20: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 21: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 22: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 23: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 24: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 25: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 26: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 27: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 28: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 29: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 30: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 31: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 32: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 33: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 34: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 35: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 36: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 37: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 38: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 39: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 40: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 41: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 42: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 43: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 44: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 45: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 46: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 47: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 48: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 49: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 50: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 51: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 52: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 53: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 54: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 55: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 56: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 57: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 58: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 59: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 60: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 61: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 62: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 63: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 64: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 65: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 66: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 67: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 68: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 69: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 70: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 71: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 72: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 73: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 74: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 75: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 76: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 77: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 78: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 79: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 80: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 81: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 82: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 83: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 84: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 85: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 86: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 87: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 88: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 89: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 90: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 91: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 92: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 93: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 94: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67] 2026-08-14 21:55:03.975682: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 33%, target 19% 2026-08-14 21:55:03.975850: Inverter 0 disabled charge window while waiting for schedule (now 08-14 21:55:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 21:55:03.975976: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:55:03.976262: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:55:03.976384: No export window planned 2026-08-14 21:55:03.976504: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 21:55:03.976570: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:55:03.976707: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:55:03.976920: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 21:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 21:55:03.977025: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 21:55:03.977101: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 21:55:03.977201: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:55:03.977245: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:55:03.977277: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:55:03.977301: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:55:03.977354: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:55:03.977381: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:55:03.977405: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:55:03.977493: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:55:03.977529: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:55:03.977576: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:55:03.977607: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:55:03.977637: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:55:03.977661: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:55:03.977684: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:55:03.977709: Inverter 0 count register writes 0 2026-08-14 21:55:03.993925: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 21:55:03.994124: Recompute is saving previous plan... 2026-08-14 21:55:03.997302: Best charge window [ 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0% ] 2026-08-14 21:55:03.997396: Best export window [ ] 2026-08-14 21:55:03.998212: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 21:55:04.001408: Load divergence over 8.0 hours mean 478.07W, min 378.0W, max 1057.8W, std dev 98.74W, divergence 10.33% 2026-08-14 21:55:04.018699: Calculating data from yesterday for savings calculation 2026-08-14 21:55:04.032515: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 21:55:04.081299: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 21:55:04.097482: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 870.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 21:55:04.116932: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 21:55:04.159663: Yesterday: Predbat disabled was £8.57 (adjusted £8.43) vs £6.21 (adjusted £5.91), saving £2.35 (adjusted £2.52) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 13.25kWh 2026-08-14 21:55:04.247369: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 901.12p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 21:55:04.247532: Yesterday: No Battery/PV system cost predicted was £9.01 (adjusted £9.01) vs £6.21 (adjusted £5.91), saving £2.8 (adjusted £3.1) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 21:55:04.260376: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 21:55:04.260525: LoadML is_calculating False 2026-08-14 21:55:04.260607: Creating pool of 12 processes to match your CPU count 2026-08-14 21:55:04.375439: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 21:55:04.377584: Optimise levels pass started at 2026-08-14 21:55:04 2026-08-14 21:55:04.377638: Optimise all windows, total charge 94 export 1 2026-08-14 21:55:05.449137: >> Region optimisation pass width 960 gives best_metric 1211.15p, best_cost 1220.65p, best_cycle 38.59kWh, best_import 29.19kWh 2026-08-14 21:55:05.867298: >> Region optimisation pass width 480 gives best_metric 1211.15p, best_cost 1220.65p, best_cycle 38.59kWh, best_import 29.19kWh 2026-08-14 21:55:06.341272: >> Region optimisation pass width 240 gives best_metric 1211.15p, best_cost 1220.65p, best_cycle 38.59kWh, best_import 29.19kWh 2026-08-14 21:55:07.521219: >> Region optimisation pass width 120 gives best_metric 1211.15p, best_cost 1220.65p, best_cycle 38.59kWh, best_import 29.19kWh 2026-08-14 21:55:07.521504: Calculated end_record as 08-16 11:30:00 based on best_price 15.74p, next_charge_start 08-15 11:30:00, max_windows 75 2026-08-14 21:55:07.521575: Optimise levels pass ended at 2026-08-14 21:55:07, duration 3.1 seconds tried 320 combinations 2026-08-14 21:55:07.521645: Set best_price_charge_level 16.8p, best_price_export_level 0p, best_price_charge 15.74p, best_cost_export 0p, best_metric 1211.15p, best_keep 0kWh, best_cycle 38.59kWh, best_carbon 0kg, best_import 29.19kWh 2026-08-14 21:55:07.539341: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.74p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 0, 16.0, 13.5, 13.5, 13.5, 13.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 21:55:12.483110: Tweak plan optimisation started metric 1107.65p, cost 1117.1p 2026-08-14 21:55:12.772367: Tweak optimisation finished metric 1107.65p, cost 1117.1p, metric_keep 0kWh, cycle 28.81kWh, carbon 0kg, import 22.16kWh, changed 8 window(s) 2026-08-14 21:55:12.791470: Swap charge optimisation started metric 1107.65p, cost 1117.1p, min_improvement_swap 0.1p 2026-08-14 21:55:19.799898: Swap charge optimisation finished metric 1107.65p, cost 1117.1p 2026-08-14 21:55:19.887788: Raw charge windows [ 14-08 21:30:00 - 14-08 22:00:00 @ 34.68p 0%, 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 19%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 19%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100% ] reserve 1.12 2026-08-14 21:55:19.888382: Unclipped charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 84%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:00:00 @ 31.82p 100% ] reserve 1.12 2026-08-14 21:55:19.888725: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:00:00 @ 31.82p 100% ] reserve 1.12 2026-08-14 21:55:19.888993: Filtered charge windows [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 15:30:00 @ 14.59p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:00:00 @ 31.82p 100% ] reserve 1.12 2026-08-14 21:55:19.919424: Previous plan best metric is 1107.65 (cost 1117.1) and new plan best metric is 1107.65 (cost 1117.1) 2026-08-14 21:55:19.919591: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 21:55:19.919791: Plan valid is now true after recompute was False 2026-08-14 21:55:19.944829: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1346.77p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:30:00, load 46.96kWh, PV 0.0kWh 2026-08-14 21:55:20.052352: Battery has 3.58 hours left - now at 5.28kWh 2026-08-14 21:55:20.105634: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1376.28p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 48.12kWh, PV 0.0kWh 2026-08-14 21:55:20.197954: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1242.36p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 48.12kWh, PV 0.0kWh 2026-08-14 21:55:20.283810: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1217.06p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:30:00, load 46.96kWh, PV 0.0kWh 2026-08-14 21:55:20.283906: Saving plan best values to HA entities 2026-08-14 21:55:20.448795: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 21:55:20.454209: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 21:55:20.459278: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.33kWh, house 5.83kWh, export 0.0kWh, metric 1217.06p, metric10 1242.36p 2026-08-14 21:55:20.527467: Marginal costs baseline metric (no standing charge): 1117.0955 2026-08-14 21:55:20.763974: Marginal energy costs matrix computed: min=19.16 max=30.43 2026-08-14 21:55:20.841608: Rate array import [{'start': 1315, 'end': 1320, 'rate': 'very expensive', 'range': '(34.7p)'}, {'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1315, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 21:55:20.842225: - Your estimated bill for today is £7.35 and tomorrow is £4.28 2026-08-14 21:55:20.842264: - Import rates are very expensive (34.7p) for the next 5 minutes and then expensive (24.6p - 32.0p) for the next 9 hours. 2026-08-14 21:55:20.842282: - The battery is currently at 33% and is in eco mode for the next 13 hours. 2026-08-14 21:55:20.842297: - For the next 48 hours there will be no solar generation. 2026-08-14 21:55:20.842310: - You will run out of battery in 3 and a half hours. 2026-08-14 21:55:20.842335: - Your next charge slot will be in 13 hours where import rates will be cheap (15.5p). 2026-08-14 21:55:20.842352: 2026-08-14 21:55:20.902573: Plan calculation took 16.91 seconds 2026-08-14 21:55:20.902967: Inverter 0: Type SK Sunsynk 2026-08-14 21:55:20.903016: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 21:55:20.903682: Reserve min: 7%, battery_min: 7% 2026-08-14 21:55:20.903773: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 21:55:20.904082: Inverter 0 SoC: 5.15kW 32%, current charge rate 5000W, current discharge rate 5250W, current battery power 1578W, current battery voltage 51.2V, grid power -55W, load power 1641W, PV Power 0W 2026-08-14 21:55:20.904353: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:55:20.904465: Inverter 0 scheduled charge enable is False 2026-08-14 21:55:20.904507: Inverter 0 charge windows currently [] 2026-08-14 21:55:20.904537: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 21:55:20.904653: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:55:20.904689: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:55:20.904726: Inverter 0 scheduled discharge enable is False 2026-08-14 21:55:20.904859: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:55:20.904896: Inverter 0 discharge windows currently [] 2026-08-14 21:55:20.904918: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:55:20.904936: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:55:20.904988: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:55:20.960619: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 32%, target 19% 2026-08-14 21:55:20.960751: Inverter 0 disabled charge window while waiting for schedule (now 08-14 21:55:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 21:55:20.960811: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:55:20.961010: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:55:20.961089: No export window planned 2026-08-14 21:55:20.961188: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 21:55:20.961217: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 21:55:20.961351: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 21:55:20.961492: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 21:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 21:55:20.961530: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 21:55:20.961572: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 21:55:20.961647: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:55:20.961684: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:55:20.961706: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:55:20.961726: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:55:20.961749: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:55:20.961768: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:55:20.961800: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 21:55:20.961846: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:55:20.961873: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:55:20.961893: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:55:20.961916: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:55:20.961955: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:55:20.961976: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:55:20.961995: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 21:55:20.962013: Inverter 0 count register writes 0 2026-08-14 21:55:20.982796: Total inverter register writes now 815 2026-08-14 21:55:21.016351: Info: Completed run status Demand 2026-08-14 21:55:21.022716: Info: record_status Demand 2026-08-14 21:55:21.029716: Saved current settings to /config/predbat_config.json 2026-08-14 21:55:21.030025: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 21:55:57.142560: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:55:57.142877: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:55:57.142955: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:55:57.143166: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:55:57.143212: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:55:57.143233: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:55:57.143251: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 21:57:00.375203: TemperatureAPI: Using coordinates latitude 53.4, longitude -2.2 2026-08-14 21:57:00.544730: TemperatureAPI: Successfully fetched temperature data from Open-Meteo API 2026-08-14 21:57:44.384246: Info: HAHistory: Pruning history data started. 2026-08-14 21:57:44.387291: Info: HAHistory: Pruning history data completed. 2026-08-14 21:57:57.366001: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 21:57:57.366240: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 21:57:57.366283: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 21:57:57.366553: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 21:57:57.366619: Note: Inverter does not support discharge freeze - disabled 2026-08-14 21:57:57.366644: Note: Inverter does not support charge freeze - disabled 2026-08-14 21:57:57.366662: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:00:00.581045: --------------- PredBat - update at 2026-08-14 22:00:00+01:00 with clock skew 0 minutes, minutes now 1320 2026-08-14 22:00:00.581824: Saved current settings to /config/predbat_config.json 2026-08-14 22:00:00.854013: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 22:00:00.854258: Autoupdate: Currently up to date 2026-08-14 22:00:00.885946: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 22:00:00.886125: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 22:00:00.886383: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 22:00:00.887154: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 22:00:00.887339: Predbat mode is set to Control charge & discharge 2026-08-14 22:00:01.103352: Found 21602 load_today datapoints going back 27 days 2026-08-14 22:00:01.103522: Using load_power data to fill gaps in load_today data 2026-08-14 22:00:01.959609: Processing 721 30-minute periods for power integration 2026-08-14 22:00:02.177548: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 22:00:02.177697: Car charging hold False, threshold 6.0kWh 2026-08-14 22:00:02.177748: Current data so far today: load 22.75kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 22:00:02.197045: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 22:00:02.197563: Standing charge is set to 49.98p 2026-08-14 22:00:02.244418: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 22:00:02.244564: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 22:00:02.244855: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 685.0 minutes 2026-08-14 22:00:02.245382: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 685.0 minutes 2026-08-14 22:00:02.253169: Loaded 95 datapoints of futurerate analysis 2026-08-14 22:00:02.426467: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41'] 2026-08-14 22:00:02.476883: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 22:00:02.477524: Import rates: min 13.77p, max 43.82p, average 25.98p 2026-08-14 22:00:02.521020: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 22:00:02.521164: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 22:00:02.522586: High export rate found rates in range 99p to -99p 2026-08-14 22:00:02.642782: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 22:00:02.642914: Car 0 charging is not planned as it is not plugged in 2026-08-14 22:00:02.657380: Battery level now 5.28kWh, -1hr ago 5.7kWh, at midnight 2.43kWh, battery value change in the last hour -4.92p, change today 33.68p, rate_forward 11.83p 2026-08-14 22:00:02.657781: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.53kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 22:00:02.721576: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 22:00:02.721732: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 22:00:02.822928: Using weighted-bucket historical load forecast over 14 days 2026-08-14 22:00:02.855078: Today's load divergence 142.27%, in-day adjustment 140.71%, damping 0.95x, yesterday 146.81% today 140.15% blend 8.33% 2026-08-14 22:00:02.855171: Today's predicted so far 12.4kWh with 0.0kWh car/iBoost excluded, 17.37kWh import ignored, and 12.4kWh forecast extra. 2026-08-14 22:00:02.855205: Today's actual load so far 22.78kWh with 0.0kWh car/iBoost excluded, and 17.37kWh import ignored. 2026-08-14 22:00:02.887955: Inverter 0: Type SK Sunsynk 2026-08-14 22:00:02.888035: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 22:00:02.888586: Reserve min: 7%, battery_min: 7% 2026-08-14 22:00:02.888657: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 22:00:02.888928: Inverter 0 SoC: 5.15kW 32%, current charge rate 5000W, current discharge rate 5250W, current battery power 1596W, current battery voltage 51.2V, grid power -55W, load power 1657W, PV Power 0W 2026-08-14 22:00:02.889188: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:00:02.889304: Inverter 0 scheduled charge enable is False 2026-08-14 22:00:02.889333: Inverter 0 charge windows currently [] 2026-08-14 22:00:02.889362: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 22:00:02.889516: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:00:02.889551: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:00:02.889597: Inverter 0 scheduled discharge enable is False 2026-08-14 22:00:02.889755: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:00:02.889890: Inverter 0 discharge windows currently [] 2026-08-14 22:00:02.889920: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:00:02.889951: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:00:02.889969: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:00:02.956786: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 22:00:02.956897: Plan was last updated on 2026-08-14 21:55:00+01:00 and is now 5.0 minutes old 2026-08-14 22:00:02.957213: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 22:00:02.957270: Best export window [ ] 2026-08-14 22:00:02.958137: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 22:00:02.961750: Load divergence over 8.0 hours mean 479.61W, min 378.6W, max 1138.2W, std dev 101.38W, divergence 10.57% 2026-08-14 22:00:02.980588: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 22:00:02.980712: LoadML is_calculating False 2026-08-14 22:00:02.980777: Creating pool of 12 processes to match your CPU count 2026-08-14 22:00:03.107475: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1348.22p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:30:00, load 46.98kWh, PV 0.0kWh 2026-08-14 22:00:03.260505: Battery has 3.5 hours left - now at 5.15kWh 2026-08-14 22:00:03.306810: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1377.56p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 48.13kWh, PV 0.0kWh 2026-08-14 22:00:03.416606: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 1248.99p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 48.13kWh, PV 0.0kWh 2026-08-14 22:00:03.516806: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 1224.92p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:30:00, load 46.98kWh, PV 0.0kWh 2026-08-14 22:00:03.516919: Saving plan best values to HA entities 2026-08-14 22:00:03.711542: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 22:00:03.717610: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 22:00:03.723170: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 16.83kWh, house 5.83kWh, export 0.0kWh, metric 1224.92p, metric10 1248.99p 2026-08-14 22:00:03.804259: Marginal costs baseline metric (no standing charge): 1124.9547 2026-08-14 22:00:04.094734: Marginal energy costs matrix computed: min=18.66 max=30.26 2026-08-14 22:00:04.176580: Rate array import [{'start': 1320, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1320, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 22:00:04.177242: - Your estimated bill for today is £7.35 and tomorrow is £4.28 2026-08-14 22:00:04.177287: - Import rates are expensive (24.6p - 32.0p) for the next 9 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 22:00:04.177306: - The battery is currently at 32% and is in eco mode for the next 13 hours. 2026-08-14 22:00:04.177320: - For the next 48 hours there will be no solar generation. 2026-08-14 22:00:04.177334: - You will run out of battery in 3 and a half hours. 2026-08-14 22:00:04.177347: - Your next charge slot will be in 13 hours where import rates will be cheap (15.5p). 2026-08-14 22:00:04.177361: 2026-08-14 22:00:04.244519: Plan calculation took 1.29 seconds 2026-08-14 22:00:04.248635: No high rate period found 2026-08-14 22:00:04.388549: Import threshold used for optimisation was 17.0p 2026-08-14 22:00:04.455100: Low import rate windows [0: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 1: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 2: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 3: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 4: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 5: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 6: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 7: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 8: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 9: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 10: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 11: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 12: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 13: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 14: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 15: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 16: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 17: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 18: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 19: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 20: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 21: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 22: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 23: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 24: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 25: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 26: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 27: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 28: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 29: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 30: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 31: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 32: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 33: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 34: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 35: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 36: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 37: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 38: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 39: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 40: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 41: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 42: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 43: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 44: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 45: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 46: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 47: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 48: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 49: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 50: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 51: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 52: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 53: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 54: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 55: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 56: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 57: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 58: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 59: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 60: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 61: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 62: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 63: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 64: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 65: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 66: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 67: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 68: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 69: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 70: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 71: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 72: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 73: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 74: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 75: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 76: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 77: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 78: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 79: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 80: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 81: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 82: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 83: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 84: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 85: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 86: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 87: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 88: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 89: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 90: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 91: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 92: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 93: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67] 2026-08-14 22:00:04.462662: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 32%, target 19% 2026-08-14 22:00:04.462786: Inverter 0 disabled charge window while waiting for schedule (now 08-14 22:00:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 22:00:04.462891: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:00:04.463144: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:00:04.463227: No export window planned 2026-08-14 22:00:04.463324: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 22:00:04.463353: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:00:04.463490: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:00:04.463653: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 22:00:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 22:00:04.463708: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 22:00:04.463788: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 22:00:04.463865: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:00:04.463903: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:00:04.463956: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:00:04.463995: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:00:04.464018: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:00:04.464038: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:00:04.464058: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:00:04.464119: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:00:04.464149: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:00:04.464169: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:00:04.464190: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:00:04.464209: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:00:04.464236: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:00:04.464256: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:00:04.464276: Inverter 0 count register writes 0 2026-08-14 22:00:04.479551: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 22:00:04.485523: Total inverter register writes now 815 2026-08-14 22:00:04.516475: Info: Completed run status Demand 2026-08-14 22:00:04.523242: Info: record_status Demand 2026-08-14 22:00:04.530418: Saved current settings to /config/predbat_config.json 2026-08-14 22:00:04.530743: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 22:00:41.632917: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:00:41.633230: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:00:41.633302: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:00:41.633552: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:00:41.633601: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:00:41.633630: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:00:41.633657: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:02:41.853661: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:02:41.853985: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:02:41.854037: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:02:41.854293: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:02:41.854343: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:02:41.854366: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:02:41.854390: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:04:42.090249: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:04:42.090541: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:04:42.090601: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:04:42.090760: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:04:42.090809: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:04:42.090829: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:04:42.090843: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:05:00.209938: --------------- PredBat - update at 2026-08-14 22:05:00+01:00 with clock skew 0 minutes, minutes now 1325 2026-08-14 22:05:00.210805: Saved current settings to /config/predbat_config.json 2026-08-14 22:05:00.210963: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 5.0 minutes 2026-08-14 22:05:00.211095: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 22:05:00.211181: Autoupdate: Currently up to date 2026-08-14 22:05:00.230703: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 22:05:00.230826: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 22:05:00.230970: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 22:05:00.231481: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 22:05:00.231588: Predbat mode is set to Control charge & discharge 2026-08-14 22:05:00.419499: Found 21602 load_today datapoints going back 27 days 2026-08-14 22:05:00.419664: Using load_power data to fill gaps in load_today data 2026-08-14 22:05:01.338203: Processing 721 30-minute periods for power integration 2026-08-14 22:05:01.543990: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 22:05:01.544125: Car charging hold False, threshold 6.0kWh 2026-08-14 22:05:01.544173: Current data so far today: load 22.8kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 22:05:01.563997: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 22:05:01.564535: Standing charge is set to 49.98p 2026-08-14 22:05:01.603676: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 22:05:01.603784: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 22:05:01.604000: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 690.0 minutes 2026-08-14 22:05:01.604396: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 690.0 minutes 2026-08-14 22:05:01.611617: Loaded 95 datapoints of futurerate analysis 2026-08-14 22:05:01.817879: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41'] 2026-08-14 22:05:01.866095: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 22:05:01.866623: Import rates: min 13.77p, max 43.82p, average 25.98p 2026-08-14 22:05:01.910498: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 22:05:01.910657: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 22:05:01.912054: High export rate found rates in range 99p to -99p 2026-08-14 22:05:02.019693: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 22:05:02.020690: Car 0 charging is not planned as it is not plugged in 2026-08-14 22:05:02.032830: Battery level now 5.15kWh, -1hr ago 5.6kWh, at midnight 2.43kWh, battery value change in the last hour -5.3p, change today 32.17p, rate_forward 11.83p 2026-08-14 22:05:02.033315: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.55kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 22:05:02.096980: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 22:05:02.097129: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 22:05:02.222523: Using weighted-bucket historical load forecast over 14 days 2026-08-14 22:05:02.260609: Today's load divergence 142.37%, in-day adjustment 140.77%, damping 0.95x, yesterday 146.81% today 140.25% blend 7.99% 2026-08-14 22:05:02.260729: Today's predicted so far 12.51kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 12.51kWh forecast extra. 2026-08-14 22:05:02.260785: Today's actual load so far 22.92kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 22:05:02.295270: Inverter 0: Type SK Sunsynk 2026-08-14 22:05:02.295364: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 22:05:02.295952: Reserve min: 7%, battery_min: 7% 2026-08-14 22:05:02.296039: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 22:05:02.296322: Inverter 0 SoC: 5.03kW 31%, current charge rate 5000W, current discharge rate 5250W, current battery power 1664W, current battery voltage 51.2V, grid power -55W, load power 1724W, PV Power 0W 2026-08-14 22:05:02.296498: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:05:02.296589: Inverter 0 scheduled charge enable is False 2026-08-14 22:05:02.296624: Inverter 0 charge windows currently [] 2026-08-14 22:05:02.296652: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 22:05:02.296791: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:05:02.296828: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:05:02.296864: Inverter 0 scheduled discharge enable is False 2026-08-14 22:05:02.297064: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:05:02.297106: Inverter 0 discharge windows currently [] 2026-08-14 22:05:02.297129: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:05:02.297148: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:05:02.297165: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:05:02.358298: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 22:05:02.358440: Plan was last updated on 2026-08-14 21:55:00+01:00 and is now 10.0 minutes old 2026-08-14 22:05:02.358736: Best charge window [ 15-08 11:30:00 - 15-08 13:00:00 @ 16.29p 19%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 41%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 84%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100% ] 2026-08-14 22:05:02.358782: Best export window [ ] 2026-08-14 22:05:02.359629: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 22:05:02.362751: Load divergence over 8.0 hours mean 481.41W, min 274.8W, max 1243.8W, std dev 120.49W, divergence 12.51% 2026-08-14 22:05:02.382233: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 22:05:02.382365: LoadML is_calculating False 2026-08-14 22:05:02.382431: Creating pool of 12 processes to match your CPU count 2026-08-14 22:05:02.508421: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1349.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:30:00, load 46.99kWh, PV 0.0kWh 2026-08-14 22:05:02.660774: Battery has 3.42 hours left - now at 5.03kWh 2026-08-14 22:05:02.714889: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1378.23p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 48.14kWh, PV 0.0kWh 2026-08-14 22:05:02.803329: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 1255.15p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 48.14kWh, PV 0.0kWh 2026-08-14 22:05:02.890482: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 1232.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:30:00, load 46.99kWh, PV 0.0kWh 2026-08-14 22:05:02.890577: Saving plan best values to HA entities 2026-08-14 22:05:03.060742: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 22:05:03.066121: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 22:05:03.072393: Best charging limit SoC's [3.0, 16.0, 6.5, 13.5, 16.0]kWh, export []kWh gives import battery 17.33kWh, house 5.82kWh, export 0.0kWh, metric 1232.25p, metric10 1255.15p 2026-08-14 22:05:03.155995: Marginal costs baseline metric (no standing charge): 1132.2854 2026-08-14 22:05:03.465697: Marginal energy costs matrix computed: min=18.4 max=29.94 2026-08-14 22:05:03.548915: Rate array import [{'start': 1325, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1325, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 22:05:03.549792: - Your estimated bill for today is £7.35 and tomorrow is £4.28 2026-08-14 22:05:03.549848: - Import rates are expensive (24.6p - 32.0p) for the next 8 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 22:05:03.549870: - The battery is currently at 31% and is in eco mode for the next 13 hours. 2026-08-14 22:05:03.549888: - For the next 48 hours there will be no solar generation. 2026-08-14 22:05:03.549905: - You will run out of battery in 3 and a half hours. 2026-08-14 22:05:03.549922: - Your next charge slot will be in 13 hours where import rates will be cheap (15.5p). 2026-08-14 22:05:03.549941: 2026-08-14 22:05:03.618279: Plan calculation took 1.26 seconds 2026-08-14 22:05:03.623496: No high rate period found 2026-08-14 22:05:03.675438: Import threshold used for optimisation was 17.0p 2026-08-14 22:05:03.722758: Low import rate windows [0: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 1: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 2: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 3: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 4: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 5: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 6: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 7: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 8: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 9: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 10: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 11: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 12: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 13: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 14: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 15: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 16: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 17: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 18: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 19: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 20: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 21: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 22: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 23: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 24: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 25: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 26: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 27: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 28: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 29: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 30: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 31: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 32: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 33: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 34: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 35: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 36: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 37: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 38: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 39: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 40: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 41: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 42: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 43: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 44: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 45: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 46: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 47: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 48: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 49: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 50: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 51: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 52: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 53: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 54: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 55: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 56: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 57: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 58: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 59: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 60: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 61: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 62: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 63: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 64: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 65: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 66: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 67: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 68: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 69: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 70: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 71: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 72: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 73: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 74: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 75: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 76: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 77: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 78: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 79: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 80: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 81: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 82: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 83: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 84: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 85: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 86: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 87: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 88: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 89: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 90: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 91: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 92: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 93: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 94: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77] 2026-08-14 22:05:03.730455: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 31%, target 19% 2026-08-14 22:05:03.730667: Inverter 0 disabled charge window while waiting for schedule (now 08-14 22:05:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-16 00:00:00 2026-08-14 22:05:03.730859: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:05:03.731210: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:05:03.731339: No export window planned 2026-08-14 22:05:03.731553: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 22:05:03.731609: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:05:03.731813: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:05:03.732064: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 22:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 22:05:03.732156: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 22:05:03.732260: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 22:05:03.732424: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:05:03.732519: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:05:03.732585: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:05:03.732648: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:05:03.732711: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:05:03.732768: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:05:03.732828: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:05:03.732943: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:05:03.733066: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:05:03.733143: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:05:03.733240: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:05:03.733296: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:05:03.733349: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:05:03.733377: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:05:03.733405: Inverter 0 count register writes 0 2026-08-14 22:05:03.750072: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 22:05:03.750275: Recompute is saving previous plan... 2026-08-14 22:05:03.754114: Best charge window [ 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0% ] 2026-08-14 22:05:03.754207: Best export window [ ] 2026-08-14 22:05:03.755046: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 22:05:03.757706: Load divergence over 8.0 hours mean 481.41W, min 274.8W, max 1243.8W, std dev 120.49W, divergence 12.51% 2026-08-14 22:05:03.772451: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 22:05:03.772554: LoadML is_calculating False 2026-08-14 22:05:03.772613: Creating pool of 12 processes to match your CPU count 2026-08-14 22:05:03.855998: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 22:05:03.857848: Optimise levels pass started at 2026-08-14 22:05:03 2026-08-14 22:05:03.857915: Optimise all windows, total charge 94 export 1 2026-08-14 22:05:05.352343: >> Region optimisation pass width 960 gives best_metric 1211.2p, best_cost 1219.81p, best_cycle 37.47kWh, best_import 29.09kWh 2026-08-14 22:05:05.851613: >> Region optimisation pass width 480 gives best_metric 1211.2p, best_cost 1219.81p, best_cycle 37.47kWh, best_import 29.09kWh 2026-08-14 22:05:06.387015: >> Region optimisation pass width 240 gives best_metric 1211.2p, best_cost 1219.81p, best_cycle 37.47kWh, best_import 29.09kWh 2026-08-14 22:05:07.715274: >> Region optimisation pass width 120 gives best_metric 1210.11p, best_cost 1218.4p, best_cycle 35.78kWh, best_import 28.97kWh 2026-08-14 22:05:07.715896: Calculated end_record as 08-16 13:00:00 based on best_price 15.87p, next_charge_start 08-15 13:00:00, max_windows 77 2026-08-14 22:05:07.716008: Optimise levels pass ended at 2026-08-14 22:05:07, duration 3.9 seconds tried 340 combinations 2026-08-14 22:05:07.716118: Set best_price_charge_level 17.0p, best_price_export_level 0p, best_price_charge 15.87p, best_cost_export 0p, best_metric 1210.11p, best_keep 0kWh, best_cycle 35.78kWh, best_carbon 0kg, best_import 28.97kWh 2026-08-14 22:05:07.734278: Starting detailed optimisation end_record 08-16 13:00:00, best_price_charge 15.87p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 13.0, 13.0, 13.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 22:05:13.406612: Tweak plan optimisation started metric 1129.1p, cost 1138.11p 2026-08-14 22:05:13.695841: Tweak optimisation finished metric 1129.1p, cost 1138.11p, metric_keep 0kWh, cycle 27.57kWh, carbon 0kg, import 23.38kWh, changed 8 window(s) 2026-08-14 22:05:13.713901: Swap charge optimisation started metric 1129.1p, cost 1138.11p, min_improvement_swap 0.1p 2026-08-14 22:05:18.975496: Swap charge optimisation finished metric 1129.1p, cost 1138.11p 2026-08-14 22:05:19.061288: Pruned 2 dead plan slot(s) in 8 trial(s), nominal metric 1124.87p -> 1124.87p, plan now metric 1129.14p, cost 1138.11p, cycle 27.57kWh, import 23.38kWh 2026-08-14 22:05:19.073036: Raw charge windows [ 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100% ] reserve 1.12 2026-08-14 22:05:19.073696: Unclipped charge windows [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] reserve 1.12 2026-08-14 22:05:19.073963: Unfiltered charge windows [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] reserve 1.12 2026-08-14 22:05:19.074214: Filtered charge windows [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] reserve 1.12 2026-08-14 22:05:19.107344: Previous plan best metric is 1167.0 (cost 1259.93) and new plan best metric is 1129.1 (cost 1138.11) 2026-08-14 22:05:19.107565: New plan metric is significantly better from previous plan, using new plan 2026-08-14 22:05:19.107595: Plan valid is now true after recompute was False 2026-08-14 22:05:19.132694: predict base end_record 08-16 13:00:00, final soc 1.12kWh, metric 1367.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:30:00, load 48.13kWh, PV 0.0kWh 2026-08-14 22:05:19.237631: Battery has 3.42 hours left - now at 5.03kWh 2026-08-14 22:05:19.282370: predict base10 end_record 08-16 13:00:00, final soc 1.12kWh, metric 1397.66p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 49.33kWh, PV 0.0kWh 2026-08-14 22:05:19.382276: predict best10 end_record 08-16 13:00:00, final soc 1.12kWh, metric 1266.57p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 49.33kWh, PV 0.0kWh 2026-08-14 22:05:19.488897: predict best end_record 08-16 13:00:00, final soc 1.12kWh, metric 1238.08p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:30:00, load 48.13kWh, PV 0.0kWh 2026-08-14 22:05:19.489043: Saving plan best values to HA entities 2026-08-14 22:05:19.659089: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 22:05:19.665335: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 22:05:19.671338: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.47kWh, house 8.91kWh, export 0.0kWh, metric 1238.08p, metric10 1266.57p 2026-08-14 22:05:19.764133: Marginal costs baseline metric (no standing charge): 1138.1139 2026-08-14 22:05:20.064613: Marginal energy costs matrix computed: min=18.4 max=29.94 2026-08-14 22:05:20.135106: Rate array import [{'start': 1325, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3660, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1325, 'end': 3660, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 22:05:20.135732: - Your estimated bill for today is £7.35 and tomorrow is £4.20 2026-08-14 22:05:20.135772: - Import rates are expensive (24.6p - 32.0p) for the next 8 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 22:05:20.135791: - The battery is currently at 31% and is in eco mode for the next 14 hours. 2026-08-14 22:05:20.135805: - For the next 48 hours there will be no solar generation. 2026-08-14 22:05:20.135819: - You will run out of battery in 3 and a half hours. 2026-08-14 22:05:20.135833: - Your next charge slot will be in 14 hours where import rates will be cheap (15.4p). 2026-08-14 22:05:20.135847: 2026-08-14 22:05:20.193690: Plan calculation took 16.44 seconds 2026-08-14 22:05:20.194238: Inverter 0: Type SK Sunsynk 2026-08-14 22:05:20.194288: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 22:05:20.195031: Reserve min: 7%, battery_min: 7% 2026-08-14 22:05:20.195124: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 22:05:20.195422: Inverter 0 SoC: 4.9kW 31%, current charge rate 5000W, current discharge rate 5250W, current battery power 1658W, current battery voltage 51.2V, grid power -55W, load power 1718W, PV Power 0W 2026-08-14 22:05:20.195671: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:05:20.195782: Inverter 0 scheduled charge enable is False 2026-08-14 22:05:20.195816: Inverter 0 charge windows currently [] 2026-08-14 22:05:20.195854: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 22:05:20.195964: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:05:20.196000: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:05:20.196036: Inverter 0 scheduled discharge enable is False 2026-08-14 22:05:20.196201: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:05:20.196246: Inverter 0 discharge windows currently [] 2026-08-14 22:05:20.196270: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:05:20.196291: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:05:20.196309: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:05:20.262096: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 31%, target 100% 2026-08-14 22:05:20.262252: Inverter 0 disabled charge window while waiting for schedule (now 08-14 22:05:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 22:05:20.262323: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:05:20.262594: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:05:20.262680: No export window planned 2026-08-14 22:05:20.262790: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 22:05:20.262830: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:05:20.263011: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:05:20.263200: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 22:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 22:05:20.263252: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 22:05:20.263324: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 22:05:20.263420: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:05:20.263464: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:05:20.263509: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:05:20.263535: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:05:20.263560: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:05:20.263604: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:05:20.263634: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:05:20.263691: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:05:20.263725: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:05:20.263751: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:05:20.263776: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:05:20.263799: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:05:20.263822: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:05:20.263845: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:05:20.263865: Inverter 0 count register writes 0 2026-08-14 22:05:20.285734: Total inverter register writes now 815 2026-08-14 22:05:20.323770: Info: Completed run status Demand 2026-08-14 22:05:20.330785: Info: record_status Demand 2026-08-14 22:05:20.338085: Saved current settings to /config/predbat_config.json 2026-08-14 22:05:20.338381: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 22:05:57.442866: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:05:57.443111: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:05:57.443146: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:05:57.443279: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:05:57.443319: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:05:57.443340: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:05:57.443357: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:08:11.681213: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:08:11.681465: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:08:11.681643: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:08:11.681891: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:08:11.681940: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:08:11.681959: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:08:11.681973: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:10:00.889107: --------------- PredBat - update at 2026-08-14 22:10:00+01:00 with clock skew 0 minutes, minutes now 1330 2026-08-14 22:10:00.890367: Saved current settings to /config/predbat_config.json 2026-08-14 22:10:00.890811: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 10.0 minutes 2026-08-14 22:10:00.890922: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 22:10:00.891065: Autoupdate: Currently up to date 2026-08-14 22:10:00.914265: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 22:10:00.914450: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 22:10:00.914643: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 22:10:00.915150: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 22:10:00.915284: Predbat mode is set to Control charge & discharge 2026-08-14 22:10:01.110702: Found 21602 load_today datapoints going back 28 days 2026-08-14 22:10:01.110869: Using load_power data to fill gaps in load_today data 2026-08-14 22:10:01.949657: Processing 721 30-minute periods for power integration 2026-08-14 22:10:02.143468: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 22:10:02.143612: Car charging hold False, threshold 6.0kWh 2026-08-14 22:10:02.143660: Current data so far today: load 23.15kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 22:10:02.162083: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 22:10:02.162562: Standing charge is set to 49.98p 2026-08-14 22:10:02.214962: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 22:10:02.215071: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 22:10:02.215306: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 695.0 minutes 2026-08-14 22:10:02.216163: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 695.0 minutes 2026-08-14 22:10:02.230052: Loaded 95 datapoints of futurerate analysis 2026-08-14 22:10:02.395933: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41'] 2026-08-14 22:10:02.434351: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 22:10:02.434784: Import rates: min 13.77p, max 43.82p, average 25.98p 2026-08-14 22:10:02.476767: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 22:10:02.476899: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 22:10:02.478335: High export rate found rates in range 99p to -99p 2026-08-14 22:10:02.586480: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 22:10:02.586607: Car 0 charging is not planned as it is not plugged in 2026-08-14 22:10:02.598475: Battery level now 5.03kWh, -1hr ago 5.6kWh, at midnight 2.43kWh, battery value change in the last hour -6.72p, change today 30.75p, rate_forward 11.83p 2026-08-14 22:10:02.598831: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 0.88kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 22:10:02.649361: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 22:10:02.649515: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 22:10:02.730522: Using weighted-bucket historical load forecast over 14 days 2026-08-14 22:10:02.758010: Today's load divergence 142.9%, in-day adjustment 141.22%, damping 0.95x, yesterday 146.81% today 140.75% blend 7.64% 2026-08-14 22:10:02.758092: Today's predicted so far 12.54kWh with 0.0kWh car/iBoost excluded, 17.18kWh import ignored, and 12.54kWh forecast extra. 2026-08-14 22:10:02.758119: Today's actual load so far 23.18kWh with 0.0kWh car/iBoost excluded, and 17.18kWh import ignored. 2026-08-14 22:10:02.785947: Inverter 0: Type SK Sunsynk 2026-08-14 22:10:02.786039: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 22:10:02.786633: Reserve min: 7%, battery_min: 7% 2026-08-14 22:10:02.786718: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 22:10:02.787042: Inverter 0 SoC: 4.9kW 31%, current charge rate 5000W, current discharge rate 5250W, current battery power 1812W, current battery voltage 51.2V, grid power -53W, load power 1871W, PV Power 0W 2026-08-14 22:10:02.787230: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:10:02.787356: Inverter 0 scheduled charge enable is False 2026-08-14 22:10:02.787404: Inverter 0 charge windows currently [] 2026-08-14 22:10:02.787458: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 22:10:02.787713: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:10:02.787757: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:10:02.787803: Inverter 0 scheduled discharge enable is False 2026-08-14 22:10:02.788001: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:10:02.788044: Inverter 0 discharge windows currently [] 2026-08-14 22:10:02.788068: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:10:02.788112: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:10:02.788148: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:10:02.842863: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 22:10:02.842983: Plan was last updated on 2026-08-14 22:05:00+01:00 and is now 5.0 minutes old 2026-08-14 22:10:02.843161: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 22:10:02.843197: Best export window [ ] 2026-08-14 22:10:02.843870: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 22:10:02.846601: Load divergence over 8.0 hours mean 481.29W, min 274.8W, max 1206.0W, std dev 122.29W, divergence 12.7% 2026-08-14 22:10:02.863071: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 22:10:02.863196: LoadML is_calculating False 2026-08-14 22:10:02.863290: Creating pool of 12 processes to match your CPU count 2026-08-14 22:10:02.973643: predict base end_record 08-16 13:05:00, final soc 1.12kWh, metric 1369.53p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:25:00, load 48.46kWh, PV 0.0kWh 2026-08-14 22:10:03.089282: Battery has 3.25 hours left - now at 4.9kWh 2026-08-14 22:10:03.134219: predict base10 end_record 08-16 13:05:00, final soc 1.12kWh, metric 1399.63p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 49.66kWh, PV 0.0kWh 2026-08-14 22:10:03.205846: predict best10 end_record 08-16 13:05:00, final soc 1.44kWh, metric 1273.84p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:15:00, load 49.66kWh, PV 0.0kWh 2026-08-14 22:10:03.291970: predict best end_record 08-16 13:05:00, final soc 1.51kWh, metric 1246.4p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:25:00, load 48.46kWh, PV 0.0kWh 2026-08-14 22:10:03.292089: Saving plan best values to HA entities 2026-08-14 22:10:03.470709: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 22:10:03.476317: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 22:10:03.481986: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.96kWh, house 8.94kWh, export 0.0kWh, metric 1246.4p, metric10 1273.84p 2026-08-14 22:10:03.558401: Marginal costs baseline metric (no standing charge): 1146.4317 2026-08-14 22:10:03.840240: Marginal energy costs matrix computed: min=18.14 max=29.66 2026-08-14 22:10:03.931009: Rate array import [{'start': 1330, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3665, 'rate': 'cheap', 'range': '(15.4p - 23.6p)'}] export [{'start': 1330, 'end': 3665, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 22:10:03.931921: - Your estimated bill for today is £7.35 and tomorrow is £4.21 2026-08-14 22:10:03.931973: - Import rates are expensive (24.6p - 32.0p) for the next 8 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 22:10:03.931997: - The battery is currently at 31% and is in eco mode for the next 14 hours. 2026-08-14 22:10:03.932023: - For the next 48 hours there will be no solar generation. 2026-08-14 22:10:03.932065: - You will run out of battery in 3 and a quarter hours. 2026-08-14 22:10:03.932098: - Your next charge slot will be in 14 hours where import rates will be cheap (15.4p). 2026-08-14 22:10:03.932156: 2026-08-14 22:10:03.995278: Plan calculation took 1.15 seconds 2026-08-14 22:10:03.998448: No high rate period found 2026-08-14 22:10:04.046885: Import threshold used for optimisation was 22.73p 2026-08-14 22:10:04.100131: Low import rate windows [0: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 1: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 2: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 3: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 4: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 5: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 6: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 7: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 8: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 9: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 10: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 11: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 12: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 13: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 14: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 15: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 16: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 17: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 18: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 19: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 20: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 21: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 22: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 23: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 24: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 25: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 26: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 27: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 28: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 29: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 30: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 31: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 32: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 33: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 34: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 35: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 36: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 37: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 38: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 39: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 40: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 41: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 42: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 43: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 44: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 45: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 46: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 47: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 48: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 49: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 50: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 51: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 52: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 53: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 54: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 55: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 56: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 57: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 58: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 59: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 60: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 61: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 62: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 63: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 64: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 65: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 66: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 67: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 68: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 69: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 70: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 71: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 72: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 73: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 74: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 75: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 76: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 77: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 78: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 79: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 80: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 81: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 82: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 83: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 84: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 85: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 86: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 87: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 88: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 89: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 90: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 91: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 92: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 93: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 94: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77] 2026-08-14 22:10:04.107228: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 31%, target 100% 2026-08-14 22:10:04.107399: Inverter 0 disabled charge window while waiting for schedule (now 08-14 22:10:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 22:10:04.107572: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:10:04.107918: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:10:04.108045: No export window planned 2026-08-14 22:10:04.108245: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 22:10:04.108302: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:10:04.108565: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:10:04.108937: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 22:10:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 22:10:04.109035: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 22:10:04.109099: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 22:10:04.109192: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:10:04.109238: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:10:04.109266: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:10:04.109292: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:10:04.109317: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:10:04.109340: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:10:04.109364: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:10:04.109447: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:10:04.109484: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:10:04.109511: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:10:04.109535: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:10:04.109558: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:10:04.109584: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:10:04.109608: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:10:04.109629: Inverter 0 count register writes 0 2026-08-14 22:10:04.127368: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 22:10:04.132747: Total inverter register writes now 815 2026-08-14 22:10:04.166143: Info: Completed run status Demand 2026-08-14 22:10:04.172685: Info: record_status Demand 2026-08-14 22:10:04.179081: Saved current settings to /config/predbat_config.json 2026-08-14 22:10:04.179338: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 22:10:42.286774: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:10:42.287530: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:10:42.287592: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:10:42.287735: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:10:42.287781: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:10:42.287805: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:10:42.288345: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:12:56.527773: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:12:56.528016: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:12:56.528052: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:12:56.528331: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:12:56.528411: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:12:56.528437: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:12:56.528456: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:14:56.748728: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:14:56.749003: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:14:56.749045: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:14:56.749269: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:14:56.749310: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:14:56.749332: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:14:56.749349: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:15:00.837306: --------------- PredBat - update at 2026-08-14 22:15:00+01:00 with clock skew 0 minutes, minutes now 1335 2026-08-14 22:15:00.838029: Saved current settings to /config/predbat_config.json 2026-08-14 22:15:00.838150: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 15.0 minutes 2026-08-14 22:15:00.838268: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 22:15:00.838345: Autoupdate: Currently up to date 2026-08-14 22:15:00.855653: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 22:15:00.855767: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 22:15:00.855906: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 22:15:00.856391: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 22:15:00.856494: Predbat mode is set to Control charge & discharge 2026-08-14 22:15:01.025232: Found 21602 load_today datapoints going back 28 days 2026-08-14 22:15:01.025370: Using load_power data to fill gaps in load_today data 2026-08-14 22:15:01.848174: Processing 721 30-minute periods for power integration 2026-08-14 22:15:02.043919: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 22:15:02.044058: Car charging hold False, threshold 6.0kWh 2026-08-14 22:15:02.044154: Current data so far today: load 23.3kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 22:15:02.059615: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 22:15:02.060056: Standing charge is set to 49.98p 2026-08-14 22:15:02.102267: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 22:15:02.102342: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 22:15:02.102557: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 700.0 minutes 2026-08-14 22:15:02.102929: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 700.0 minutes 2026-08-14 22:15:02.107885: Loaded 95 datapoints of futurerate analysis 2026-08-14 22:15:02.231760: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41'] 2026-08-14 22:15:02.270363: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 22:15:02.270795: Import rates: min 13.77p, max 43.82p, average 25.97p 2026-08-14 22:15:02.305802: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 22:15:02.306224: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 22:15:02.307374: High export rate found rates in range 99p to -99p 2026-08-14 22:15:02.391157: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 22:15:02.391283: Car 0 charging is not planned as it is not plugged in 2026-08-14 22:15:02.403292: Battery level now 4.9kWh, -1hr ago 5.6kWh, at midnight 2.43kWh, battery value change in the last hour -8.23p, change today 29.23p, rate_forward 11.83p 2026-08-14 22:15:02.403662: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.0kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 22:15:02.464840: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 22:15:02.465025: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 22:15:02.560985: Using weighted-bucket historical load forecast over 14 days 2026-08-14 22:15:02.586598: Today's load divergence 143.05%, in-day adjustment 141.33%, damping 0.95x, yesterday 146.81% today 140.9% blend 7.29% 2026-08-14 22:15:02.586671: Today's predicted so far 12.57kWh with 0.0kWh car/iBoost excluded, 17.19kWh import ignored, and 12.57kWh forecast extra. 2026-08-14 22:15:02.586698: Today's actual load so far 23.28kWh with 0.0kWh car/iBoost excluded, and 17.19kWh import ignored. 2026-08-14 22:15:02.615555: Inverter 0: Type SK Sunsynk 2026-08-14 22:15:02.615635: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 22:15:02.616179: Reserve min: 7%, battery_min: 7% 2026-08-14 22:15:02.616271: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 22:15:02.616548: Inverter 0 SoC: 4.62kW 29%, current charge rate 5000W, current discharge rate 5250W, current battery power 1784W, current battery voltage 51.2V, grid power -54W, load power 1842W, PV Power 0W 2026-08-14 22:15:02.616711: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:15:02.616824: Inverter 0 scheduled charge enable is False 2026-08-14 22:15:02.616855: Inverter 0 charge windows currently [] 2026-08-14 22:15:02.616881: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 22:15:02.617059: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:15:02.617114: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:15:02.617157: Inverter 0 scheduled discharge enable is False 2026-08-14 22:15:02.617310: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:15:02.617347: Inverter 0 discharge windows currently [] 2026-08-14 22:15:02.617368: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:15:02.617398: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:15:02.617423: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:15:02.668627: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 22:15:02.668751: Plan was last updated on 2026-08-14 22:05:00+01:00 and is now 10.0 minutes old 2026-08-14 22:15:02.669120: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 22:15:02.669177: Best export window [ ] 2026-08-14 22:15:02.669897: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 22:15:02.672500: Load divergence over 8.0 hours mean 481.14W, min 279.0W, max 1164.0W, std dev 121.08W, divergence 12.58% 2026-08-14 22:15:02.688096: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 22:15:02.688179: LoadML is_calculating False 2026-08-14 22:15:02.688235: Creating pool of 12 processes to match your CPU count 2026-08-14 22:15:02.794997: predict base end_record 08-16 13:10:00, final soc 1.12kWh, metric 1375.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 48.59kWh, PV 0.0kWh 2026-08-14 22:15:02.925778: Battery has 2.92 hours left - now at 4.62kWh 2026-08-14 22:15:02.965992: predict base10 end_record 08-16 13:10:00, final soc 1.12kWh, metric 1405.4p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 49.79kWh, PV 0.0kWh 2026-08-14 22:15:03.046651: predict best10 end_record 08-16 13:10:00, final soc 1.77kWh, metric 1284.96p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 49.79kWh, PV 0.0kWh 2026-08-14 22:15:03.130392: predict best end_record 08-16 13:10:00, final soc 1.9kWh, metric 1258.67p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 48.59kWh, PV 0.0kWh 2026-08-14 22:15:03.130477: Saving plan best values to HA entities 2026-08-14 22:15:03.289613: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 22:15:03.295110: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 22:15:03.300837: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 15.43kWh, house 9.12kWh, export 0.0kWh, metric 1258.67p, metric10 1284.96p 2026-08-14 22:15:03.372372: Marginal costs baseline metric (no standing charge): 1158.7052 2026-08-14 22:15:03.615939: Marginal energy costs matrix computed: min=17.88 max=29.43 2026-08-14 22:15:03.698620: Rate array import [{'start': 1335, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3670, 'rate': 'cheap', 'range': '(15.4p - 23.6p)'}] export [{'start': 1335, 'end': 3670, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 22:15:03.699508: - Your estimated bill for today is £7.35 and tomorrow is £4.26 2026-08-14 22:15:03.699561: - Import rates are expensive (24.6p - 32.0p) for the next 8 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 22:15:03.699584: - The battery is currently at 29% and is in eco mode for the next 14 hours. 2026-08-14 22:15:03.699602: - For the next 48 hours there will be no solar generation. 2026-08-14 22:15:03.699619: - You will run out of battery in 2 hours. 2026-08-14 22:15:03.699636: - Your next charge slot will be in 14 hours where import rates will be cheap (15.4p). 2026-08-14 22:15:03.699653: 2026-08-14 22:15:03.762777: Plan calculation took 1.09 seconds 2026-08-14 22:15:03.766710: No high rate period found 2026-08-14 22:15:03.814434: Import threshold used for optimisation was 22.73p 2026-08-14 22:15:03.888246: Low import rate windows [0: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 1: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 2: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 3: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 4: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 5: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 6: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 7: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 8: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 9: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 10: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 11: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 12: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 13: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 14: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 15: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 16: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 17: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 18: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 19: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 20: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 21: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 22: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 23: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 24: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 25: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 26: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 27: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 28: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 29: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 30: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 31: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 32: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 33: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 34: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 35: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 36: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 37: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 38: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 39: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 40: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 41: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 42: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 43: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 44: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 45: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 46: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 47: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 48: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 49: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 50: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 51: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 52: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 53: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 54: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 55: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 56: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 57: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 58: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 59: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 60: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 61: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 62: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 63: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 64: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 65: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 66: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 67: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 68: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 69: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 70: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 71: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 72: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 73: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 74: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 75: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 76: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 77: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 78: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 79: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 80: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 81: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 82: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 83: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 84: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 85: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 86: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 87: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 88: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 89: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 90: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 91: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 92: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 93: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 94: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77] 2026-08-14 22:15:03.898149: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 29%, target 100% 2026-08-14 22:15:03.898294: Inverter 0 disabled charge window while waiting for schedule (now 08-14 22:15:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 22:15:03.898439: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:15:03.898730: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:15:03.898821: No export window planned 2026-08-14 22:15:03.898965: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 22:15:03.899002: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:15:03.899165: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:15:03.899347: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 22:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 22:15:03.899411: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 22:15:03.899497: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 22:15:03.899657: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:15:03.899710: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:15:03.899762: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:15:03.899804: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:15:03.899854: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:15:03.899903: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:15:03.899951: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:15:03.900046: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:15:03.900103: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:15:03.900128: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:15:03.900148: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:15:03.900169: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:15:03.900207: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:15:03.900250: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:15:03.900272: Inverter 0 count register writes 0 2026-08-14 22:15:03.921811: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 22:15:03.922103: Recompute is saving previous plan... 2026-08-14 22:15:03.926389: Best charge window [ 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0% ] 2026-08-14 22:15:03.926486: Best export window [ ] 2026-08-14 22:15:03.927621: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 22:15:03.931325: Load divergence over 8.0 hours mean 481.14W, min 279.0W, max 1164.0W, std dev 121.08W, divergence 12.58% 2026-08-14 22:15:03.950254: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 22:15:03.950388: LoadML is_calculating False 2026-08-14 22:15:03.950457: Creating pool of 12 processes to match your CPU count 2026-08-14 22:15:04.050627: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 22:15:04.052757: Optimise levels pass started at 2026-08-14 22:15:04 2026-08-14 22:15:04.052837: Optimise all windows, total charge 94 export 1 2026-08-14 22:15:05.126661: >> Region optimisation pass width 960 gives best_metric 1221.31p, best_cost 1229.7p, best_cycle 38.11kWh, best_import 29.64kWh 2026-08-14 22:15:05.509301: >> Region optimisation pass width 480 gives best_metric 1221.31p, best_cost 1229.7p, best_cycle 38.11kWh, best_import 29.64kWh 2026-08-14 22:15:05.986761: >> Region optimisation pass width 240 gives best_metric 1221.31p, best_cost 1229.7p, best_cycle 38.11kWh, best_import 29.64kWh 2026-08-14 22:15:07.208861: >> Region optimisation pass width 120 gives best_metric 1221.31p, best_cost 1229.7p, best_cycle 38.11kWh, best_import 29.64kWh 2026-08-14 22:15:07.209296: Calculated end_record as 08-16 11:30:00 based on best_price 15.87p, next_charge_start 08-15 11:30:00, max_windows 74 2026-08-14 22:15:07.209389: Optimise levels pass ended at 2026-08-14 22:15:07, duration 3.2 seconds tried 326 combinations 2026-08-14 22:15:07.209503: Set best_price_charge_level 17.0p, best_price_export_level 0p, best_price_charge 15.87p, best_cost_export 0p, best_metric 1221.31p, best_keep 0kWh, best_cycle 38.11kWh, best_carbon 0kg, best_import 29.64kWh 2026-08-14 22:15:07.232554: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.87p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 0, 16.0, 0, 13.0, 13.0, 13.0, 13.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 22:15:12.405120: Tweak plan optimisation started metric 1113.68p, cost 1122.88p 2026-08-14 22:15:12.694531: Tweak optimisation finished metric 1113.68p, cost 1122.88p, metric_keep 0kWh, cycle 27.17kWh, carbon 0kg, import 22.29kWh, changed 8 window(s) 2026-08-14 22:15:12.711555: Swap charge optimisation started metric 1113.68p, cost 1122.88p, min_improvement_swap 0.1p 2026-08-14 22:15:18.347512: Swap charge optimisation finished metric 1113.68p, cost 1122.88p 2026-08-14 22:15:18.462207: Pruned 2 dead plan slot(s) in 9 trial(s), nominal metric 1109.63p -> 1109.63p, plan now metric 1113.72p, cost 1122.88p, cycle 27.17kWh, import 22.29kWh 2026-08-14 22:15:18.474492: Raw charge windows [ 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 81%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 81%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 81%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100% ] reserve 1.12 2026-08-14 22:15:18.475294: Unclipped charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 14:00:00 @ 15.55p 100%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 81%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] reserve 1.12 2026-08-14 22:15:18.475560: Unfiltered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 14:00:00 @ 15.55p 100%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 81%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] reserve 1.12 2026-08-14 22:15:18.475781: Filtered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 14:00:00 @ 15.55p 100%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 81%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] reserve 1.12 2026-08-14 22:15:18.514630: Previous plan best metric is 1113.72 (cost 1122.91) and new plan best metric is 1113.68 (cost 1122.88) 2026-08-14 22:15:18.514834: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 22:15:18.515011: Plan valid is now true after recompute was False 2026-08-14 22:15:18.545507: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1352.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 47.16kWh, PV 0.0kWh 2026-08-14 22:15:18.690529: Battery has 2.92 hours left - now at 4.62kWh 2026-08-14 22:15:18.738544: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1381.3p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.3kWh, PV 0.0kWh 2026-08-14 22:15:18.814215: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1250.19p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.3kWh, PV 0.0kWh 2026-08-14 22:15:18.892522: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1222.87p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:10:00, load 47.16kWh, PV 0.0kWh 2026-08-14 22:15:18.892618: Saving plan best values to HA entities 2026-08-14 22:15:19.042129: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 22:15:19.048180: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 22:15:19.054401: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.48kWh, house 7.81kWh, export 0.0kWh, metric 1222.87p, metric10 1250.19p 2026-08-14 22:15:19.133490: Marginal costs baseline metric (no standing charge): 1122.9051 2026-08-14 22:15:19.435500: Marginal energy costs matrix computed: min=17.88 max=29.43 2026-08-14 22:15:19.516331: Rate array import [{'start': 1335, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1335, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 22:15:19.517148: - Your estimated bill for today is £7.35 and tomorrow is £4.26 2026-08-14 22:15:19.517199: - Import rates are expensive (24.6p - 32.0p) for the next 8 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 22:15:19.517222: - The battery is currently at 29% and is in eco mode for the next 14 hours. 2026-08-14 22:15:19.517240: - For the next 48 hours there will be no solar generation. 2026-08-14 22:15:19.517257: - You will run out of battery in 2 hours. 2026-08-14 22:15:19.517277: - Your next charge slot will be in 14 hours where import rates will be cheap (15.4p). 2026-08-14 22:15:19.517295: 2026-08-14 22:15:19.581100: Plan calculation took 15.66 seconds 2026-08-14 22:15:19.581512: Inverter 0: Type SK Sunsynk 2026-08-14 22:15:19.581560: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 22:15:19.582294: Reserve min: 7%, battery_min: 7% 2026-08-14 22:15:19.582389: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 22:15:19.582705: Inverter 0 SoC: 4.62kW 29%, current charge rate 5000W, current discharge rate 5250W, current battery power 1784W, current battery voltage 51.2V, grid power -54W, load power 1842W, PV Power 0W 2026-08-14 22:15:19.582971: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:15:19.583111: Inverter 0 scheduled charge enable is False 2026-08-14 22:15:19.583165: Inverter 0 charge windows currently [] 2026-08-14 22:15:19.583222: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 22:15:19.583393: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:15:19.583478: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:15:19.583547: Inverter 0 scheduled discharge enable is False 2026-08-14 22:15:19.583758: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:15:19.583813: Inverter 0 discharge windows currently [] 2026-08-14 22:15:19.583856: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:15:19.583900: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:15:19.583929: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:15:19.643484: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 29%, target 100% 2026-08-14 22:15:19.643640: Inverter 0 disabled charge window while waiting for schedule (now 08-14 22:15:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 22:15:19.643709: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:15:19.643897: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:15:19.643978: No export window planned 2026-08-14 22:15:19.644106: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 22:15:19.644145: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:15:19.644280: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:15:19.644442: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 22:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 22:15:19.644494: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 22:15:19.644550: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 22:15:19.644641: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:15:19.644684: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:15:19.644717: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:15:19.644742: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:15:19.644767: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:15:19.644798: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:15:19.644828: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:15:19.644884: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:15:19.644919: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:15:19.644972: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:15:19.645005: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:15:19.645035: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:15:19.645061: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:15:19.645102: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:15:19.645152: Inverter 0 count register writes 0 2026-08-14 22:15:19.666826: Total inverter register writes now 815 2026-08-14 22:15:19.700536: Info: Completed run status Demand 2026-08-14 22:15:19.708835: Info: record_status Demand 2026-08-14 22:15:19.716224: Saved current settings to /config/predbat_config.json 2026-08-14 22:15:19.716480: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 22:15:26.648220: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 22:15:27.662827: Processing 1345 30-minute periods for power integration 2026-08-14 22:15:27.756827: ML Component: Car charging hold False, car energy reported load False 2026-08-14 22:15:27.842229: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 22:15:27.930183: ML Temperature data points: 49066 2026-08-14 22:15:28.216150: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 22:15:28.254617: ML Component: Data fetch completed, load data age 56.0 days, 16244 data points 2026-08-14 22:15:28.254738: ML Component: Starting fine-tune training (2h interval), model age is 2.0650614608333333 hours 2026-08-14 22:15:28.254763: ML Component: Doing training... 2026-08-14 22:15:28.271013: ML Predictor: Curriculum training - capped to last 4 intermediate passes (starting at window=53.0 days) 2026-08-14 22:15:28.271436: ML Predictor: Curriculum training - 5 passes, window 53.0→56.0 days + final full pass (56.4 days) 2026-08-14 22:15:28.329816: ML Predictor: Curriculum pass 1/5: window=53.0 days (1272 hours of data) 2026-08-14 22:15:28.329941: ML Predictor: Starting initial training with 30 epochs 2026-08-14 22:15:28.931476: ML Predictor: Creating dataset with 1272 hours of training data, 48 hours validation 2026-08-14 22:15:33.652454: ML Predictor: Created 14976 training samples, 576 validation samples 2026-08-14 22:15:33.760646: ML Predictor: Normalization stats [fit] target(mean=0.0587 std=0.0470) load(mean=0.0589 std=0.0473) pv(mean=0.0000 std=0.0100) temp(mean=19.4859 std=4.4023) import_rate(mean=24.2395 std=1.9636) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1907 std=0.5232) 2026-08-14 22:15:49.737624: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0132 val_mae=0.0033 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0022 kWh ema_combined=0.0022 kWh 2026-08-14 22:15:56.497499: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:15:56.498280: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:15:56.498358: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:15:56.498658: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:15:56.498815: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:15:56.498984: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:15:56.499132: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:16:03.911907: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0175 val_mae=0.0034 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0022 kWh ema_combined=0.0022 kWh 2026-08-14 22:16:17.981107: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0201 val_mae=0.0029 kWh val_bias=+0.0008 kWh (+1.4%) combined=0.0023 kWh ema_combined=0.0022 kWh 2026-08-14 22:16:31.590090: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0198 val_mae=0.0030 kWh val_bias=-0.0011 kWh (-1.9%) combined=0.0018 kWh ema_combined=0.0021 kWh 2026-08-14 22:16:45.105250: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0175 val_mae=0.0027 kWh val_bias=+0.0002 kWh (+0.4%) combined=0.0016 kWh ema_combined=0.0019 kWh 2026-08-14 22:17:03.782755: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0138 val_mae=0.0028 kWh val_bias=+0.0006 kWh (+1.1%) combined=0.0015 kWh ema_combined=0.0018 kWh 2026-08-14 22:17:23.594683: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0124 val_mae=0.0027 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0020 kWh ema_combined=0.0019 kWh 2026-08-14 22:17:43.915479: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0103 val_mae=0.0023 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0012 kWh ema_combined=0.0017 kWh 2026-08-14 22:17:56.954137: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:17:56.955094: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:17:56.955172: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:17:56.955357: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:17:56.955407: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:17:56.955527: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:17:56.955574: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:18:03.041745: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0089 val_mae=0.0028 kWh val_bias=-0.0021 kWh (-3.6%) combined=0.0027 kWh ema_combined=0.0020 kWh 2026-08-14 22:18:23.153965: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0094 val_mae=0.0020 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0013 kWh ema_combined=0.0018 kWh 2026-08-14 22:18:41.592418: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0071 val_mae=0.0020 kWh val_bias=-0.0006 kWh (-1.0%) combined=0.0014 kWh ema_combined=0.0017 kWh 2026-08-14 22:19:01.848974: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0079 val_mae=0.0025 kWh val_bias=+0.0015 kWh (+2.6%) combined=0.0025 kWh ema_combined=0.0019 kWh 2026-08-14 22:19:21.780735: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0071 val_mae=0.0018 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0013 kWh ema_combined=0.0017 kWh 2026-08-14 22:19:42.962807: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0064 val_mae=0.0018 kWh val_bias=+0.0005 kWh (+0.9%) combined=0.0016 kWh ema_combined=0.0017 kWh 2026-08-14 22:19:57.454604: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:19:57.455217: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:19:57.455394: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:19:57.455737: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:19:57.455935: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:19:57.456091: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:19:57.456239: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:20:00.675263: --------------- PredBat - update at 2026-08-14 22:20:00+01:00 with clock skew 0 minutes, minutes now 1340 2026-08-14 22:20:00.676741: Saved current settings to /config/predbat_config.json 2026-08-14 22:20:00.677100: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 20.0 minutes 2026-08-14 22:20:00.677322: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 22:20:00.677548: Autoupdate: Currently up to date 2026-08-14 22:20:00.710386: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 22:20:00.710668: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 22:20:00.710958: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 22:20:00.711650: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 22:20:00.711910: Predbat mode is set to Control charge & discharge 2026-08-14 22:20:01.089004: Found 21602 load_today datapoints going back 28 days 2026-08-14 22:20:01.089190: Using load_power data to fill gaps in load_today data 2026-08-14 22:20:02.487712: Processing 721 30-minute periods for power integration 2026-08-14 22:20:02.658671: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 22:20:02.658914: Car charging hold False, threshold 6.0kWh 2026-08-14 22:20:02.659096: Current data so far today: load 23.45kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 22:20:02.682193: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 22:20:02.682955: Standing charge is set to 49.98p 2026-08-14 22:20:02.795914: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 22:20:02.796110: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 22:20:02.796380: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 705.0 minutes 2026-08-14 22:20:02.797040: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 705.0 minutes 2026-08-14 22:20:02.804257: Loaded 95 datapoints of futurerate analysis 2026-08-14 22:20:03.076634: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41'] 2026-08-14 22:20:03.224527: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 22:20:03.225089: Import rates: min 13.77p, max 43.82p, average 25.97p 2026-08-14 22:20:03.355185: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 22:20:03.355388: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 22:20:03.356842: High export rate found rates in range 99p to -99p 2026-08-14 22:20:03.490979: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 22:20:03.491202: Car 0 charging is not planned as it is not plugged in 2026-08-14 22:20:03.514250: Battery level now 4.62kWh, -1hr ago 5.53kWh, at midnight 2.43kWh, battery value change in the last hour -10.69p, change today 25.92p, rate_forward 11.83p 2026-08-14 22:20:03.514851: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.1kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 22:20:03.634998: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 22:20:03.635186: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 22:20:03.746990: Using weighted-bucket historical load forecast over 14 days 2026-08-14 22:20:03.785806: Today's load divergence 143.14%, in-day adjustment 141.39%, damping 0.95x, yesterday 146.81% today 140.98% blend 6.94% 2026-08-14 22:20:03.785933: Today's predicted so far 12.62kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 12.62kWh forecast extra. 2026-08-14 22:20:03.785967: Today's actual load so far 23.36kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 22:20:03.839478: Inverter 0: Type SK Sunsynk 2026-08-14 22:20:03.839575: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 22:20:03.840233: Reserve min: 7%, battery_min: 7% 2026-08-14 22:20:03.840369: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 22:20:03.840740: Inverter 0 SoC: 4.47kW 28%, current charge rate 5000W, current discharge rate 5250W, current battery power 1836W, current battery voltage 51.2V, grid power -55W, load power 1893W, PV Power 0W 2026-08-14 22:20:03.841273: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:20:03.841443: Inverter 0 scheduled charge enable is False 2026-08-14 22:20:03.841595: Inverter 0 charge windows currently [] 2026-08-14 22:20:03.841823: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 22:20:03.842130: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:20:03.842267: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:20:03.842471: Inverter 0 scheduled discharge enable is False 2026-08-14 22:20:03.842782: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:20:03.842988: Inverter 0 discharge windows currently [] 2026-08-14 22:20:03.843114: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:20:03.843255: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:20:03.843378: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:20:03.993821: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 22:20:03.993979: Plan was last updated on 2026-08-14 22:15:00+01:00 and is now 5.0 minutes old 2026-08-14 22:20:03.994259: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 22:20:03.994310: Best export window [ ] 2026-08-14 22:20:03.995612: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 22:20:04.001638: Load divergence over 8.0 hours mean 481.16W, min 345.0W, max 1182.6W, std dev 110.34W, divergence 11.47% 2026-08-14 22:20:04.039556: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 22:20:04.039879: LoadML is_calculating True 2026-08-14 22:20:04.040025: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 22:20:04.081518: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1355.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 47.34kWh, PV 0.0kWh 2026-08-14 22:20:04.368508: Battery has 2.75 hours left - now at 4.47kWh 2026-08-14 22:20:04.425624: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1384.82p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.47kWh, PV 0.0kWh 2026-08-14 22:20:04.587407: predict best10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1253.69p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.47kWh, PV 0.0kWh 2026-08-14 22:20:04.817745: predict best end_record 08-16 11:35:00, final soc 1.12kWh, metric 1226.36p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 47.34kWh, PV 0.0kWh 2026-08-14 22:20:04.818533: Saving plan best values to HA entities 2026-08-14 22:20:05.218122: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 22:20:05.227767: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 22:20:05.236206: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.47kWh, house 7.99kWh, export 0.0kWh, metric 1226.36p, metric10 1253.69p 2026-08-14 22:20:05.348574: Marginal costs baseline metric (no standing charge): 1126.39 2026-08-14 22:20:05.948801: Marginal energy costs matrix computed: min=17.63 max=29.15 2026-08-14 22:20:06.087338: Rate array import [{'start': 1340, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1340, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 22:20:06.088154: - Your estimated bill for today is £7.35 and tomorrow is £4.28 2026-08-14 22:20:06.088356: - Import rates are expensive (24.6p - 32.0p) for the next 8 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 22:20:06.088398: - The battery is currently at 28% and is in eco mode for the next 14 hours. 2026-08-14 22:20:06.088420: - For the next 48 hours there will be no solar generation. 2026-08-14 22:20:06.088438: - You will run out of battery in 2 and three quarters hours. 2026-08-14 22:20:06.088454: - Your next charge slot will be in 14 hours where import rates will be cheap (15.4p). 2026-08-14 22:20:06.088471: 2026-08-14 22:20:06.175608: Plan calculation took 2.18 seconds 2026-08-14 22:20:06.190787: No high rate period found 2026-08-14 22:20:06.317822: Import threshold used for optimisation was 27.18p 2026-08-14 22:20:06.420575: Low import rate windows [0: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 1: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 2: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 3: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 4: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 5: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 6: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 7: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 8: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 9: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 10: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 11: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 12: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 13: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 14: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 15: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 16: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 17: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 18: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 19: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 20: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 21: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 22: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 23: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 24: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 25: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 26: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 27: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 28: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 29: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 30: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 31: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 32: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 33: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 34: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 35: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 36: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 37: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 38: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 39: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 40: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 41: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 42: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 43: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 44: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 45: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 46: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 47: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 48: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 49: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 50: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 51: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 52: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 53: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 54: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 55: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 56: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 57: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 58: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 59: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 60: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 61: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 62: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 63: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 64: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 65: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 66: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 67: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 68: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 69: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 70: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 71: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 72: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 73: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 74: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 75: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 76: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 77: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 78: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 79: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 80: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 81: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 82: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 83: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 84: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 85: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 86: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 87: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 88: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 89: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 90: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 91: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 92: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 93: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 94: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77] 2026-08-14 22:20:06.434883: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 28%, target 100% 2026-08-14 22:20:06.435197: Inverter 0 disabled charge window while waiting for schedule (now 08-14 22:20:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 22:20:06.435381: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:20:06.435697: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:20:06.435956: No export window planned 2026-08-14 22:20:06.436269: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 22:20:06.436446: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:20:06.442524: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:20:06.442930: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 22:20:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 22:20:06.443136: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 22:20:06.443296: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 22:20:06.443481: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:20:06.443614: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:20:06.443737: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:20:06.443857: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:20:06.444007: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:20:06.444164: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:20:06.444283: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:20:06.444440: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:20:06.444567: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:20:06.444686: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:20:06.444804: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:20:06.444942: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:20:06.445152: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:20:06.445284: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:20:06.445397: Inverter 0 count register writes 0 2026-08-14 22:20:06.496740: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 22:20:06.519346: Total inverter register writes now 815 2026-08-14 22:20:06.602516: Info: Completed run status Demand 2026-08-14 22:20:06.611946: Info: record_status Demand 2026-08-14 22:20:06.624796: Saved current settings to /config/predbat_config.json 2026-08-14 22:20:06.625223: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 22:20:08.062709: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0071 val_mae=0.0017 kWh val_bias=-0.0005 kWh (-0.9%) combined=0.0011 kWh ema_combined=0.0015 kWh 2026-08-14 22:20:26.495209: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0060 val_mae=0.0019 kWh val_bias=-0.0005 kWh (-0.8%) combined=0.0009 kWh ema_combined=0.0013 kWh 2026-08-14 22:20:41.811731: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:20:41.812210: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:20:41.812396: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:20:41.812800: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:20:41.813007: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:20:41.813156: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:20:41.813321: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:20:46.304041: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0053 val_mae=0.0016 kWh val_bias=+0.0006 kWh (+1.0%) combined=0.0015 kWh ema_combined=0.0014 kWh 2026-08-14 22:21:08.482223: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0058 val_mae=0.0015 kWh val_bias=+0.0007 kWh (+1.2%) combined=0.0013 kWh ema_combined=0.0014 kWh 2026-08-14 22:21:29.388526: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0057 val_mae=0.0013 kWh val_bias=-0.0004 kWh (-0.7%) combined=0.0010 kWh ema_combined=0.0012 kWh 2026-08-14 22:21:48.429564: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0053 val_mae=0.0013 kWh val_bias=-0.0000 kWh (-0.0%) combined=0.0007 kWh ema_combined=0.0011 kWh 2026-08-14 22:22:08.340509: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0055 val_mae=0.0014 kWh val_bias=-0.0004 kWh (-0.7%) combined=0.0010 kWh ema_combined=0.0010 kWh 2026-08-14 22:22:28.436478: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0055 val_mae=0.0013 kWh val_bias=+0.0001 kWh (+0.1%) combined=0.0007 kWh ema_combined=0.0009 kWh 2026-08-14 22:22:42.311508: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:22:42.312082: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:22:42.312282: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:22:42.312639: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:22:42.312810: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:22:42.312999: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:22:42.313142: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:22:47.392080: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0051 val_mae=0.0012 kWh val_bias=+0.0003 kWh (+0.5%) combined=0.0009 kWh ema_combined=0.0009 kWh 2026-08-14 22:23:07.386241: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0054 val_mae=0.0014 kWh val_bias=-0.0003 kWh (-0.6%) combined=0.0008 kWh ema_combined=0.0009 kWh 2026-08-14 22:23:26.451236: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0050 val_mae=0.0012 kWh val_bias=+0.0000 kWh (+0.0%) combined=0.0006 kWh ema_combined=0.0008 kWh 2026-08-14 22:23:46.566790: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0053 val_mae=0.0012 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0006 kWh ema_combined=0.0008 kWh 2026-08-14 22:24:07.955664: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0049 val_mae=0.0012 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0006 kWh ema_combined=0.0007 kWh 2026-08-14 22:24:27.610748: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0044 val_mae=0.0012 kWh val_bias=+0.0000 kWh (+0.0%) combined=0.0007 kWh ema_combined=0.0007 kWh 2026-08-14 22:24:47.172547: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0053 val_mae=0.0014 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0008 kWh ema_combined=0.0007 kWh 2026-08-14 22:24:56.728934: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:24:56.729341: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:24:56.729412: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:24:56.729805: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:24:56.729876: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:24:56.730059: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:24:56.730160: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:25:00.882964: --------------- PredBat - update at 2026-08-14 22:25:00+01:00 with clock skew 0 minutes, minutes now 1345 2026-08-14 22:25:00.884531: Saved current settings to /config/predbat_config.json 2026-08-14 22:25:00.884796: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 25.0 minutes 2026-08-14 22:25:00.884999: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 22:25:00.885220: Autoupdate: Currently up to date 2026-08-14 22:25:00.916225: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 22:25:00.916527: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 22:25:00.916850: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 22:25:00.917672: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 22:25:00.917911: Predbat mode is set to Control charge & discharge 2026-08-14 22:25:01.304567: Found 21602 load_today datapoints going back 28 days 2026-08-14 22:25:01.304862: Using load_power data to fill gaps in load_today data 2026-08-14 22:25:02.402021: Processing 721 30-minute periods for power integration 2026-08-14 22:25:02.791086: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 22:25:02.791309: Car charging hold False, threshold 6.0kWh 2026-08-14 22:25:02.791370: Current data so far today: load 23.6kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 22:25:02.811775: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 22:25:02.812765: Standing charge is set to 49.98p 2026-08-14 22:25:02.884939: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 22:25:02.885081: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 22:25:02.885319: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 710.0 minutes 2026-08-14 22:25:02.885868: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 710.0 minutes 2026-08-14 22:25:02.894057: Loaded 95 datapoints of futurerate analysis 2026-08-14 22:25:03.161807: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41'] 2026-08-14 22:25:03.241195: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 22:25:03.243095: Import rates: min 13.77p, max 43.82p, average 25.97p 2026-08-14 22:25:03.342243: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 22:25:03.342380: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 22:25:03.344019: High export rate found rates in range 99p to -99p 2026-08-14 22:25:03.581356: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 22:25:03.581553: Car 0 charging is not planned as it is not plugged in 2026-08-14 22:25:03.595627: Battery level now 4.47kWh, -1hr ago 5.44kWh, at midnight 2.43kWh, battery value change in the last hour -11.45p, change today 24.13p, rate_forward 11.83p 2026-08-14 22:25:03.596743: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.2kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 22:25:03.715540: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 22:25:03.715956: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 22:25:03.898761: Using weighted-bucket historical load forecast over 14 days 2026-08-14 22:25:03.949945: Today's load divergence 143.22%, in-day adjustment 141.44%, damping 0.95x, yesterday 146.81% today 141.06% blend 6.6% 2026-08-14 22:25:03.950102: Today's predicted so far 12.68kWh with 0.0kWh car/iBoost excluded, 17.38kWh import ignored, and 12.68kWh forecast extra. 2026-08-14 22:25:03.950142: Today's actual load so far 23.46kWh with 0.0kWh car/iBoost excluded, and 17.38kWh import ignored. 2026-08-14 22:25:03.988994: Inverter 0: Type SK Sunsynk 2026-08-14 22:25:03.989088: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 22:25:03.989635: Reserve min: 7%, battery_min: 7% 2026-08-14 22:25:03.989818: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 22:25:03.990103: Inverter 0 SoC: 4.32kW 27%, current charge rate 5000W, current discharge rate 5250W, current battery power 1761W, current battery voltage 51.2V, grid power -55W, load power 1818W, PV Power 0W 2026-08-14 22:25:03.990264: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:25:03.990354: Inverter 0 scheduled charge enable is False 2026-08-14 22:25:03.990391: Inverter 0 charge windows currently [] 2026-08-14 22:25:03.990417: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 22:25:03.990521: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:25:03.990557: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:25:03.990592: Inverter 0 scheduled discharge enable is False 2026-08-14 22:25:03.990720: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:25:03.990757: Inverter 0 discharge windows currently [] 2026-08-14 22:25:03.990793: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:25:03.990814: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:25:03.990831: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:25:04.079905: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 22:25:04.080064: Plan was last updated on 2026-08-14 22:15:00+01:00 and is now 10.0 minutes old 2026-08-14 22:25:04.080341: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 22:25:04.080398: Best export window [ ] 2026-08-14 22:25:04.081233: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 22:25:04.084856: Load divergence over 8.0 hours mean 481.15W, min 378.0W, max 1057.8W, std dev 98.55W, divergence 10.24% 2026-08-14 22:25:04.118846: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 22:25:04.118985: LoadML is_calculating True 2026-08-14 22:25:04.119019: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 22:25:04.243367: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1358.57p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 47.48kWh, PV 0.0kWh 2026-08-14 22:25:04.519019: Battery has 2.67 hours left - now at 4.32kWh 2026-08-14 22:25:04.603575: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1387.44p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.62kWh, PV 0.0kWh 2026-08-14 22:25:04.774314: predict best10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1256.26p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.62kWh, PV 0.0kWh 2026-08-14 22:25:04.926503: predict best end_record 08-16 11:40:00, final soc 1.12kWh, metric 1229.02p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 47.48kWh, PV 0.0kWh 2026-08-14 22:25:04.927228: Saving plan best values to HA entities 2026-08-14 22:25:05.345220: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 22:25:05.368236: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 22:25:05.377890: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.48kWh, house 8.11kWh, export 0.0kWh, metric 1229.02p, metric10 1256.26p 2026-08-14 22:25:05.641949: Marginal costs baseline metric (no standing charge): 1129.0542 2026-08-14 22:25:06.065586: Marginal energy costs matrix computed: min=17.37 max=28.93 2026-08-14 22:25:06.231701: Rate array import [{'start': 1345, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1345, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 22:25:06.237803: - Your estimated bill for today is £7.35 and tomorrow is £4.29 2026-08-14 22:25:06.237952: - Import rates are expensive (24.6p - 32.0p) for the next 8 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 22:25:06.237992: - The battery is currently at 27% and is in eco mode for the next 14 hours. 2026-08-14 22:25:06.238032: - For the next 48 hours there will be no solar generation. 2026-08-14 22:25:06.238066: - You will run out of battery in 2 and three quarters hours. 2026-08-14 22:25:06.238096: - Your next charge slot will be in 14 hours where import rates will be cheap (15.4p). 2026-08-14 22:25:06.242566: 2026-08-14 22:25:06.319847: Plan calculation took 2.24 seconds 2026-08-14 22:25:06.338335: No high rate period found 2026-08-14 22:25:06.450345: Import threshold used for optimisation was 27.18p 2026-08-14 22:25:06.583174: Low import rate windows [0: 08-14 22:00:00 - 08-14 22:30:00 @ 31.99, 1: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 2: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 3: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 4: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 5: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 6: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 7: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 8: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 9: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 10: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 11: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 12: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 13: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 14: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 15: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 16: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 17: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 18: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 19: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 20: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 21: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 22: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 23: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 24: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 25: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 26: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 27: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 28: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 29: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 30: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 31: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 32: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 33: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 34: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 35: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 36: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 37: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 38: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 39: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 40: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 41: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 42: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 43: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 44: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 45: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 46: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 47: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 48: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 49: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 50: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 51: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 52: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 53: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 54: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 55: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 56: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 57: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 58: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 59: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 60: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 61: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 62: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 63: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 64: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 65: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 66: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 67: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 68: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 69: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 70: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 71: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 72: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 73: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 74: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 75: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 76: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 77: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 78: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 79: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 80: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 81: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 82: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 83: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 84: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 85: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 86: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 87: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 88: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 89: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 90: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 91: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 92: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 93: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 94: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77] 2026-08-14 22:25:06.602886: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 27%, target 100% 2026-08-14 22:25:06.603076: Inverter 0 disabled charge window while waiting for schedule (now 08-14 22:25:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 22:25:06.603163: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:25:06.603359: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:25:06.603433: No export window planned 2026-08-14 22:25:06.603529: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 22:25:06.603565: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:25:06.603694: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:25:06.603902: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 22:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 22:25:06.603965: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 22:25:06.607053: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 22:25:06.607241: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:25:06.607298: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:25:06.607337: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:25:06.607384: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:25:06.607421: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:25:06.607457: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:25:06.607493: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:25:06.607587: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:25:06.619206: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:25:06.619515: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:25:06.620083: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:25:06.620143: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:25:06.620209: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:25:06.621736: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:25:06.621878: Inverter 0 count register writes 0 2026-08-14 22:25:06.691005: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 22:25:06.699908: Recompute is saving previous plan... 2026-08-14 22:25:06.703690: Best charge window [ 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0% ] 2026-08-14 22:25:06.703949: Best export window [ ] 2026-08-14 22:25:06.704898: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 22:25:06.708437: Load divergence over 8.0 hours mean 481.15W, min 378.0W, max 1057.8W, std dev 98.55W, divergence 10.24% 2026-08-14 22:25:06.768684: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 22:25:06.768881: LoadML is_calculating True 2026-08-14 22:25:06.768917: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 22:25:06.782898: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 22:25:06.785615: Optimise levels pass started at 2026-08-14 22:25:06 2026-08-14 22:25:06.786151: Optimise all windows, total charge 94 export 1 2026-08-14 22:25:14.113811: >> Region optimisation pass width 960 gives best_metric 1226.91p, best_cost 1232.88p, best_cycle 37.98kWh, best_import 29.75kWh 2026-08-14 22:25:15.050076: >> Region optimisation pass width 480 gives best_metric 1226.91p, best_cost 1232.88p, best_cycle 37.98kWh, best_import 29.75kWh 2026-08-14 22:25:16.198303: >> Region optimisation pass width 240 gives best_metric 1226.91p, best_cost 1232.88p, best_cycle 37.98kWh, best_import 29.75kWh 2026-08-14 22:25:16.816904: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0051 val_mae=0.0012 kWh val_bias=+0.0001 kWh (+0.3%) combined=0.0008 kWh ema_combined=0.0008 kWh 2026-08-14 22:25:16.817978: ML Predictor: Restored best weights from epoch with val_mae=0.0012 kWh val_bias=+0.0000 kWh (+0.0%) 2026-08-14 22:25:16.818119: ML Predictor: Training complete, final val_mae=0.0012 kWh val_bias=+0.0000 kWh (+0.0%) 2026-08-14 22:25:22.458510: >> Region optimisation pass width 120 gives best_metric 1226.91p, best_cost 1232.88p, best_cycle 37.98kWh, best_import 29.75kWh 2026-08-14 22:25:22.458997: Calculated end_record as 08-16 11:30:00 based on best_price 15.87p, next_charge_start 08-15 11:30:00, max_windows 74 2026-08-14 22:25:22.459079: Optimise levels pass ended at 2026-08-14 22:25:22, duration 15.7 seconds tried 326 combinations 2026-08-14 22:25:22.473385: Set best_price_charge_level 17.0p, best_price_export_level 0p, best_price_charge 15.87p, best_cost_export 0p, best_metric 1226.91p, best_keep 0kWh, best_cycle 37.98kWh, best_carbon 0kg, best_import 29.75kWh 2026-08-14 22:25:22.536485: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.87p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 0, 16.0, 0, 13.0, 13.0, 13.0, 13.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 22:25:24.123485: ML Predictor: AR rollout over holdout: ar_mae=0.0013 kWh ar_bias=+0.0000 kWh (+0.1%) [drift vs teacher-forced: +0.0001 kWh] 2026-08-14 22:25:24.155071: ML Predictor: Curriculum pass 1/5 complete, val_mae=0.0012 kWh 2026-08-14 22:25:24.260198: ML Predictor: Curriculum pass 2/5: window=54.0 days (1296 hours of data) 2026-08-14 22:25:24.260314: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 22:25:25.327225: ML Predictor: Creating dataset with 1296 hours of training data, 48 hours validation 2026-08-14 22:25:38.315227: ML Predictor: Created 15264 training samples, 576 validation samples 2026-08-14 22:25:38.405142: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0472) load(mean=0.0589 std=0.0473) pv(mean=0.0000 std=0.0100) temp(mean=19.4873 std=4.4036) import_rate(mean=24.2399 std=1.9618) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1905 std=0.5233) 2026-08-14 22:25:38.521202: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 22:25:38.582366: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 22:25:38.649972: ML Predictor: Baseline (pre-finetune) val_mae=0.0021 kWh val_bias=-0.0002 kWh 2026-08-14 22:25:56.004022: Tweak plan optimisation started metric 1116.92p, cost 1126.15p 2026-08-14 22:25:58.065332: Tweak optimisation finished metric 1116.92p, cost 1126.15p, metric_keep 0kWh, cycle 26.88kWh, carbon 0kg, import 22.41kWh, changed 8 window(s) 2026-08-14 22:25:58.084719: Swap charge optimisation started metric 1116.92p, cost 1126.15p, min_improvement_swap 0.1p 2026-08-14 22:26:08.798823: Swap charge optimisation finished metric 1116.92p, cost 1126.15p 2026-08-14 22:26:08.909337: Pruned 2 dead plan slot(s) in 9 trial(s), nominal metric 1112.91p -> 1112.91p, plan now metric 1116.96p, cost 1126.15p, cycle 26.88kWh, import 22.41kWh 2026-08-14 22:26:08.925878: Raw charge windows [ 14-08 22:00:00 - 14-08 22:30:00 @ 31.99p 0%, 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 81%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 81%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 81%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100% ] reserve 1.12 2026-08-14 22:26:08.926718: Unclipped charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 14:00:00 @ 15.55p 100%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 81%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] reserve 1.12 2026-08-14 22:26:08.927087: Unfiltered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 14:00:00 @ 15.55p 100%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 81%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] reserve 1.12 2026-08-14 22:26:08.927410: Filtered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 14:00:00 @ 15.55p 100%, 15-08 14:00:00 - 15-08 16:00:00 @ 15.23p 81%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] reserve 1.12 2026-08-14 22:26:09.025263: Previous plan best metric is 1117.0 (cost 1126.21) and new plan best metric is 1116.92 (cost 1126.15) 2026-08-14 22:26:09.034451: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 22:26:09.034810: Plan valid is now true after recompute was False 2026-08-14 22:26:09.140045: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1355.73p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 47.29kWh, PV 0.0kWh 2026-08-14 22:26:09.386738: Battery has 2.67 hours left - now at 4.32kWh 2026-08-14 22:26:09.484226: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1384.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.42kWh, PV 0.0kWh 2026-08-14 22:26:09.687922: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1253.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.42kWh, PV 0.0kWh 2026-08-14 22:26:09.903252: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1226.18p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 47.29kWh, PV 0.0kWh 2026-08-14 22:26:09.903376: Saving plan best values to HA entities 2026-08-14 22:26:10.234427: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 22:26:10.241542: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 22:26:10.249075: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.48kWh, house 7.93kWh, export 0.0kWh, metric 1226.18p, metric10 1253.29p 2026-08-14 22:26:10.384750: Marginal costs baseline metric (no standing charge): 1126.2134 2026-08-14 22:26:10.817867: Marginal energy costs matrix computed: min=17.37 max=28.93 2026-08-14 22:26:10.990407: Rate array import [{'start': 1345, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.0p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1345, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 22:26:10.991855: - Your estimated bill for today is £7.35 and tomorrow is £4.29 2026-08-14 22:26:10.992100: - Import rates are expensive (24.6p - 32.0p) for the next 8 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 22:26:10.992253: - The battery is currently at 27% and is in eco mode for the next 14 hours. 2026-08-14 22:26:10.992370: - For the next 48 hours there will be no solar generation. 2026-08-14 22:26:10.992485: - You will run out of battery in 2 and three quarters hours. 2026-08-14 22:26:10.992589: - Your next charge slot will be in 14 hours where import rates will be cheap (15.4p). 2026-08-14 22:26:10.993260: 2026-08-14 22:26:11.079984: Plan calculation took 64.39 seconds 2026-08-14 22:26:11.080395: Inverter 0: Type SK Sunsynk 2026-08-14 22:26:11.080537: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 22:26:11.081461: Reserve min: 7%, battery_min: 7% 2026-08-14 22:26:11.081665: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 22:26:11.082127: Inverter 0 SoC: 4.32kW 27%, current charge rate 5000W, current discharge rate 5250W, current battery power 1773W, current battery voltage 51.2V, grid power -54W, load power 1828W, PV Power 0W 2026-08-14 22:26:11.082412: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:26:11.082632: Inverter 0 scheduled charge enable is False 2026-08-14 22:26:11.082755: Inverter 0 charge windows currently [] 2026-08-14 22:26:11.082913: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 22:26:11.083150: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:26:11.083296: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:26:11.083618: Inverter 0 scheduled discharge enable is False 2026-08-14 22:26:11.083951: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:26:11.084088: Inverter 0 discharge windows currently [] 2026-08-14 22:26:11.084217: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:26:11.084320: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:26:11.084440: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:26:11.266610: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 27%, target 100% 2026-08-14 22:26:11.266812: Inverter 0 disabled charge window while waiting for schedule (now 08-14 22:25:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 22:26:11.266985: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:26:11.267291: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:26:11.267456: No export window planned 2026-08-14 22:26:11.267649: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 22:26:11.267703: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:26:11.267998: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:26:11.268275: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 22:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 22:26:11.268343: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 22:26:11.268501: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 22:26:11.268681: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:26:11.268844: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:26:11.269030: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:26:11.269166: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:26:11.269313: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:26:11.269436: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:26:11.269577: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:26:11.269749: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:26:11.269923: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:26:11.270049: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:26:11.270190: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:26:11.270313: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:26:11.270453: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:26:11.270573: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:26:11.270702: Inverter 0 count register writes 0 2026-08-14 22:26:11.307340: Total inverter register writes now 815 2026-08-14 22:26:11.380526: Info: Completed run status Demand 2026-08-14 22:26:11.401726: Info: record_status Demand 2026-08-14 22:26:11.413743: Saved current settings to /config/predbat_config.json 2026-08-14 22:26:11.413963: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 22:26:18.063960: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0083 val_mae=0.0022 kWh val_bias=+0.0004 kWh (+0.7%) combined=0.0014 kWh ema_combined=0.0014 kWh 2026-08-14 22:26:38.277665: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0101 val_mae=0.0024 kWh val_bias=+0.0003 kWh (+0.5%) combined=0.0016 kWh ema_combined=0.0015 kWh 2026-08-14 22:26:41.559781: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:26:41.560138: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:26:41.560204: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:26:41.560421: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:26:41.560506: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:26:41.560554: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:26:41.560585: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:26:57.855887: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0087 val_mae=0.0026 kWh val_bias=-0.0014 kWh (-2.7%) combined=0.0027 kWh ema_combined=0.0018 kWh 2026-08-14 22:27:18.058208: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0092 val_mae=0.0019 kWh val_bias=+0.0005 kWh (+1.0%) combined=0.0015 kWh ema_combined=0.0017 kWh 2026-08-14 22:27:39.023529: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0089 val_mae=0.0021 kWh val_bias=-0.0004 kWh (-0.7%) combined=0.0011 kWh ema_combined=0.0016 kWh 2026-08-14 22:27:59.578551: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0090 val_mae=0.0025 kWh val_bias=+0.0008 kWh (+1.6%) combined=0.0013 kWh ema_combined=0.0015 kWh 2026-08-14 22:28:21.415228: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0092 val_mae=0.0020 kWh val_bias=+0.0006 kWh (+1.1%) combined=0.0015 kWh ema_combined=0.0015 kWh 2026-08-14 22:28:42.005843: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:28:42.006065: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:28:42.006098: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:28:42.006213: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:28:42.006241: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:28:42.006257: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:28:42.006271: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:28:42.290082: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0074 val_mae=0.0019 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0013 kWh ema_combined=0.0014 kWh 2026-08-14 22:29:03.386722: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0072 val_mae=0.0016 kWh val_bias=-0.0005 kWh (-0.9%) combined=0.0012 kWh ema_combined=0.0014 kWh 2026-08-14 22:29:24.356400: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0076 val_mae=0.0017 kWh val_bias=+0.0002 kWh (+0.4%) combined=0.0012 kWh ema_combined=0.0013 kWh 2026-08-14 22:29:24.356678: ML Predictor: Early stopping at epoch 10 2026-08-14 22:29:24.357631: ML Predictor: Restored best weights from epoch with val_mae=0.0021 kWh val_bias=-0.0002 kWh (-0.4%) 2026-08-14 22:29:24.357900: ML Predictor: Training complete, final val_mae=0.0021 kWh val_bias=-0.0002 kWh (-0.4%) 2026-08-14 22:29:26.142046: ML Predictor: AR rollout over holdout: ar_mae=0.0026 kWh ar_bias=-0.0003 kWh (-0.5%) [drift vs teacher-forced: +0.0005 kWh] 2026-08-14 22:29:26.159339: ML Predictor: Curriculum pass 2/5 complete, val_mae=0.0021 kWh 2026-08-14 22:29:26.252221: ML Predictor: Curriculum pass 3/5: window=55.0 days (1320 hours of data) 2026-08-14 22:29:26.252521: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 22:29:26.933903: ML Predictor: Creating dataset with 1320 hours of training data, 48 hours validation 2026-08-14 22:29:31.959515: ML Predictor: Created 15552 training samples, 576 validation samples 2026-08-14 22:29:32.013746: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0472) load(mean=0.0589 std=0.0472) pv(mean=0.0000 std=0.0100) temp(mean=19.4979 std=4.4109) import_rate(mean=24.2408 std=1.9586) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1903 std=0.5235) 2026-08-14 22:29:32.090512: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 22:29:32.103794: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 22:29:32.275507: ML Predictor: Baseline (pre-finetune) val_mae=0.0041 kWh val_bias=-0.0012 kWh 2026-08-14 22:29:53.156274: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0076 val_mae=0.0035 kWh val_bias=-0.0010 kWh (-1.4%) combined=0.0023 kWh ema_combined=0.0023 kWh 2026-08-14 22:30:00.369553: --------------- PredBat - update at 2026-08-14 22:30:00+01:00 with clock skew 0 minutes, minutes now 1350 2026-08-14 22:30:00.370610: Saved current settings to /config/predbat_config.json 2026-08-14 22:30:00.370804: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 30.0 minutes 2026-08-14 22:30:00.370916: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 22:30:00.371012: Autoupdate: Currently up to date 2026-08-14 22:30:00.423600: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 22:30:00.424002: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 22:30:00.424491: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 22:30:00.425359: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 22:30:00.425682: Predbat mode is set to Control charge & discharge 2026-08-14 22:30:00.768509: Found 21602 load_today datapoints going back 28 days 2026-08-14 22:30:00.768672: Using load_power data to fill gaps in load_today data 2026-08-14 22:30:02.018609: Processing 721 30-minute periods for power integration 2026-08-14 22:30:02.277147: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 22:30:02.277632: Car charging hold False, threshold 6.0kWh 2026-08-14 22:30:02.277912: Current data so far today: load 23.75kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 22:30:02.330577: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 22:30:02.331315: Standing charge is set to 49.98p 2026-08-14 22:30:02.492531: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 22:30:02.492743: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 22:30:02.493375: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 715.0 minutes 2026-08-14 22:30:02.494126: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 715.0 minutes 2026-08-14 22:30:02.501896: Loaded 95 datapoints of futurerate analysis 2026-08-14 22:30:02.694702: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41'] 2026-08-14 22:30:02.749116: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 22:30:02.749627: Import rates: min 13.77p, max 43.82p, average 25.97p 2026-08-14 22:30:02.846220: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 22:30:02.861351: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 22:30:02.863680: High export rate found rates in range 99p to -99p 2026-08-14 22:30:03.083151: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 22:30:03.083441: Car 0 charging is not planned as it is not plugged in 2026-08-14 22:30:03.100874: Battery level now 4.32kWh, -1hr ago 5.44kWh, at midnight 2.43kWh, battery value change in the last hour -13.25p, change today 22.33p, rate_forward 11.83p 2026-08-14 22:30:03.101759: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 22:30:03.268754: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 22:30:03.269037: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 22:30:03.550598: Using weighted-bucket historical load forecast over 14 days 2026-08-14 22:30:03.594085: Today's load divergence 143.6%, in-day adjustment 141.76%, damping 0.95x, yesterday 146.81% today 141.42% blend 6.25% 2026-08-14 22:30:03.594241: Today's predicted so far 12.79kWh with 0.0kWh car/iBoost excluded, 17.37kWh import ignored, and 12.79kWh forecast extra. 2026-08-14 22:30:03.594279: Today's actual load so far 23.73kWh with 0.0kWh car/iBoost excluded, and 17.37kWh import ignored. 2026-08-14 22:30:03.649240: Inverter 0: Type SK Sunsynk 2026-08-14 22:30:03.649356: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 22:30:03.650240: Reserve min: 7%, battery_min: 7% 2026-08-14 22:30:03.650396: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 22:30:03.651000: Inverter 0 SoC: 4.17kW 26%, current charge rate 5000W, current discharge rate 5250W, current battery power 1681W, current battery voltage 51.2V, grid power -55W, load power 1740W, PV Power 0W 2026-08-14 22:30:03.651304: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:30:03.651513: Inverter 0 scheduled charge enable is False 2026-08-14 22:30:03.651604: Inverter 0 charge windows currently [] 2026-08-14 22:30:03.651698: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 22:30:03.651977: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:30:03.652036: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:30:03.652204: Inverter 0 scheduled discharge enable is False 2026-08-14 22:30:03.652773: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:30:03.652881: Inverter 0 discharge windows currently [] 2026-08-14 22:30:03.652928: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:30:03.652977: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:30:03.653022: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:30:03.782021: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 22:30:03.782193: Plan was last updated on 2026-08-14 22:25:00+01:00 and is now 5.0 minutes old 2026-08-14 22:30:03.782706: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 22:30:03.782871: Best export window [ ] 2026-08-14 22:30:03.784350: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 22:30:03.790319: Load divergence over 8.0 hours mean 479.64W, min 378.6W, max 1138.2W, std dev 101.31W, divergence 10.56% 2026-08-14 22:30:03.835031: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 22:30:03.839545: LoadML is_calculating True 2026-08-14 22:30:03.842014: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 22:30:03.923407: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1357.91p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 47.42kWh, PV 0.0kWh 2026-08-14 22:30:04.171342: Battery has 2.5 hours left - now at 4.17kWh 2026-08-14 22:30:04.224228: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1386.5p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.54kWh, PV 0.0kWh 2026-08-14 22:30:04.329118: predict best10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1255.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.54kWh, PV 0.0kWh 2026-08-14 22:30:04.427612: predict best end_record 08-16 11:35:00, final soc 1.12kWh, metric 1228.35p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 47.42kWh, PV 0.0kWh 2026-08-14 22:30:04.427736: Saving plan best values to HA entities 2026-08-14 22:30:04.819710: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 22:30:04.829346: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 22:30:04.841935: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.47kWh, house 8.05kWh, export 0.0kWh, metric 1228.35p, metric10 1255.32p 2026-08-14 22:30:05.150631: Marginal costs baseline metric (no standing charge): 1128.3803 2026-08-14 22:30:05.645594: Marginal energy costs matrix computed: min=17.11 max=28.74 2026-08-14 22:30:05.774356: Rate array import [{'start': 1350, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 30.8p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1350, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 22:30:05.775738: - Your estimated bill for today is £7.35 and tomorrow is £4.30 2026-08-14 22:30:05.775913: - Import rates are expensive (24.6p - 30.8p) for the next 8 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 22:30:05.776059: - The battery is currently at 26% and is in eco mode for the next 14 hours. 2026-08-14 22:30:05.793098: - For the next 48 hours there will be no solar generation. 2026-08-14 22:30:05.793464: - You will run out of battery in 2 and a half hours. 2026-08-14 22:30:05.793656: - Your next charge slot will be in 14 hours where import rates will be cheap (15.4p). 2026-08-14 22:30:05.793915: 2026-08-14 22:30:05.897019: Plan calculation took 2.11 seconds 2026-08-14 22:30:05.905709: No high rate period found 2026-08-14 22:30:06.037561: Import threshold used for optimisation was 27.18p 2026-08-14 22:30:06.168371: Low import rate windows [0: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 1: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 2: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 3: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 4: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 5: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 6: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 7: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 8: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 9: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 10: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 11: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 12: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 13: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 14: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 15: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 16: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 17: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 18: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 19: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 20: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 21: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 22: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 23: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 24: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 25: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 26: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 27: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 28: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 29: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 30: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 31: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 32: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 33: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 34: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 35: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 36: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 37: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 38: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 39: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 40: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 41: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 42: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 43: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 44: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 45: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 46: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 47: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 48: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 49: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 50: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 51: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 52: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 53: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 54: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 55: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 56: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 57: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 58: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 59: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 60: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 61: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 62: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 63: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 64: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 65: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 66: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 67: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 68: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 69: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 70: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 71: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 72: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 73: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 74: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 75: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 76: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 77: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 78: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 79: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 80: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 81: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 82: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 83: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 84: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 85: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 86: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 87: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 88: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 89: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 90: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 91: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 92: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 93: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77] 2026-08-14 22:30:06.187375: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 26%, target 100% 2026-08-14 22:30:06.187624: Inverter 0 disabled charge window while waiting for schedule (now 08-14 22:30:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 22:30:06.187769: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:30:06.188094: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:30:06.188218: No export window planned 2026-08-14 22:30:06.188463: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 22:30:06.188512: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:30:06.188777: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:30:06.189287: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 22:30:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 22:30:06.189363: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 22:30:06.189414: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 22:30:06.189491: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:30:06.189524: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:30:06.189552: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:30:06.189577: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:30:06.189601: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:30:06.189634: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:30:06.189659: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:30:06.193120: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:30:06.193208: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:30:06.193238: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:30:06.193265: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:30:06.193291: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:30:06.193326: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:30:06.193363: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:30:06.193392: Inverter 0 count register writes 0 2026-08-14 22:30:06.235337: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 22:30:06.250488: Total inverter register writes now 815 2026-08-14 22:30:06.335894: Info: Completed run status Demand 2026-08-14 22:30:06.349042: Info: record_status Demand 2026-08-14 22:30:06.362295: Saved current settings to /config/predbat_config.json 2026-08-14 22:30:06.362633: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 22:30:25.107227: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0104 val_mae=0.0040 kWh val_bias=-0.0018 kWh (-2.5%) combined=0.0030 kWh ema_combined=0.0025 kWh 2026-08-14 22:30:41.582136: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:30:41.582682: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:30:41.582871: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:30:41.583225: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:30:41.583368: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:30:41.583510: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:30:41.583634: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:30:44.425444: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0101 val_mae=0.0039 kWh val_bias=-0.0022 kWh (-3.1%) combined=0.0027 kWh ema_combined=0.0026 kWh 2026-08-14 22:31:05.615607: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0105 val_mae=0.0034 kWh val_bias=-0.0009 kWh (-1.3%) combined=0.0022 kWh ema_combined=0.0025 kWh 2026-08-14 22:31:25.867556: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0114 val_mae=0.0051 kWh val_bias=-0.0035 kWh (-5.0%) combined=0.0039 kWh ema_combined=0.0029 kWh 2026-08-14 22:31:46.462989: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0107 val_mae=0.0029 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0015 kWh ema_combined=0.0025 kWh 2026-08-14 22:32:04.767662: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0100 val_mae=0.0041 kWh val_bias=-0.0026 kWh (-3.7%) combined=0.0035 kWh ema_combined=0.0028 kWh 2026-08-14 22:32:27.067944: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0082 val_mae=0.0027 kWh val_bias=-0.0010 kWh (-1.4%) combined=0.0019 kWh ema_combined=0.0025 kWh 2026-08-14 22:32:41.991352: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:32:41.991654: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:32:41.991726: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:32:41.991901: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:32:41.991950: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:32:41.991978: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:32:41.992075: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:32:48.404315: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0084 val_mae=0.0029 kWh val_bias=-0.0006 kWh (-0.9%) combined=0.0016 kWh ema_combined=0.0022 kWh 2026-08-14 22:33:08.988616: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0085 val_mae=0.0027 kWh val_bias=-0.0004 kWh (-0.6%) combined=0.0014 kWh ema_combined=0.0020 kWh 2026-08-14 22:33:28.540324: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0073 val_mae=0.0027 kWh val_bias=+0.0005 kWh (+0.7%) combined=0.0014 kWh ema_combined=0.0018 kWh 2026-08-14 22:33:48.801081: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0065 val_mae=0.0023 kWh val_bias=+0.0004 kWh (+0.6%) combined=0.0013 kWh ema_combined=0.0017 kWh 2026-08-14 22:34:08.618103: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0076 val_mae=0.0030 kWh val_bias=-0.0008 kWh (-1.1%) combined=0.0018 kWh ema_combined=0.0017 kWh 2026-08-14 22:34:28.020452: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0073 val_mae=0.0022 kWh val_bias=-0.0003 kWh (-0.4%) combined=0.0012 kWh ema_combined=0.0015 kWh 2026-08-14 22:34:49.075079: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0067 val_mae=0.0023 kWh val_bias=-0.0007 kWh (-1.0%) combined=0.0015 kWh ema_combined=0.0015 kWh 2026-08-14 22:34:56.577934: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:34:56.578228: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:34:56.578375: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:34:56.578652: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:34:56.578729: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:34:56.578821: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:34:56.578904: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:35:00.774913: --------------- PredBat - update at 2026-08-14 22:35:00+01:00 with clock skew 0 minutes, minutes now 1355 2026-08-14 22:35:00.776187: Saved current settings to /config/predbat_config.json 2026-08-14 22:35:00.776429: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 35.0 minutes 2026-08-14 22:35:00.776594: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 22:35:00.776794: Autoupdate: Currently up to date 2026-08-14 22:35:00.832308: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 22:35:00.832635: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 22:35:00.833010: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 22:35:00.833793: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 22:35:00.834038: Predbat mode is set to Control charge & discharge 2026-08-14 22:35:01.284252: Found 21602 load_today datapoints going back 28 days 2026-08-14 22:35:01.284582: Using load_power data to fill gaps in load_today data 2026-08-14 22:35:02.601873: Processing 721 30-minute periods for power integration 2026-08-14 22:35:02.971116: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 22:35:02.971260: Car charging hold False, threshold 6.0kWh 2026-08-14 22:35:02.971311: Current data so far today: load 23.9kWh, import 29.0kWh, export 0.0kWh, PV 0kWh 2026-08-14 22:35:02.991874: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 22:35:02.992403: Standing charge is set to 49.98p 2026-08-14 22:35:03.085787: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 22:35:03.085926: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 22:35:03.596556: Loaded 95 datapoints of futurerate analysis 2026-08-14 22:35:03.900602: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41'] 2026-08-14 22:35:03.954043: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 22:35:03.954409: Import rates: min 13.77p, max 43.82p, average 25.97p 2026-08-14 22:35:03.998345: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 22:35:03.998484: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 22:35:04.000199: High export rate found rates in range 99p to -99p 2026-08-14 22:35:04.137007: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 22:35:04.137175: Car 0 charging is not planned as it is not plugged in 2026-08-14 22:35:04.176749: Battery level now 4.17kWh, -1hr ago 5.44kWh, at midnight 2.43kWh, battery value change in the last hour -15.04p, change today 20.53p, rate_forward 11.83p 2026-08-14 22:35:04.177317: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.4kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 22:35:04.369209: Today's energy total net 29.0kWh, import 29.0kWh, export 0.0kWh, cost 734.82p, import 684.84p, export 0.0p, carbon 0.0kg 2026-08-14 22:35:04.369425: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 22:35:04.538104: Using weighted-bucket historical load forecast over 14 days 2026-08-14 22:35:04.573394: Today's load divergence 143.92%, in-day adjustment 142.02%, damping 0.95x, yesterday 146.81% today 141.72% blend 5.9% 2026-08-14 22:35:04.573869: Today's predicted so far 12.89kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 12.89kWh forecast extra. 2026-08-14 22:35:04.574109: Today's actual load so far 23.97kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 22:35:04.627394: Inverter 0: Type SK Sunsynk 2026-08-14 22:35:04.627500: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 22:35:04.628276: Reserve min: 7%, battery_min: 7% 2026-08-14 22:35:04.628378: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 22:35:04.628728: Inverter 0 SoC: 4.02kW 25%, current charge rate 5000W, current discharge rate 5250W, current battery power 1695W, current battery voltage 51.2V, grid power -54W, load power 1753W, PV Power 0W 2026-08-14 22:35:04.628914: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:35:04.629060: Inverter 0 scheduled charge enable is False 2026-08-14 22:35:04.629112: Inverter 0 charge windows currently [] 2026-08-14 22:35:04.629147: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 22:35:04.629287: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:35:04.629332: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:35:04.629377: Inverter 0 scheduled discharge enable is False 2026-08-14 22:35:04.629540: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:35:04.629586: Inverter 0 discharge windows currently [] 2026-08-14 22:35:04.629638: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:35:04.629673: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:35:04.629719: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:35:04.733428: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 22:35:04.733572: Plan was last updated on 2026-08-14 22:25:00+01:00 and is now 10.0 minutes old 2026-08-14 22:35:04.733962: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 22:35:04.734329: Best export window [ ] 2026-08-14 22:35:04.735636: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 22:35:04.740430: Load divergence over 8.0 hours mean 478.22W, min 274.8W, max 1243.8W, std dev 121.8W, divergence 12.73% 2026-08-14 22:35:04.774715: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 22:35:04.774867: LoadML is_calculating True 2026-08-14 22:35:04.774916: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 22:35:04.844114: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1359.76p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 47.54kWh, PV 0.0kWh 2026-08-14 22:35:05.100522: Battery has 2.42 hours left - now at 4.02kWh 2026-08-14 22:35:05.175754: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1388.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.67kWh, PV 0.0kWh 2026-08-14 22:35:05.382276: predict best10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1257.18p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.67kWh, PV 0.0kWh 2026-08-14 22:35:05.566307: predict best end_record 08-16 11:40:00, final soc 1.12kWh, metric 1230.3p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 47.54kWh, PV 0.0kWh 2026-08-14 22:35:05.566495: Saving plan best values to HA entities 2026-08-14 22:35:05.831915: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 22:35:05.844422: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 22:35:05.863893: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.47kWh, house 8.16kWh, export 0.0kWh, metric 1230.3p, metric10 1257.18p 2026-08-14 22:35:06.073081: Marginal costs baseline metric (no standing charge): 1130.331 2026-08-14 22:35:06.406389: Marginal energy costs matrix computed: min=16.93 max=28.7 2026-08-14 22:35:06.586506: Rate array import [{'start': 1355, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 30.8p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1355, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 22:35:06.590765: - Your estimated bill for today is £7.35 and tomorrow is £4.31 2026-08-14 22:35:06.594324: - Import rates are expensive (24.6p - 30.8p) for the next 8 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 22:35:06.594652: - The battery is currently at 25% and is in eco mode for the next 14 hours. 2026-08-14 22:35:06.594914: - For the next 48 hours there will be no solar generation. 2026-08-14 22:35:06.595152: - You will run out of battery in 2 and a half hours. 2026-08-14 22:35:06.595352: - Your next charge slot will be in 14 hours where import rates will be cheap (15.4p). 2026-08-14 22:35:06.595546: 2026-08-14 22:35:06.680518: Plan calculation took 1.95 seconds 2026-08-14 22:35:06.684828: No high rate period found 2026-08-14 22:35:06.797835: Import threshold used for optimisation was 27.18p 2026-08-14 22:35:06.911906: Low import rate windows [0: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 1: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 2: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 3: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 4: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 5: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 6: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 7: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 8: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 9: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 10: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 11: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 12: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 13: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 14: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 15: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 16: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 17: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 18: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 19: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 20: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 21: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 22: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 23: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 24: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 25: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 26: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 27: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 28: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 29: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 30: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 31: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 32: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 33: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 34: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 35: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 36: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 37: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 38: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 39: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 40: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 41: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 42: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 43: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 44: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 45: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 46: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 47: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 48: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 49: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 50: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 51: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 52: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 53: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 54: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 55: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 56: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 57: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 58: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 59: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 60: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 61: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 62: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 63: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 64: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 65: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 66: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 67: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 68: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 69: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 70: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 71: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 72: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 73: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 74: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 75: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 76: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 77: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 78: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 79: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 80: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 81: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 82: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 83: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 84: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 85: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 86: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 87: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 88: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 89: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 90: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 91: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 92: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 93: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 94: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81] 2026-08-14 22:35:06.934618: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 25%, target 100% 2026-08-14 22:35:06.934912: Inverter 0 disabled charge window while waiting for schedule (now 08-14 22:35:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 22:35:06.935050: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:35:06.935307: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:35:06.935488: No export window planned 2026-08-14 22:35:06.935723: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 22:35:06.935851: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:35:06.936098: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:35:06.936357: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 22:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 22:35:06.936498: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 22:35:06.936641: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 22:35:06.936855: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:35:06.937030: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:35:06.937160: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:35:06.937280: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:35:06.937397: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:35:06.937514: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:35:06.937631: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:35:06.937811: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:35:06.937939: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:35:06.938061: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:35:06.938177: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:35:06.938292: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:35:06.938486: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:35:06.938641: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:35:06.938797: Inverter 0 count register writes 0 2026-08-14 22:35:06.970121: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 22:35:06.970446: Recompute is saving previous plan... 2026-08-14 22:35:06.973862: Best charge window [ 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0% ] 2026-08-14 22:35:06.974051: Best export window [ ] 2026-08-14 22:35:06.975006: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 22:35:06.978521: Load divergence over 8.0 hours mean 478.22W, min 274.8W, max 1243.8W, std dev 121.8W, divergence 12.73% 2026-08-14 22:35:06.998679: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 22:35:06.998838: LoadML is_calculating True 2026-08-14 22:35:06.998874: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 22:35:07.010298: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 22:35:07.011571: Optimise levels pass started at 2026-08-14 22:35:07 2026-08-14 22:35:07.011826: Optimise all windows, total charge 94 export 1 2026-08-14 22:35:16.549607: >> Region optimisation pass width 960 gives best_metric 1229.34p, best_cost 1237.8p, best_cycle 37.41kWh, best_import 30.01kWh 2026-08-14 22:35:17.399613: >> Region optimisation pass width 480 gives best_metric 1229.34p, best_cost 1237.8p, best_cycle 37.41kWh, best_import 30.01kWh 2026-08-14 22:35:17.803621: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0058 val_mae=0.0023 kWh val_bias=-0.0011 kWh (-1.5%) combined=0.0018 kWh ema_combined=0.0016 kWh 2026-08-14 22:35:18.876112: >> Region optimisation pass width 240 gives best_metric 1229.34p, best_cost 1237.8p, best_cycle 37.41kWh, best_import 30.01kWh 2026-08-14 22:35:22.371610: >> Region optimisation pass width 120 gives best_metric 1228.25p, best_cost 1236.39p, best_cycle 35.72kWh, best_import 29.88kWh 2026-08-14 22:35:22.372209: Calculated end_record as 08-16 13:00:00 based on best_price 15.87p, next_charge_start 08-15 13:00:00, max_windows 76 2026-08-14 22:35:22.372345: Optimise levels pass ended at 2026-08-14 22:35:22, duration 15.4 seconds tried 334 combinations 2026-08-14 22:35:22.372461: Set best_price_charge_level 17.0p, best_price_export_level 0p, best_price_charge 15.87p, best_cost_export 0p, best_metric 1228.25p, best_keep 0kWh, best_cycle 35.72kWh, best_carbon 0kg, best_import 29.88kWh 2026-08-14 22:35:22.403403: Starting detailed optimisation end_record 08-16 13:00:00, best_price_charge 15.87p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 13.0, 13.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 22:35:50.811503: Tweak plan optimisation started metric 1139.67p, cost 1148.79p 2026-08-14 22:35:51.834439: Tweak optimisation finished metric 1139.67p, cost 1148.79p, metric_keep 0kWh, cycle 26.59kWh, carbon 0kg, import 23.77kWh, changed 8 window(s) 2026-08-14 22:35:51.866065: Swap charge optimisation started metric 1139.67p, cost 1148.79p, min_improvement_swap 0.1p 2026-08-14 22:36:02.506435: Swap charge optimisation finished metric 1139.67p, cost 1148.79p 2026-08-14 22:36:02.674506: Pruned 2 dead plan slot(s) in 9 trial(s), nominal metric 1135.55p -> 1135.55p, plan now metric 1139.7p, cost 1148.79p, cycle 26.59kWh, import 23.77kWh 2026-08-14 22:36:02.691088: Raw charge windows [ 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100% ] reserve 1.12 2026-08-14 22:36:02.692000: Unclipped charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 23:00:00 @ 30.8p 100% ] reserve 1.12 2026-08-14 22:36:02.692414: Unfiltered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 23:00:00 @ 30.8p 100% ] reserve 1.12 2026-08-14 22:36:02.692831: Filtered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 23:00:00 @ 30.8p 100% ] reserve 1.12 2026-08-14 22:36:02.726432: Previous plan best metric is 1139.75 (cost 1148.87) and new plan best metric is 1139.67 (cost 1148.79) 2026-08-14 22:36:02.726712: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 22:36:02.726874: Plan valid is now true after recompute was False 2026-08-14 22:36:02.761311: predict base end_record 08-16 13:00:00, final soc 1.12kWh, metric 1378.3p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.68kWh, PV 0.0kWh 2026-08-14 22:36:02.981261: Battery has 2.42 hours left - now at 4.02kWh 2026-08-14 22:36:03.042734: predict base10 end_record 08-16 13:00:00, final soc 1.12kWh, metric 1407.7p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 49.86kWh, PV 0.0kWh 2026-08-14 22:36:03.146640: predict best10 end_record 08-16 13:00:00, final soc 1.12kWh, metric 1276.61p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 49.86kWh, PV 0.0kWh 2026-08-14 22:36:03.260524: predict best end_record 08-16 13:00:00, final soc 1.12kWh, metric 1248.84p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.68kWh, PV 0.0kWh 2026-08-14 22:36:03.260646: Saving plan best values to HA entities 2026-08-14 22:36:03.647543: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 22:36:03.654110: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 22:36:03.667059: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.47kWh, house 9.3kWh, export 0.0kWh, metric 1248.84p, metric10 1276.61p 2026-08-14 22:36:03.819912: Marginal costs baseline metric (no standing charge): 1148.8737 2026-08-14 22:36:04.323668: Marginal energy costs matrix computed: min=16.93 max=28.7 2026-08-14 22:36:04.496484: Rate array import [{'start': 1355, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 30.8p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3660, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1355, 'end': 3660, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 22:36:04.500286: - Your estimated bill for today is £7.35 and tomorrow is £4.31 2026-08-14 22:36:04.500407: - Import rates are expensive (24.6p - 30.8p) for the next 8 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 22:36:04.500447: - The battery is currently at 25% and is in eco mode for the next 14 hours. 2026-08-14 22:36:04.500468: - For the next 48 hours there will be no solar generation. 2026-08-14 22:36:04.500499: - You will run out of battery in 2 and a half hours. 2026-08-14 22:36:04.500759: - Your next charge slot will be in 14 hours where import rates will be cheap (15.4p). 2026-08-14 22:36:04.500818: 2026-08-14 22:36:04.579340: Plan calculation took 57.61 seconds 2026-08-14 22:36:04.579738: Inverter 0: Type SK Sunsynk 2026-08-14 22:36:04.579877: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 22:36:04.580798: Reserve min: 7%, battery_min: 7% 2026-08-14 22:36:04.581044: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 22:36:04.581513: Inverter 0 SoC: 4.02kW 25%, current charge rate 5000W, current discharge rate 5250W, current battery power 1695W, current battery voltage 51.2V, grid power -54W, load power 1753W, PV Power 0W 2026-08-14 22:36:04.581850: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:36:04.582074: Inverter 0 scheduled charge enable is False 2026-08-14 22:36:04.582206: Inverter 0 charge windows currently [] 2026-08-14 22:36:04.582327: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 22:36:04.582563: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:36:04.582726: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:36:04.582880: Inverter 0 scheduled discharge enable is False 2026-08-14 22:36:04.583168: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:36:04.583334: Inverter 0 discharge windows currently [] 2026-08-14 22:36:04.583452: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:36:04.583576: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:36:04.583712: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:36:04.699856: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 25%, target 100% 2026-08-14 22:36:04.700173: Inverter 0 disabled charge window while waiting for schedule (now 08-14 22:35:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 22:36:04.700313: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:36:04.700616: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:36:04.700785: No export window planned 2026-08-14 22:36:04.701077: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 22:36:04.701358: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:36:04.701711: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:36:04.702251: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 22:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 22:36:04.702433: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 22:36:04.702635: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 22:36:04.702872: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:36:04.703032: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:36:04.703179: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:36:04.703316: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:36:04.703449: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:36:04.703584: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:36:04.703737: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:36:04.703925: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:36:04.704067: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:36:04.704202: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:36:04.704335: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:36:04.704466: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:36:04.704591: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:36:04.704738: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:36:04.704860: Inverter 0 count register writes 0 2026-08-14 22:36:04.740837: Total inverter register writes now 815 2026-08-14 22:36:04.795960: Info: Completed run status Demand 2026-08-14 22:36:04.806939: Info: record_status Demand 2026-08-14 22:36:04.817279: Saved current settings to /config/predbat_config.json 2026-08-14 22:36:04.817617: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 22:36:09.865078: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0059 val_mae=0.0026 kWh val_bias=-0.0015 kWh (-2.1%) combined=0.0019 kWh ema_combined=0.0017 kWh 2026-08-14 22:36:29.630265: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0053 val_mae=0.0020 kWh val_bias=-0.0006 kWh (-0.9%) combined=0.0014 kWh ema_combined=0.0016 kWh 2026-08-14 22:36:41.968458: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:36:41.968725: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:36:41.968769: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:36:41.968910: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:36:41.968969: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:36:41.969004: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:36:41.969122: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:36:48.478168: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0055 val_mae=0.0023 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0012 kWh ema_combined=0.0015 kWh 2026-08-14 22:37:08.468758: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0053 val_mae=0.0018 kWh val_bias=-0.0004 kWh (-0.6%) combined=0.0012 kWh ema_combined=0.0014 kWh 2026-08-14 22:37:28.247814: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0050 val_mae=0.0023 kWh val_bias=-0.0012 kWh (-1.8%) combined=0.0017 kWh ema_combined=0.0015 kWh 2026-08-14 22:37:47.053388: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0050 val_mae=0.0022 kWh val_bias=-0.0009 kWh (-1.3%) combined=0.0014 kWh ema_combined=0.0015 kWh 2026-08-14 22:38:05.731811: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0054 val_mae=0.0019 kWh val_bias=-0.0004 kWh (-0.6%) combined=0.0010 kWh ema_combined=0.0013 kWh 2026-08-14 22:38:27.463408: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0051 val_mae=0.0018 kWh val_bias=-0.0006 kWh (-0.9%) combined=0.0013 kWh ema_combined=0.0013 kWh 2026-08-14 22:38:42.463329: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:38:42.463794: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:38:42.463865: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:38:42.464171: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:38:42.464230: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:38:42.464312: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:38:42.464387: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:38:52.654663: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0048 val_mae=0.0018 kWh val_bias=-0.0005 kWh (-0.7%) combined=0.0011 kWh ema_combined=0.0013 kWh 2026-08-14 22:39:11.921706: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0049 val_mae=0.0019 kWh val_bias=-0.0008 kWh (-1.1%) combined=0.0014 kWh ema_combined=0.0013 kWh 2026-08-14 22:39:34.404021: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0048 val_mae=0.0018 kWh val_bias=-0.0007 kWh (-1.0%) combined=0.0013 kWh ema_combined=0.0013 kWh 2026-08-14 22:39:55.240557: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0057 val_mae=0.0016 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0009 kWh ema_combined=0.0012 kWh 2026-08-14 22:40:00.542644: --------------- PredBat - update at 2026-08-14 22:40:00+01:00 with clock skew 0 minutes, minutes now 1360 2026-08-14 22:40:00.543490: Saved current settings to /config/predbat_config.json 2026-08-14 22:40:00.543624: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 40.0 minutes 2026-08-14 22:40:00.543736: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 22:40:00.543808: Autoupdate: Currently up to date 2026-08-14 22:40:00.568926: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 22:40:00.569341: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 22:40:00.569543: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 22:40:00.570095: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 22:40:00.570222: Predbat mode is set to Control charge & discharge 2026-08-14 22:40:00.863636: Found 21602 load_today datapoints going back 28 days 2026-08-14 22:40:00.863876: Using load_power data to fill gaps in load_today data 2026-08-14 22:40:02.148228: Processing 721 30-minute periods for power integration 2026-08-14 22:40:02.423301: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 22:40:02.423605: Car charging hold False, threshold 6.0kWh 2026-08-14 22:40:02.423770: Current data so far today: load 24.05kWh, import 29.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 22:40:02.446480: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 22:40:02.469701: Standing charge is set to 49.98p 2026-08-14 22:40:02.619807: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 22:40:02.620188: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 22:40:02.620749: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 5.0 minutes 2026-08-14 22:40:02.621456: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 5.0 minutes 2026-08-14 22:40:02.630257: Loaded 95 datapoints of futurerate analysis 2026-08-14 22:40:02.831963: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41'] 2026-08-14 22:40:02.923808: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 22:40:02.924455: Import rates: min 13.77p, max 43.82p, average 25.97p 2026-08-14 22:40:03.015466: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 22:40:03.025136: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 22:40:03.027466: High export rate found rates in range 99p to -99p 2026-08-14 22:40:03.216445: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 22:40:03.216751: Car 0 charging is not planned as it is not plugged in 2026-08-14 22:40:03.234406: Battery level now 4.02kWh, -1hr ago 5.28kWh, at midnight 2.43kWh, battery value change in the last hour -14.85p, change today 18.83p, rate_forward 11.83p 2026-08-14 22:40:03.234902: Last hour: net energy 0.05kWh, import 0.05kWh, export 0.0kWh, car 0kWh, load 1.5kWh, net cost 1.64p, import 1.64p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 22:40:03.319448: Today's energy total net 29.1kWh, import 29.1kWh, export 0.0kWh, cost 738.29p, import 688.31p, export 0.0p, carbon 0.0kg 2026-08-14 22:40:03.319621: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 22:40:03.529705: Using weighted-bucket historical load forecast over 14 days 2026-08-14 22:40:03.604061: Today's load divergence 144.08%, in-day adjustment 142.15%, damping 0.95x, yesterday 146.81% today 141.88% blend 5.56% 2026-08-14 22:40:03.604330: Today's predicted so far 12.92kWh with 0.0kWh car/iBoost excluded, 17.18kWh import ignored, and 12.92kWh forecast extra. 2026-08-14 22:40:03.604476: Today's actual load so far 24.07kWh with 0.0kWh car/iBoost excluded, and 17.18kWh import ignored. 2026-08-14 22:40:03.659430: Inverter 0: Type SK Sunsynk 2026-08-14 22:40:03.659635: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 22:40:03.660323: Reserve min: 7%, battery_min: 7% 2026-08-14 22:40:03.660454: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 22:40:03.660795: Inverter 0 SoC: 4.02kW 25%, current charge rate 5000W, current discharge rate 5250W, current battery power 1629W, current battery voltage 51.2V, grid power -54W, load power 1687W, PV Power 0W 2026-08-14 22:40:03.661044: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:40:03.661194: Inverter 0 scheduled charge enable is False 2026-08-14 22:40:03.661247: Inverter 0 charge windows currently [] 2026-08-14 22:40:03.661357: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 22:40:03.661576: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:40:03.661638: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:40:03.661813: Inverter 0 scheduled discharge enable is False 2026-08-14 22:40:03.662073: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:40:03.662136: Inverter 0 discharge windows currently [] 2026-08-14 22:40:03.662237: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:40:03.662321: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:40:03.662411: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:40:03.848408: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 22:40:03.848548: Plan was last updated on 2026-08-14 22:35:00+01:00 and is now 5.0 minutes old 2026-08-14 22:40:03.848869: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 22:40:03.849138: Best export window [ ] 2026-08-14 22:40:03.850627: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 22:40:03.855543: Load divergence over 8.0 hours mean 473.63W, min 274.8W, max 1206.0W, std dev 116.81W, divergence 12.33% 2026-08-14 22:40:03.892043: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 22:40:03.892361: LoadML is_calculating True 2026-08-14 22:40:03.892898: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 22:40:03.931308: predict base end_record 08-16 13:05:00, final soc 1.12kWh, metric 1380.49p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 48.81kWh, PV 0.0kWh 2026-08-14 22:40:04.135016: Battery has 2.42 hours left - now at 4.02kWh 2026-08-14 22:40:04.236458: predict base10 end_record 08-16 13:05:00, final soc 1.12kWh, metric 1409.86p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 49.99kWh, PV 0.0kWh 2026-08-14 22:40:04.406374: predict best10 end_record 08-16 13:05:00, final soc 1.44kWh, metric 1284.07p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 49.99kWh, PV 0.0kWh 2026-08-14 22:40:04.583477: predict best end_record 08-16 13:05:00, final soc 1.51kWh, metric 1257.36p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 48.81kWh, PV 0.0kWh 2026-08-14 22:40:04.583705: Saving plan best values to HA entities 2026-08-14 22:40:04.986055: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 22:40:05.002195: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 22:40:05.039476: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.96kWh, house 9.21kWh, export 0.0kWh, metric 1257.36p, metric10 1284.07p 2026-08-14 22:40:05.225428: Marginal costs baseline metric (no standing charge): 1157.3911 2026-08-14 22:40:05.753971: Marginal energy costs matrix computed: min=16.74 max=28.68 2026-08-14 22:40:05.916074: Rate array import [{'start': 1360, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 30.8p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3665, 'rate': 'cheap', 'range': '(15.4p - 23.6p)'}] export [{'start': 1360, 'end': 3665, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 22:40:05.930307: - Your estimated bill for today is £7.38 and tomorrow is £4.29 2026-08-14 22:40:05.933038: - Import rates are expensive (24.6p - 30.8p) for the next 8 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 22:40:05.933201: - The battery is currently at 25% and is in eco mode for the next 14 hours. 2026-08-14 22:40:05.933336: - For the next 48 hours there will be no solar generation. 2026-08-14 22:40:05.933443: - You will run out of battery in 2 and a half hours. 2026-08-14 22:40:05.933556: - Your next charge slot will be in 14 hours where import rates will be cheap (15.4p). 2026-08-14 22:40:05.933658: 2026-08-14 22:40:06.059226: Plan calculation took 2.21 seconds 2026-08-14 22:40:06.063430: No high rate period found 2026-08-14 22:40:06.147345: Import threshold used for optimisation was 27.18p 2026-08-14 22:40:06.256586: Low import rate windows [0: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 1: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 2: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 3: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 4: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 5: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 6: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 7: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 8: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 9: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 10: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 11: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 12: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 13: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 14: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 15: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 16: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 17: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 18: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 19: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 20: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 21: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 22: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 23: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 24: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 25: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 26: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 27: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 28: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 29: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 30: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 31: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 32: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 33: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 34: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 35: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 36: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 37: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 38: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 39: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 40: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 41: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 42: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 43: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 44: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 45: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 46: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 47: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 48: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 49: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 50: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 51: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 52: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 53: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 54: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 55: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 56: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 57: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 58: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 59: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 60: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 61: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 62: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 63: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 64: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 65: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 66: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 67: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 68: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 69: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 70: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 71: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 72: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 73: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 74: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 75: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 76: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 77: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 78: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 79: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 80: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 81: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 82: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 83: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 84: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 85: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 86: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 87: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 88: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 89: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 90: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 91: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 92: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 93: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 94: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81] 2026-08-14 22:40:06.278565: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 25%, target 100% 2026-08-14 22:40:06.283259: Inverter 0 disabled charge window while waiting for schedule (now 08-14 22:40:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 22:40:06.283464: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:40:06.283925: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:40:06.284067: No export window planned 2026-08-14 22:40:06.284226: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 22:40:06.284273: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:40:06.284470: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:40:06.284690: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 22:40:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 22:40:06.284791: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 22:40:06.284889: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 22:40:06.285053: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:40:06.285109: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:40:06.285238: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:40:06.285311: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:40:06.285387: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:40:06.285433: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:40:06.285496: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:40:06.285639: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:40:06.285702: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:40:06.285805: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:40:06.285849: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:40:06.285933: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:40:06.285974: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:40:06.286057: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:40:06.286093: Inverter 0 count register writes 0 2026-08-14 22:40:06.319374: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 22:40:06.327660: Total inverter register writes now 815 2026-08-14 22:40:06.415586: Info: Completed run status Demand 2026-08-14 22:40:06.429563: Info: record_status Demand 2026-08-14 22:40:06.446289: Saved current settings to /config/predbat_config.json 2026-08-14 22:40:06.446886: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 22:40:21.056557: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0047 val_mae=0.0018 kWh val_bias=-0.0005 kWh (-0.7%) combined=0.0010 kWh ema_combined=0.0011 kWh 2026-08-14 22:40:41.351360: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0046 val_mae=0.0018 kWh val_bias=-0.0005 kWh (-0.7%) combined=0.0010 kWh ema_combined=0.0011 kWh 2026-08-14 22:40:41.356995: ML Predictor: Restored best weights from epoch with val_mae=0.0018 kWh val_bias=-0.0005 kWh (-0.7%) 2026-08-14 22:40:41.357310: ML Predictor: Training complete, final val_mae=0.0018 kWh val_bias=-0.0005 kWh (-0.7%) 2026-08-14 22:40:41.612334: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:40:41.617823: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:40:41.623025: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:40:41.628455: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:40:41.638760: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:40:41.643940: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:40:41.644001: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:40:44.202439: ML Predictor: AR rollout over holdout: ar_mae=0.0020 kWh ar_bias=-0.0005 kWh (-0.7%) [drift vs teacher-forced: +0.0002 kWh] 2026-08-14 22:40:44.207389: ML Predictor: Curriculum pass 3/5 complete, val_mae=0.0018 kWh 2026-08-14 22:40:44.281464: ML Predictor: Curriculum pass 4/5: window=56.0 days (1344 hours of data) 2026-08-14 22:40:44.281595: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 22:40:44.938703: ML Predictor: Creating dataset with 1344 hours of training data, 48 hours validation 2026-08-14 22:40:50.293561: ML Predictor: Created 15840 training samples, 576 validation samples 2026-08-14 22:40:50.344716: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0472) load(mean=0.0589 std=0.0473) pv(mean=0.0000 std=0.0100) temp(mean=19.5204 std=4.4281) import_rate(mean=24.2518 std=2.0164) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1905 std=0.5239) 2026-08-14 22:40:50.421200: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 22:40:50.435169: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 22:40:50.480124: ML Predictor: Baseline (pre-finetune) val_mae=0.0075 kWh val_bias=-0.0037 kWh 2026-08-14 22:41:13.455217: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0100 val_mae=0.0066 kWh val_bias=-0.0011 kWh (-1.3%) combined=0.0040 kWh ema_combined=0.0040 kWh 2026-08-14 22:41:33.777528: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0111 val_mae=0.0067 kWh val_bias=-0.0028 kWh (-3.2%) combined=0.0047 kWh ema_combined=0.0042 kWh 2026-08-14 22:41:56.754589: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0108 val_mae=0.0074 kWh val_bias=-0.0036 kWh (-4.0%) combined=0.0045 kWh ema_combined=0.0043 kWh 2026-08-14 22:42:16.370629: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0112 val_mae=0.0062 kWh val_bias=+0.0011 kWh (+1.3%) combined=0.0047 kWh ema_combined=0.0044 kWh 2026-08-14 22:42:36.801811: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0125 val_mae=0.0069 kWh val_bias=-0.0022 kWh (-2.5%) combined=0.0041 kWh ema_combined=0.0043 kWh 2026-08-14 22:42:42.473648: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:42:42.474171: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:42:42.474361: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:42:42.474775: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:42:42.474939: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:42:42.475086: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:42:42.475194: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:42:56.960242: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0140 val_mae=0.0065 kWh val_bias=-0.0009 kWh (-1.0%) combined=0.0040 kWh ema_combined=0.0042 kWh 2026-08-14 22:43:20.147419: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0128 val_mae=0.0060 kWh val_bias=-0.0022 kWh (-2.5%) combined=0.0044 kWh ema_combined=0.0043 kWh 2026-08-14 22:43:39.080342: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0113 val_mae=0.0053 kWh val_bias=+0.0005 kWh (+0.6%) combined=0.0035 kWh ema_combined=0.0041 kWh 2026-08-14 22:43:59.427446: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0105 val_mae=0.0055 kWh val_bias=+0.0000 kWh (+0.0%) combined=0.0030 kWh ema_combined=0.0037 kWh 2026-08-14 22:44:20.262335: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0106 val_mae=0.0075 kWh val_bias=-0.0038 kWh (-4.3%) combined=0.0051 kWh ema_combined=0.0041 kWh 2026-08-14 22:44:43.313197: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0100 val_mae=0.0057 kWh val_bias=-0.0027 kWh (-3.0%) combined=0.0037 kWh ema_combined=0.0040 kWh 2026-08-14 22:44:56.923584: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:44:56.923892: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:44:56.923941: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:44:56.924109: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:44:56.924151: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:44:56.924265: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:44:56.924306: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:45:00.125117: --------------- PredBat - update at 2026-08-14 22:45:00+01:00 with clock skew 0 minutes, minutes now 1365 2026-08-14 22:45:00.126306: Saved current settings to /config/predbat_config.json 2026-08-14 22:45:00.126532: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 45.0 minutes 2026-08-14 22:45:00.126750: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 22:45:00.126924: Autoupdate: Currently up to date 2026-08-14 22:45:00.167133: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 22:45:00.167421: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 22:45:00.167678: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 22:45:00.168320: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 22:45:00.168523: Predbat mode is set to Control charge & discharge 2026-08-14 22:45:00.474017: Found 21602 load_today datapoints going back 28 days 2026-08-14 22:45:00.481858: Using load_power data to fill gaps in load_today data 2026-08-14 22:45:01.698380: Processing 721 30-minute periods for power integration 2026-08-14 22:45:01.920244: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 22:45:01.920521: Car charging hold False, threshold 6.0kWh 2026-08-14 22:45:01.920587: Current data so far today: load 24.2kWh, import 29.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 22:45:01.944274: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 22:45:01.944820: Standing charge is set to 49.98p 2026-08-14 22:45:02.014351: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 22:45:02.014677: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 22:45:02.015031: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 10.0 minutes 2026-08-14 22:45:02.015682: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 10.0 minutes 2026-08-14 22:45:02.024048: Loaded 95 datapoints of futurerate analysis 2026-08-14 22:45:02.287906: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41'] 2026-08-14 22:45:02.337183: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 22:45:02.337544: Import rates: min 13.77p, max 43.82p, average 25.97p 2026-08-14 22:45:02.372777: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 22:45:02.372889: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 22:45:02.374055: High export rate found rates in range 99p to -99p 2026-08-14 22:45:02.530117: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 22:45:02.530249: Car 0 charging is not planned as it is not plugged in 2026-08-14 22:45:02.547467: Battery level now 4.02kWh, -1hr ago 5.28kWh, at midnight 2.43kWh, battery value change in the last hour -14.85p, change today 18.83p, rate_forward 11.83p 2026-08-14 22:45:02.547929: Last hour: net energy 0.05kWh, import 0.05kWh, export 0.0kWh, car 0kWh, load 1.6kWh, net cost 1.48p, import 1.48p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 22:45:02.641878: Today's energy total net 29.1kWh, import 29.1kWh, export 0.0kWh, cost 738.29p, import 688.31p, export 0.0p, carbon 0.0kg 2026-08-14 22:45:02.642168: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 22:45:02.841536: Using weighted-bucket historical load forecast over 14 days 2026-08-14 22:45:02.922070: Today's load divergence 144.21%, in-day adjustment 142.25%, damping 0.95x, yesterday 146.81% today 142.0% blend 5.21% 2026-08-14 22:45:02.922320: Today's predicted so far 12.96kWh with 0.0kWh car/iBoost excluded, 17.19kWh import ignored, and 12.96kWh forecast extra. 2026-08-14 22:45:02.922531: Today's actual load so far 24.17kWh with 0.0kWh car/iBoost excluded, and 17.19kWh import ignored. 2026-08-14 22:45:02.975626: Inverter 0: Type SK Sunsynk 2026-08-14 22:45:02.975739: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 22:45:02.976346: Reserve min: 7%, battery_min: 7% 2026-08-14 22:45:02.976454: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 22:45:02.976819: Inverter 0 SoC: 3.75kW 23%, current charge rate 5000W, current discharge rate 5250W, current battery power 1688W, current battery voltage 51.2V, grid power -55W, load power 1745W, PV Power 0W 2026-08-14 22:45:02.977071: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:45:02.977265: Inverter 0 scheduled charge enable is False 2026-08-14 22:45:02.977326: Inverter 0 charge windows currently [] 2026-08-14 22:45:02.977384: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 22:45:02.977549: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:45:02.977598: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:45:02.977670: Inverter 0 scheduled discharge enable is False 2026-08-14 22:45:02.977893: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:45:02.977943: Inverter 0 discharge windows currently [] 2026-08-14 22:45:02.977968: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:45:02.977987: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:45:02.978004: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:45:03.075837: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 22:45:03.075979: Plan was last updated on 2026-08-14 22:35:00+01:00 and is now 10.0 minutes old 2026-08-14 22:45:03.076261: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 22:45:03.076312: Best export window [ ] 2026-08-14 22:45:03.077559: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 22:45:03.082417: Load divergence over 8.0 hours mean 469.09W, min 279.0W, max 1164.0W, std dev 114.27W, divergence 12.18% 2026-08-14 22:45:03.113830: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 22:45:03.113966: LoadML is_calculating True 2026-08-14 22:45:03.114047: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 22:45:03.164596: predict base end_record 08-16 13:10:00, final soc 1.12kWh, metric 1385.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.92kWh, PV 0.0kWh 2026-08-14 22:45:03.465901: Battery has 2.17 hours left - now at 3.75kWh 2026-08-14 22:45:03.516191: predict base10 end_record 08-16 13:10:00, final soc 1.12kWh, metric 1414.82p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 50.1kWh, PV 0.0kWh 2026-08-14 22:45:03.773382: predict best10 end_record 08-16 13:10:00, final soc 1.77kWh, metric 1294.37p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 50.1kWh, PV 0.0kWh 2026-08-14 22:45:03.965336: predict best end_record 08-16 13:10:00, final soc 1.9kWh, metric 1268.88p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 48.92kWh, PV 0.0kWh 2026-08-14 22:45:03.976143: Saving plan best values to HA entities 2026-08-14 22:45:04.285381: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 22:45:04.293886: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 22:45:04.301241: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 15.43kWh, house 9.37kWh, export 0.0kWh, metric 1268.88p, metric10 1294.37p 2026-08-14 22:45:04.457966: Marginal costs baseline metric (no standing charge): 1168.9123 2026-08-14 22:45:04.965692: Marginal energy costs matrix computed: min=16.56 max=28.66 2026-08-14 22:45:05.118752: Rate array import [{'start': 1365, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 30.8p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3670, 'rate': 'cheap', 'range': '(15.4p - 23.6p)'}] export [{'start': 1365, 'end': 3670, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 22:45:05.119675: - Your estimated bill for today is £7.38 and tomorrow is £4.33 2026-08-14 22:45:05.119736: - Import rates are expensive (24.6p - 30.8p) for the next 8 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 22:45:05.119761: - The battery is currently at 23% and is in eco mode for the next 14 hours. 2026-08-14 22:45:05.119781: - For the next 48 hours there will be no solar generation. 2026-08-14 22:45:05.119799: - You will run out of battery in 2 and a quarter hours. 2026-08-14 22:45:05.119817: - Your next charge slot will be in 14 hours where import rates will be cheap (15.4p). 2026-08-14 22:45:05.119856: 2026-08-14 22:45:05.172701: Plan calculation took 2.10 seconds 2026-08-14 22:45:05.179050: No high rate period found 2026-08-14 22:45:05.262878: Import threshold used for optimisation was 27.18p 2026-08-14 22:45:05.352444: Low import rate windows [0: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 1: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 2: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 3: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 4: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 5: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 6: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 7: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 8: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 9: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 10: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 11: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 12: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 13: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 14: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 15: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 16: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 17: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 18: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 19: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 20: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 21: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 22: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 23: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 24: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 25: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 26: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 27: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 28: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 29: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 30: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 31: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 32: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 33: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 34: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 35: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 36: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 37: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 38: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 39: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 40: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 41: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 42: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 43: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 44: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 45: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 46: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 47: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 48: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 49: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 50: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 51: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 52: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 53: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 54: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 55: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 56: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 57: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 58: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 59: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 60: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 61: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 62: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 63: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 64: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 65: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 66: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 67: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 68: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 69: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 70: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 71: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 72: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 73: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 74: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 75: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 76: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 77: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 78: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 79: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 80: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 81: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 82: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 83: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 84: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 85: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 86: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 87: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 88: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 89: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 90: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 91: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 92: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 93: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 94: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81] 2026-08-14 22:45:05.363575: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 23%, target 100% 2026-08-14 22:45:05.363921: Inverter 0 disabled charge window while waiting for schedule (now 08-14 22:45:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 22:45:05.364067: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:45:05.364357: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:45:05.364508: No export window planned 2026-08-14 22:45:05.364703: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 22:45:05.364773: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:45:05.365119: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:45:05.365381: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 22:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 22:45:05.365774: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 22:45:05.365928: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 22:45:05.366104: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:45:05.366214: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:45:05.366332: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:45:05.366436: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:45:05.366535: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:45:05.366630: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:45:05.366686: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:45:05.366895: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:45:05.366956: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:45:05.367094: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:45:05.367188: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:45:05.367243: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:45:05.367374: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:45:05.367464: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:45:05.367511: Inverter 0 count register writes 0 2026-08-14 22:45:05.398640: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 22:45:05.398979: Recompute is saving previous plan... 2026-08-14 22:45:05.403695: Best charge window [ 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0% ] 2026-08-14 22:45:05.404166: Best export window [ ] 2026-08-14 22:45:05.405591: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 22:45:05.410633: Load divergence over 8.0 hours mean 469.09W, min 279.0W, max 1164.0W, std dev 114.27W, divergence 12.18% 2026-08-14 22:45:05.441767: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 22:45:05.442049: LoadML is_calculating True 2026-08-14 22:45:05.442179: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 22:45:05.462388: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 22:45:05.464424: Optimise levels pass started at 2026-08-14 22:45:05 2026-08-14 22:45:05.464582: Optimise all windows, total charge 94 export 1 2026-08-14 22:45:11.397509: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0083 val_mae=0.0061 kWh val_bias=-0.0029 kWh (-3.3%) combined=0.0037 kWh ema_combined=0.0039 kWh 2026-08-14 22:45:13.196331: >> Region optimisation pass width 960 gives best_metric 1238.5p, best_cost 1244.04p, best_cycle 37.98kWh, best_import 30.19kWh 2026-08-14 22:45:14.252406: >> Region optimisation pass width 480 gives best_metric 1238.5p, best_cost 1244.04p, best_cycle 37.98kWh, best_import 30.19kWh 2026-08-14 22:45:15.657002: >> Region optimisation pass width 240 gives best_metric 1238.5p, best_cost 1244.04p, best_cycle 37.98kWh, best_import 30.19kWh 2026-08-14 22:45:18.976249: >> Region optimisation pass width 120 gives best_metric 1238.5p, best_cost 1244.04p, best_cycle 37.98kWh, best_import 30.19kWh 2026-08-14 22:45:18.976887: Calculated end_record as 08-16 11:30:00 based on best_price 15.87p, next_charge_start 08-15 11:30:00, max_windows 73 2026-08-14 22:45:18.977159: Optimise levels pass ended at 2026-08-14 22:45:18, duration 13.5 seconds tried 321 combinations 2026-08-14 22:45:18.977310: Set best_price_charge_level 17.0p, best_price_export_level 0p, best_price_charge 15.87p, best_cost_export 0p, best_metric 1238.5p, best_keep 0kWh, best_cycle 37.98kWh, best_carbon 0kg, best_import 30.19kWh 2026-08-14 22:45:19.008699: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.87p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 0, 16.0, 0, 16.0, 13.0, 13.0, 13.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 22:45:51.621884: Tweak plan optimisation started metric 1123.68p, cost 1132.97p 2026-08-14 22:45:53.396597: Tweak optimisation finished metric 1123.68p, cost 1132.97p, metric_keep 0kWh, cycle 26.32kWh, carbon 0kg, import 22.54kWh, changed 8 window(s) 2026-08-14 22:45:53.417785: Swap charge optimisation started metric 1123.68p, cost 1132.97p, min_improvement_swap 0.1p 2026-08-14 22:46:04.140233: Swap charge optimisation finished metric 1123.68p, cost 1132.97p 2026-08-14 22:46:04.383255: Pruned 3 dead plan slot(s) in 10 trial(s), nominal metric 1119.73p -> 1119.73p, plan now metric 1123.77p, cost 1132.97p, cycle 26.32kWh, import 22.54kWh 2026-08-14 22:46:04.395833: Raw charge windows [ 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 81%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 81%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100% ] reserve 1.12 2026-08-14 22:46:04.396364: Unclipped charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 14:30:00 @ 15.06p 100%, 15-08 14:30:00 - 15-08 16:00:00 @ 15.13p 81%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 23:00:00 @ 30.8p 100% ] reserve 1.12 2026-08-14 22:46:04.396554: Unfiltered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 14:30:00 @ 15.06p 100%, 15-08 14:30:00 - 15-08 16:00:00 @ 15.13p 81%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 23:00:00 @ 30.8p 100% ] reserve 1.12 2026-08-14 22:46:04.396712: Filtered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 14:30:00 @ 15.06p 100%, 15-08 14:30:00 - 15-08 16:00:00 @ 15.13p 81%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 23:00:00 @ 30.8p 100% ] reserve 1.12 2026-08-14 22:46:04.438983: Previous plan best metric is 1123.81 (cost 1133.11) and new plan best metric is 1123.68 (cost 1132.97) 2026-08-14 22:46:04.439765: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 22:46:04.440021: Plan valid is now true after recompute was False 2026-08-14 22:46:04.464761: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1362.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 47.49kWh, PV 0.0kWh 2026-08-14 22:46:04.642666: Battery has 2.17 hours left - now at 3.75kWh 2026-08-14 22:46:04.805367: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1390.72p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 48.6kWh, PV 0.0kWh 2026-08-14 22:46:04.950388: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1259.61p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 48.6kWh, PV 0.0kWh 2026-08-14 22:46:05.068438: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1233.08p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 47.49kWh, PV 0.0kWh 2026-08-14 22:46:05.068722: Saving plan best values to HA entities 2026-08-14 22:46:05.359591: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 22:46:05.368333: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 22:46:05.380883: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.48kWh, house 8.06kWh, export 0.0kWh, metric 1233.08p, metric10 1259.61p 2026-08-14 22:46:05.475543: Marginal costs baseline metric (no standing charge): 1133.1123 2026-08-14 22:46:06.085490: Marginal energy costs matrix computed: min=16.56 max=28.66 2026-08-14 22:46:06.216578: Rate array import [{'start': 1365, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 30.8p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1365, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 22:46:06.217537: - Your estimated bill for today is £7.38 and tomorrow is £4.33 2026-08-14 22:46:06.217661: - Import rates are expensive (24.6p - 30.8p) for the next 8 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 22:46:06.217695: - The battery is currently at 23% and is in eco mode for the next 14 hours. 2026-08-14 22:46:06.217716: - For the next 48 hours there will be no solar generation. 2026-08-14 22:46:06.217736: - You will run out of battery in 2 and a quarter hours. 2026-08-14 22:46:06.217769: - Your next charge slot will be in 14 hours where import rates will be cheap (15.4p). 2026-08-14 22:46:06.217790: 2026-08-14 22:46:06.317237: Plan calculation took 60.92 seconds 2026-08-14 22:46:06.317538: Inverter 0: Type SK Sunsynk 2026-08-14 22:46:06.333054: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 22:46:06.334187: Reserve min: 7%, battery_min: 7% 2026-08-14 22:46:06.334412: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 22:46:06.334891: Inverter 0 SoC: 3.75kW 23%, current charge rate 5000W, current discharge rate 5250W, current battery power 1680W, current battery voltage 51.2V, grid power -55W, load power 1736W, PV Power 0W 2026-08-14 22:46:06.335221: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:46:06.335446: Inverter 0 scheduled charge enable is False 2026-08-14 22:46:06.335591: Inverter 0 charge windows currently [] 2026-08-14 22:46:06.335728: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 22:46:06.336006: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:46:06.336173: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:46:06.336363: Inverter 0 scheduled discharge enable is False 2026-08-14 22:46:06.336670: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:46:06.336840: Inverter 0 discharge windows currently [] 2026-08-14 22:46:06.337002: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:46:06.337128: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:46:06.337253: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:46:06.429226: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 23%, target 100% 2026-08-14 22:46:06.429424: Inverter 0 disabled charge window while waiting for schedule (now 08-14 22:45:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 22:46:06.429517: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:46:06.429857: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:46:06.429975: No export window planned 2026-08-14 22:46:06.430144: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 22:46:06.430201: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:46:06.430431: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:46:06.430668: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 22:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 22:46:06.430745: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 22:46:06.430850: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 22:46:06.430977: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:46:06.431048: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:46:06.431138: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:46:06.431193: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:46:06.431248: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:46:06.431297: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:46:06.431351: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:46:06.431459: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:46:06.431525: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:46:06.431580: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:46:06.431630: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:46:06.431686: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:46:06.431738: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:46:06.431807: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:46:06.431852: Inverter 0 count register writes 0 2026-08-14 22:46:06.486204: Total inverter register writes now 815 2026-08-14 22:46:06.566645: Info: Completed run status Demand 2026-08-14 22:46:06.585093: Info: record_status Demand 2026-08-14 22:46:06.603460: Saved current settings to /config/predbat_config.json 2026-08-14 22:46:06.603799: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 22:46:07.808503: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0079 val_mae=0.0051 kWh val_bias=-0.0018 kWh (-2.0%) combined=0.0037 kWh ema_combined=0.0038 kWh 2026-08-14 22:46:27.618877: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0086 val_mae=0.0044 kWh val_bias=-0.0008 kWh (-0.9%) combined=0.0023 kWh ema_combined=0.0034 kWh 2026-08-14 22:46:41.803689: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:46:41.804014: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:46:41.804162: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:46:41.804434: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:46:41.804566: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:46:41.804617: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:46:41.804726: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:46:47.852447: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0082 val_mae=0.0049 kWh val_bias=-0.0002 kWh (-0.2%) combined=0.0028 kWh ema_combined=0.0032 kWh 2026-08-14 22:47:10.123543: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0070 val_mae=0.0055 kWh val_bias=-0.0024 kWh (-2.7%) combined=0.0034 kWh ema_combined=0.0032 kWh 2026-08-14 22:47:29.805482: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0078 val_mae=0.0049 kWh val_bias=-0.0019 kWh (-2.1%) combined=0.0030 kWh ema_combined=0.0032 kWh 2026-08-14 22:47:51.633608: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0072 val_mae=0.0050 kWh val_bias=-0.0009 kWh (-1.1%) combined=0.0028 kWh ema_combined=0.0031 kWh 2026-08-14 22:48:12.138282: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0063 val_mae=0.0041 kWh val_bias=-0.0015 kWh (-1.7%) combined=0.0029 kWh ema_combined=0.0030 kWh 2026-08-14 22:48:32.467553: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0064 val_mae=0.0041 kWh val_bias=-0.0008 kWh (-0.9%) combined=0.0025 kWh ema_combined=0.0029 kWh 2026-08-14 22:48:42.270025: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:48:42.270408: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:48:42.270493: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:48:42.270834: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:48:42.270987: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:48:42.271253: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:48:42.271315: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:48:52.141089: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0057 val_mae=0.0039 kWh val_bias=-0.0010 kWh (-1.1%) combined=0.0022 kWh ema_combined=0.0027 kWh 2026-08-14 22:49:12.832332: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0062 val_mae=0.0040 kWh val_bias=+0.0003 kWh (+0.3%) combined=0.0026 kWh ema_combined=0.0027 kWh 2026-08-14 22:49:32.103445: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0060 val_mae=0.0037 kWh val_bias=-0.0002 kWh (-0.2%) combined=0.0020 kWh ema_combined=0.0025 kWh 2026-08-14 22:49:52.170505: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0056 val_mae=0.0045 kWh val_bias=-0.0025 kWh (-2.9%) combined=0.0034 kWh ema_combined=0.0027 kWh 2026-08-14 22:50:00.658215: --------------- PredBat - update at 2026-08-14 22:50:00+01:00 with clock skew 0 minutes, minutes now 1370 2026-08-14 22:50:00.659792: Saved current settings to /config/predbat_config.json 2026-08-14 22:50:00.660164: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 50.0 minutes 2026-08-14 22:50:00.660396: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 22:50:00.660593: Autoupdate: Currently up to date 2026-08-14 22:50:00.716164: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 22:50:00.716338: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 22:50:00.716705: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 22:50:00.717420: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 22:50:00.717578: Predbat mode is set to Control charge & discharge 2026-08-14 22:50:01.180547: Found 21602 load_today datapoints going back 28 days 2026-08-14 22:50:01.181056: Using load_power data to fill gaps in load_today data 2026-08-14 22:50:02.480057: Processing 721 30-minute periods for power integration 2026-08-14 22:50:02.766219: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 22:50:02.766397: Car charging hold False, threshold 6.0kWh 2026-08-14 22:50:02.766460: Current data so far today: load 24.35kWh, import 29.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 22:50:02.811190: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 22:50:02.812053: Standing charge is set to 49.98p 2026-08-14 22:50:02.980792: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 22:50:02.980923: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 22:50:02.981267: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 15.0 minutes 2026-08-14 22:50:02.981859: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 15.0 minutes 2026-08-14 22:50:02.990346: Loaded 95 datapoints of futurerate analysis 2026-08-14 22:50:03.131152: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41'] 2026-08-14 22:50:03.176871: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 22:50:03.177585: Import rates: min 13.77p, max 43.82p, average 25.97p 2026-08-14 22:50:03.220776: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 22:50:03.223506: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 22:50:03.225097: High export rate found rates in range 99p to -99p 2026-08-14 22:50:03.450422: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 22:50:03.450740: Car 0 charging is not planned as it is not plugged in 2026-08-14 22:50:03.475877: Battery level now 3.75kWh, -1hr ago 5.28kWh, at midnight 2.43kWh, battery value change in the last hour -18.07p, change today 15.61p, rate_forward 11.83p 2026-08-14 22:50:03.476417: Last hour: net energy 0.04kWh, import 0.04kWh, export 0.0kWh, car 0kWh, load 1.7kWh, net cost 1.32p, import 1.32p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 22:50:03.617362: Today's energy total net 29.1kWh, import 29.1kWh, export 0.0kWh, cost 738.29p, import 688.31p, export 0.0p, carbon 0.0kg 2026-08-14 22:50:03.617642: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 22:50:03.797745: Using weighted-bucket historical load forecast over 14 days 2026-08-14 22:50:03.837678: Today's load divergence 144.29%, in-day adjustment 142.31%, damping 0.95x, yesterday 146.81% today 142.08% blend 4.86% 2026-08-14 22:50:03.837910: Today's predicted so far 13.02kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 13.02kWh forecast extra. 2026-08-14 22:50:03.837975: Today's actual load so far 24.26kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 22:50:03.889096: Inverter 0: Type SK Sunsynk 2026-08-14 22:50:03.889222: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 22:50:03.890323: Reserve min: 7%, battery_min: 7% 2026-08-14 22:50:03.890464: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 22:50:03.890936: Inverter 0 SoC: 3.75kW 23%, current charge rate 5000W, current discharge rate 5250W, current battery power 1661W, current battery voltage 51.2V, grid power -54W, load power 1719W, PV Power 0W 2026-08-14 22:50:03.891191: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:50:03.891332: Inverter 0 scheduled charge enable is False 2026-08-14 22:50:03.891391: Inverter 0 charge windows currently [] 2026-08-14 22:50:03.891432: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 22:50:03.891619: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:50:03.891678: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:50:03.891746: Inverter 0 scheduled discharge enable is False 2026-08-14 22:50:03.891991: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:50:03.892054: Inverter 0 discharge windows currently [] 2026-08-14 22:50:03.892093: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:50:03.892135: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:50:03.892168: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:50:03.991404: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 22:50:03.991544: Plan was last updated on 2026-08-14 22:45:00+01:00 and is now 5.0 minutes old 2026-08-14 22:50:03.991828: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 22:50:03.991899: Best export window [ ] 2026-08-14 22:50:03.993218: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 22:50:03.997965: Load divergence over 8.0 hours mean 468.96W, min 345.0W, max 1182.6W, std dev 102.23W, divergence 10.9% 2026-08-14 22:50:04.032696: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 22:50:04.033075: LoadML is_calculating True 2026-08-14 22:50:04.033221: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 22:50:04.110325: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1361.87p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 47.66kWh, PV 0.0kWh 2026-08-14 22:50:04.273678: Battery has 2.17 hours left - now at 3.75kWh 2026-08-14 22:50:04.406905: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1390.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.77kWh, PV 0.0kWh 2026-08-14 22:50:04.543407: predict best10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1258.86p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.77kWh, PV 0.0kWh 2026-08-14 22:50:04.731027: predict best end_record 08-16 11:35:00, final soc 1.12kWh, metric 1232.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 47.66kWh, PV 0.0kWh 2026-08-14 22:50:04.731152: Saving plan best values to HA entities 2026-08-14 22:50:05.142053: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 22:50:05.170116: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 22:50:05.190390: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.47kWh, house 8.08kWh, export 0.0kWh, metric 1232.32p, metric10 1258.86p 2026-08-14 22:50:05.363084: Marginal costs baseline metric (no standing charge): 1132.3535 2026-08-14 22:50:05.863772: Marginal energy costs matrix computed: min=16.37 max=28.63 2026-08-14 22:50:06.045804: Rate array import [{'start': 1370, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 30.8p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1370, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 22:50:06.046411: - Your estimated bill for today is £7.38 and tomorrow is £4.31 2026-08-14 22:50:06.046450: - Import rates are expensive (24.6p - 30.8p) for the next 8 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 22:50:06.046468: - The battery is currently at 23% and is in eco mode for the next 14 hours. 2026-08-14 22:50:06.046483: - For the next 48 hours there will be no solar generation. 2026-08-14 22:50:06.046497: - You will run out of battery in 2 and a quarter hours. 2026-08-14 22:50:06.046510: - Your next charge slot will be in 14 hours where import rates will be cheap (15.4p). 2026-08-14 22:50:06.046530: 2026-08-14 22:50:06.120364: Plan calculation took 2.13 seconds 2026-08-14 22:50:06.124099: No high rate period found 2026-08-14 22:50:06.249825: Import threshold used for optimisation was 27.8p 2026-08-14 22:50:06.403623: Low import rate windows [0: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 1: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 2: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 3: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 4: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 5: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 6: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 7: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 8: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 9: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 10: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 11: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 12: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 13: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 14: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 15: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 16: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 17: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 18: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 19: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 20: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 21: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 22: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 23: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 24: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 25: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 26: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 27: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 28: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 29: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 30: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 31: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 32: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 33: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 34: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 35: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 36: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 37: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 38: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 39: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 40: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 41: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 42: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 43: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 44: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 45: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 46: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 47: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 48: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 49: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 50: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 51: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 52: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 53: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 54: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 55: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 56: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 57: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 58: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 59: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 60: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 61: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 62: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 63: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 64: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 65: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 66: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 67: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 68: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 69: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 70: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 71: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 72: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 73: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 74: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 75: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 76: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 77: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 78: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 79: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 80: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 81: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 82: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 83: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 84: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 85: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 86: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 87: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 88: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 89: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 90: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 91: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 92: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 93: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 94: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81] 2026-08-14 22:50:06.417215: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 23%, target 100% 2026-08-14 22:50:06.417374: Inverter 0 disabled charge window while waiting for schedule (now 08-14 22:50:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 22:50:06.417537: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:50:06.417788: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:50:06.417983: No export window planned 2026-08-14 22:50:06.418203: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 22:50:06.418332: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:50:06.418570: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:50:06.418832: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 22:50:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 22:50:06.419018: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 22:50:06.419179: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 22:50:06.419342: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:50:06.419473: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:50:06.419579: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:50:06.419689: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:50:06.419819: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:50:06.420263: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:50:06.420400: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:50:06.420573: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:50:06.420683: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:50:06.420801: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:50:06.420976: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:50:06.421113: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:50:06.421215: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:50:06.421374: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:50:06.421485: Inverter 0 count register writes 0 2026-08-14 22:50:06.445084: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 22:50:06.454772: Total inverter register writes now 815 2026-08-14 22:50:06.517228: Info: Completed run status Demand 2026-08-14 22:50:06.528501: Info: record_status Demand 2026-08-14 22:50:06.541212: Saved current settings to /config/predbat_config.json 2026-08-14 22:50:06.541566: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 22:50:15.218671: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0063 val_mae=0.0039 kWh val_bias=-0.0016 kWh (-1.8%) combined=0.0025 kWh ema_combined=0.0027 kWh 2026-08-14 22:50:36.046954: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0059 val_mae=0.0038 kWh val_bias=-0.0015 kWh (-1.7%) combined=0.0024 kWh ema_combined=0.0026 kWh 2026-08-14 22:50:41.718713: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:50:41.721139: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:50:41.721208: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:50:41.721367: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:50:41.721409: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:50:41.721431: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:50:41.721451: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:50:56.164215: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0059 val_mae=0.0041 kWh val_bias=-0.0022 kWh (-2.4%) combined=0.0032 kWh ema_combined=0.0028 kWh 2026-08-14 22:51:17.171623: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0059 val_mae=0.0034 kWh val_bias=-0.0006 kWh (-0.6%) combined=0.0018 kWh ema_combined=0.0025 kWh 2026-08-14 22:51:36.739257: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0060 val_mae=0.0033 kWh val_bias=-0.0003 kWh (-0.3%) combined=0.0017 kWh ema_combined=0.0023 kWh 2026-08-14 22:51:56.535925: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0056 val_mae=0.0034 kWh val_bias=-0.0005 kWh (-0.6%) combined=0.0017 kWh ema_combined=0.0021 kWh 2026-08-14 22:51:56.541823: ML Predictor: Restored best weights from epoch with val_mae=0.0034 kWh val_bias=-0.0005 kWh (-0.6%) 2026-08-14 22:51:56.542217: ML Predictor: Training complete, final val_mae=0.0034 kWh val_bias=-0.0005 kWh (-0.6%) 2026-08-14 22:51:57.911126: ML Predictor: AR rollout over holdout: ar_mae=0.0036 kWh ar_bias=-0.0005 kWh (-0.6%) [drift vs teacher-forced: +0.0002 kWh] 2026-08-14 22:51:57.916487: ML Predictor: Curriculum pass 4/5 complete, val_mae=0.0034 kWh 2026-08-14 22:51:57.916653: ML Predictor: Curriculum final pass 5/5: full dataset (56.4 days) 2026-08-14 22:51:57.916762: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-14 22:51:58.448648: ML Predictor: Creating dataset with 1353 hours of training data, 48 hours validation 2026-08-14 22:52:03.548211: ML Predictor: Created 15955 training samples, 576 validation samples 2026-08-14 22:52:03.604295: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0472) load(mean=0.0590 std=0.0474) pv(mean=0.0000 std=0.0100) temp(mean=19.5429 std=4.4438) import_rate(mean=24.2666 std=2.0928) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1910 std=0.5243) 2026-08-14 22:52:03.693966: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-14 22:52:03.713101: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-14 22:52:03.752828: ML Predictor: Baseline (pre-finetune) val_mae=0.0134 kWh val_bias=-0.0066 kWh 2026-08-14 22:52:25.354747: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0148 val_mae=0.0114 kWh val_bias=-0.0058 kWh (-6.2%) combined=0.0083 kWh ema_combined=0.0083 kWh 2026-08-14 22:52:41.918327: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:52:41.918586: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:52:41.918627: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:52:41.918765: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:52:41.918803: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:52:41.918823: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:52:41.918840: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:52:44.513151: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0136 val_mae=0.0106 kWh val_bias=-0.0029 kWh (-3.1%) combined=0.0055 kWh ema_combined=0.0075 kWh 2026-08-14 22:53:04.732881: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0172 val_mae=0.0107 kWh val_bias=-0.0005 kWh (-0.5%) combined=0.0065 kWh ema_combined=0.0072 kWh 2026-08-14 22:53:27.814275: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0138 val_mae=0.0105 kWh val_bias=-0.0060 kWh (-6.3%) combined=0.0078 kWh ema_combined=0.0074 kWh 2026-08-14 22:53:51.703266: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0122 val_mae=0.0076 kWh val_bias=-0.0007 kWh (-0.8%) combined=0.0044 kWh ema_combined=0.0065 kWh 2026-08-14 22:54:11.366282: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0144 val_mae=0.0092 kWh val_bias=-0.0011 kWh (-1.2%) combined=0.0058 kWh ema_combined=0.0063 kWh 2026-08-14 22:54:31.864354: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0138 val_mae=0.0118 kWh val_bias=-0.0057 kWh (-6.1%) combined=0.0078 kWh ema_combined=0.0067 kWh 2026-08-14 22:54:42.369908: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:54:42.370229: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:54:42.370367: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:54:42.370690: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:54:42.370846: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:54:42.370998: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:54:42.371126: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:54:52.838974: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0144 val_mae=0.0094 kWh val_bias=-0.0029 kWh (-3.1%) combined=0.0049 kWh ema_combined=0.0062 kWh 2026-08-14 22:55:00.573449: --------------- PredBat - update at 2026-08-14 22:55:00+01:00 with clock skew 0 minutes, minutes now 1375 2026-08-14 22:55:00.574736: Saved current settings to /config/predbat_config.json 2026-08-14 22:55:00.574872: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 55.0 minutes 2026-08-14 22:55:00.575047: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 22:55:00.575176: Autoupdate: Currently up to date 2026-08-14 22:55:00.598054: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 22:55:00.598267: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 22:55:00.598662: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 22:55:00.599348: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 22:55:00.599487: Predbat mode is set to Control charge & discharge 2026-08-14 22:55:00.932836: Found 21602 load_today datapoints going back 28 days 2026-08-14 22:55:00.933172: Using load_power data to fill gaps in load_today data 2026-08-14 22:55:02.371688: Processing 721 30-minute periods for power integration 2026-08-14 22:55:02.735374: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 22:55:02.735978: Car charging hold False, threshold 6.0kWh 2026-08-14 22:55:02.736398: Current data so far today: load 24.5kWh, import 29.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 22:55:02.758389: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 22:55:02.759006: Standing charge is set to 49.98p 2026-08-14 22:55:02.818308: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 22:55:02.818559: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 22:55:02.818875: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 20.0 minutes 2026-08-14 22:55:02.820307: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 20.0 minutes 2026-08-14 22:55:02.832803: Loaded 95 datapoints of futurerate analysis 2026-08-14 22:55:03.185455: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41'] 2026-08-14 22:55:03.239311: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 22:55:03.239949: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-14 22:55:03.287883: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 22:55:03.288250: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 22:55:03.290256: High export rate found rates in range 99p to -99p 2026-08-14 22:55:03.480974: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 22:55:03.481495: Car 0 charging is not planned as it is not plugged in 2026-08-14 22:55:03.504389: Battery level now 3.75kWh, -1hr ago 5.28kWh, at midnight 2.43kWh, battery value change in the last hour -18.07p, change today 15.61p, rate_forward 11.83p 2026-08-14 22:55:03.505251: Last hour: net energy 0.04kWh, import 0.04kWh, export 0.0kWh, car 0kWh, load 1.8kWh, net cost 1.17p, import 1.17p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 22:55:03.683500: Today's energy total net 29.1kWh, import 29.1kWh, export 0.0kWh, cost 738.29p, import 688.31p, export 0.0p, carbon 0.0kg 2026-08-14 22:55:03.683997: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 22:55:03.833449: Using weighted-bucket historical load forecast over 14 days 2026-08-14 22:55:03.873388: Today's load divergence 144.39%, in-day adjustment 142.38%, damping 0.95x, yesterday 146.81% today 142.17% blend 4.51% 2026-08-14 22:55:03.874027: Today's predicted so far 13.07kWh with 0.0kWh car/iBoost excluded, 17.38kWh import ignored, and 13.07kWh forecast extra. 2026-08-14 22:55:03.874081: Today's actual load so far 24.36kWh with 0.0kWh car/iBoost excluded, and 17.38kWh import ignored. 2026-08-14 22:55:03.921339: Inverter 0: Type SK Sunsynk 2026-08-14 22:55:03.921437: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 22:55:03.922050: Reserve min: 7%, battery_min: 7% 2026-08-14 22:55:03.922138: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 22:55:03.922510: Inverter 0 SoC: 3.61kW 23%, current charge rate 5000W, current discharge rate 5250W, current battery power 1678W, current battery voltage 51.2V, grid power -54W, load power 1735W, PV Power 0W 2026-08-14 22:55:03.922825: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:55:03.923008: Inverter 0 scheduled charge enable is False 2026-08-14 22:55:03.923056: Inverter 0 charge windows currently [] 2026-08-14 22:55:03.923123: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 22:55:03.923328: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:55:03.923376: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:55:03.923466: Inverter 0 scheduled discharge enable is False 2026-08-14 22:55:03.923673: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:55:03.923728: Inverter 0 discharge windows currently [] 2026-08-14 22:55:03.923830: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:55:03.923904: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:55:03.923983: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:55:04.004466: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 22:55:04.004608: Plan was last updated on 2026-08-14 22:45:00+01:00 and is now 10.0 minutes old 2026-08-14 22:55:04.004824: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 22:55:04.004869: Best export window [ ] 2026-08-14 22:55:04.005815: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 22:55:04.008992: Load divergence over 8.0 hours mean 468.99W, min 378.0W, max 1057.8W, std dev 87.27W, divergence 9.3% 2026-08-14 22:55:04.029219: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 22:55:04.029323: LoadML is_calculating True 2026-08-14 22:55:04.029350: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 22:55:04.073391: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1364.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 47.8kWh, PV 0.0kWh 2026-08-14 22:55:04.361580: Battery has 2.0 hours left - now at 3.61kWh 2026-08-14 22:55:04.428813: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1392.57p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.92kWh, PV 0.0kWh 2026-08-14 22:55:04.618978: predict best10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1261.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.92kWh, PV 0.0kWh 2026-08-14 22:55:04.810742: predict best end_record 08-16 11:40:00, final soc 1.12kWh, metric 1234.92p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 47.8kWh, PV 0.0kWh 2026-08-14 22:55:04.810850: Saving plan best values to HA entities 2026-08-14 22:55:05.152542: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 22:55:05.171524: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 22:55:05.188873: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.48kWh, house 8.2kWh, export 0.0kWh, metric 1234.92p, metric10 1261.39p 2026-08-14 22:55:05.384849: Marginal costs baseline metric (no standing charge): 1134.9555 2026-08-14 22:55:05.897873: Marginal energy costs matrix computed: min=16.19 max=28.61 2026-08-14 22:55:06.071545: Rate array import [{'start': 1375, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 30.8p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1375, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 22:55:06.072397: - Your estimated bill for today is £7.38 and tomorrow is £4.32 2026-08-14 22:55:06.072454: - Import rates are expensive (24.6p - 30.8p) for the next 8 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 22:55:06.072495: - The battery is currently at 23% and is in eco mode for the next 14 hours. 2026-08-14 22:55:06.072530: - For the next 48 hours there will be no solar generation. 2026-08-14 22:55:06.072562: - You will run out of battery in 2 hours. 2026-08-14 22:55:06.072596: - Your next charge slot will be in 14 hours where import rates will be cheap (15.4p). 2026-08-14 22:55:06.072643: 2026-08-14 22:55:06.127257: Plan calculation took 2.12 seconds 2026-08-14 22:55:06.131096: No high rate period found 2026-08-14 22:55:06.205205: Import threshold used for optimisation was 27.8p 2026-08-14 22:55:06.291786: Low import rate windows [0: 08-14 22:30:00 - 08-14 23:00:00 @ 30.81, 1: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 2: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 3: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 4: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 5: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 6: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 7: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 8: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 9: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 10: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 11: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 12: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 13: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 14: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 15: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 16: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 17: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 18: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 19: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 20: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 21: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 22: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 23: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 24: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 25: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 26: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 27: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 28: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 29: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 30: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 31: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 32: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 33: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 34: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 35: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 36: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 37: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 38: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 39: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 40: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 41: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 42: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 43: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 44: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 45: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 46: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 47: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 48: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 49: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 50: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 51: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 52: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 53: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 54: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 55: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 56: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 57: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 58: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 59: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 60: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 61: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 62: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 63: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 64: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 65: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 66: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 67: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 68: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 69: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 70: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 71: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 72: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 73: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 74: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 75: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 76: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 77: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 78: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 79: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 80: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 81: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 82: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 83: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 84: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 85: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 86: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 87: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 88: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 89: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 90: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 91: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 92: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 93: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 94: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81] 2026-08-14 22:55:06.311843: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 23%, target 100% 2026-08-14 22:55:06.312045: Inverter 0 disabled charge window while waiting for schedule (now 08-14 22:55:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 22:55:06.312141: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:55:06.312370: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:55:06.312459: No export window planned 2026-08-14 22:55:06.312589: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 22:55:06.312631: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:55:06.312799: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:55:06.313038: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 22:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 22:55:06.313106: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 22:55:06.313164: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 22:55:06.313263: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:55:06.313314: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:55:06.313351: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:55:06.313396: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:55:06.313432: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:55:06.313468: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:55:06.313501: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:55:06.313575: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:55:06.313621: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:55:06.313657: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:55:06.313691: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:55:06.313726: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:55:06.313759: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:55:06.313793: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:55:06.313823: Inverter 0 count register writes 0 2026-08-14 22:55:06.349959: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 22:55:06.350177: Recompute is saving previous plan... 2026-08-14 22:55:06.367587: Best charge window [ 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0% ] 2026-08-14 22:55:06.367740: Best export window [ ] 2026-08-14 22:55:06.369093: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 22:55:06.373959: Load divergence over 8.0 hours mean 468.99W, min 378.0W, max 1057.8W, std dev 87.27W, divergence 9.3% 2026-08-14 22:55:06.435850: Calculating data from yesterday for savings calculation 2026-08-14 22:55:06.474617: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 22:55:06.583476: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 22:55:06.601217: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 870.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 22:55:06.622605: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 22:55:06.668204: Yesterday: Predbat disabled was £8.57 (adjusted £8.43) vs £6.21 (adjusted £5.91), saving £2.35 (adjusted £2.52) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 13.25kWh 2026-08-14 22:55:06.813741: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 901.12p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 22:55:06.813898: Yesterday: No Battery/PV system cost predicted was £9.01 (adjusted £9.01) vs £6.21 (adjusted £5.91), saving £2.8 (adjusted £3.1) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 22:55:06.844023: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 22:55:06.844162: LoadML is_calculating True 2026-08-14 22:55:06.844190: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 22:55:06.875738: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 22:55:06.877703: Optimise levels pass started at 2026-08-14 22:55:06 2026-08-14 22:55:06.877896: Optimise all windows, total charge 94 export 1 2026-08-14 22:55:13.767388: >> Region optimisation pass width 960 gives best_metric 1242.01p, best_cost 1247.38p, best_cycle 37.85kWh, best_import 30.29kWh 2026-08-14 22:55:14.731110: >> Region optimisation pass width 480 gives best_metric 1242.01p, best_cost 1247.38p, best_cycle 37.85kWh, best_import 30.29kWh 2026-08-14 22:55:16.093444: >> Region optimisation pass width 240 gives best_metric 1242.01p, best_cost 1247.38p, best_cycle 37.85kWh, best_import 30.29kWh 2026-08-14 22:55:19.401660: >> Region optimisation pass width 120 gives best_metric 1242.01p, best_cost 1247.38p, best_cycle 37.85kWh, best_import 30.29kWh 2026-08-14 22:55:19.402362: Calculated end_record as 08-16 11:30:00 based on best_price 15.87p, next_charge_start 08-15 11:30:00, max_windows 73 2026-08-14 22:55:19.402624: Optimise levels pass ended at 2026-08-14 22:55:19, duration 12.5 seconds tried 321 combinations 2026-08-14 22:55:19.403120: Set best_price_charge_level 17.0p, best_price_export_level 0p, best_price_charge 15.87p, best_cost_export 0p, best_metric 1242.01p, best_keep 0kWh, best_cycle 37.85kWh, best_carbon 0kg, best_import 30.29kWh 2026-08-14 22:55:19.427060: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.87p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 0, 16.0, 0, 16.0, 13.0, 13.0, 13.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 22:55:34.985504: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0116 val_mae=0.0078 kWh val_bias=+0.0007 kWh (+0.8%) combined=0.0048 kWh ema_combined=0.0058 kWh 2026-08-14 22:55:49.928422: Tweak plan optimisation started metric 1122.67p, cost 1131.97p 2026-08-14 22:55:51.762189: Tweak optimisation finished metric 1122.67p, cost 1131.97p, metric_keep 0kWh, cycle 26.18kWh, carbon 0kg, import 22.5kWh, changed 8 window(s) 2026-08-14 22:55:51.795500: Swap charge optimisation started metric 1122.67p, cost 1131.97p, min_improvement_swap 0.1p 2026-08-14 22:56:02.386036: Swap charge optimisation finished metric 1122.67p, cost 1131.97p 2026-08-14 22:56:02.529784: Pruned 2 dead plan slot(s) in 9 trial(s), nominal metric 1118.72p -> 1118.72p, plan now metric 1122.71p, cost 1131.97p, cycle 26.18kWh, import 22.5kWh 2026-08-14 22:56:02.575070: Raw charge windows [ 14-08 22:30:00 - 14-08 23:00:00 @ 30.81p 0%, 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 81%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 81%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100% ] reserve 1.12 2026-08-14 22:56:02.582411: Unclipped charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 14:30:00 @ 15.06p 100%, 15-08 14:30:00 - 15-08 16:00:00 @ 15.13p 81%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 23:00:00 @ 30.8p 100% ] reserve 1.12 2026-08-14 22:56:02.582846: Unfiltered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 14:30:00 @ 15.06p 100%, 15-08 14:30:00 - 15-08 16:00:00 @ 15.13p 81%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 23:00:00 @ 30.8p 100% ] reserve 1.12 2026-08-14 22:56:02.586364: Filtered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 14:30:00 @ 15.06p 100%, 15-08 14:30:00 - 15-08 16:00:00 @ 15.13p 81%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 23:00:00 @ 30.8p 100% ] reserve 1.12 2026-08-14 22:56:02.704677: Previous plan best metric is 1122.78 (cost 1132.11) and new plan best metric is 1122.67 (cost 1131.97) 2026-08-14 22:56:02.713628: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 22:56:02.714049: Plan valid is now true after recompute was False 2026-08-14 22:56:02.796282: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1361.63p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 47.62kWh, PV 0.0kWh 2026-08-14 22:56:02.993741: Battery has 2.0 hours left - now at 3.61kWh 2026-08-14 22:56:03.049606: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1389.6p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.72kWh, PV 0.0kWh 2026-08-14 22:56:03.170653: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1258.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.72kWh, PV 0.0kWh 2026-08-14 22:56:03.309670: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1232.08p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 47.62kWh, PV 0.0kWh 2026-08-14 22:56:03.309777: Saving plan best values to HA entities 2026-08-14 22:56:03.659912: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-14 22:56:03.670595: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 22:56:03.679978: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.48kWh, house 8.02kWh, export 0.0kWh, metric 1232.08p, metric10 1258.42p 2026-08-14 22:56:03.803272: Marginal costs baseline metric (no standing charge): 1132.1147 2026-08-14 22:56:04.283564: Marginal energy costs matrix computed: min=16.19 max=28.61 2026-08-14 22:56:04.375522: Rate array import [{'start': 1375, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 30.8p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1375, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 22:56:04.376409: - Your estimated bill for today is £7.38 and tomorrow is £4.32 2026-08-14 22:56:04.376460: - Import rates are expensive (24.6p - 30.8p) for the next 8 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 22:56:04.376484: - The battery is currently at 23% and is in eco mode for the next 14 hours. 2026-08-14 22:56:04.376504: - For the next 48 hours there will be no solar generation. 2026-08-14 22:56:04.376524: - You will run out of battery in 2 hours. 2026-08-14 22:56:04.376549: - Your next charge slot will be in 14 hours where import rates will be cheap (15.4p). 2026-08-14 22:56:04.376569: 2026-08-14 22:56:04.436846: Plan calculation took 58.09 seconds 2026-08-14 22:56:04.437153: Inverter 0: Type SK Sunsynk 2026-08-14 22:56:04.437202: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 22:56:04.437812: Reserve min: 7%, battery_min: 7% 2026-08-14 22:56:04.437889: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 22:56:04.438329: Inverter 0 SoC: 3.49kW 22%, current charge rate 5000W, current discharge rate 5250W, current battery power 1661W, current battery voltage 51.2V, grid power -55W, load power 1720W, PV Power 0W 2026-08-14 22:56:04.438608: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:56:04.438801: Inverter 0 scheduled charge enable is False 2026-08-14 22:56:04.438941: Inverter 0 charge windows currently [] 2026-08-14 22:56:04.439068: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 22:56:04.439289: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:56:04.439416: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:56:04.439548: Inverter 0 scheduled discharge enable is False 2026-08-14 22:56:04.439784: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:56:04.439909: Inverter 0 discharge windows currently [] 2026-08-14 22:56:04.440037: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:56:04.440147: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:56:04.440251: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:56:04.576889: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 22%, target 100% 2026-08-14 22:56:04.577316: Inverter 0 disabled charge window while waiting for schedule (now 08-14 22:55:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 22:56:04.577553: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:56:04.577898: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:56:04.578124: No export window planned 2026-08-14 22:56:04.578384: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 22:56:04.578512: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 22:56:04.578788: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 22:56:04.579105: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 22:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 22:56:04.579252: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 22:56:04.579430: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 22:56:04.579681: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:56:04.579822: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:56:04.580006: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:56:04.580163: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:56:04.580304: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:56:04.580428: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:56:04.580563: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 22:56:04.580764: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:56:04.580898: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:56:04.581077: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:56:04.581209: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:56:04.581347: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:56:04.581471: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:56:04.581607: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 22:56:04.581722: Inverter 0 count register writes 0 2026-08-14 22:56:04.624453: Total inverter register writes now 815 2026-08-14 22:56:04.687666: Info: Completed run status Demand 2026-08-14 22:56:04.698907: Info: record_status Demand 2026-08-14 22:56:04.717405: Saved current settings to /config/predbat_config.json 2026-08-14 22:56:04.717658: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 22:56:15.281503: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0126 val_mae=0.0080 kWh val_bias=-0.0026 kWh (-2.8%) combined=0.0044 kWh ema_combined=0.0054 kWh 2026-08-14 22:56:38.121349: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0107 val_mae=0.0070 kWh val_bias=-0.0006 kWh (-0.6%) combined=0.0037 kWh ema_combined=0.0048 kWh 2026-08-14 22:56:41.897043: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:56:41.897291: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:56:41.897327: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:56:41.897458: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:56:41.897490: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:56:41.897510: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:56:41.897527: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:56:59.181254: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0118 val_mae=0.0076 kWh val_bias=-0.0027 kWh (-2.9%) combined=0.0050 kWh ema_combined=0.0049 kWh 2026-08-14 22:57:05.306821: TemperatureAPI: Using coordinates latitude 53.4, longitude -2.2 2026-08-14 22:57:05.471959: TemperatureAPI: Successfully fetched temperature data from Open-Meteo API 2026-08-14 22:57:22.520383: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0105 val_mae=0.0078 kWh val_bias=-0.0031 kWh (-3.2%) combined=0.0051 kWh ema_combined=0.0050 kWh 2026-08-14 22:57:42.525077: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0102 val_mae=0.0072 kWh val_bias=-0.0011 kWh (-1.2%) combined=0.0038 kWh ema_combined=0.0046 kWh 2026-08-14 22:57:59.140323: Info: HAHistory: Pruning history data started. 2026-08-14 22:57:59.143626: Info: HAHistory: Pruning history data completed. 2026-08-14 22:58:03.504031: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0113 val_mae=0.0070 kWh val_bias=-0.0026 kWh (-2.8%) combined=0.0044 kWh ema_combined=0.0046 kWh 2026-08-14 22:58:24.859927: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0106 val_mae=0.0073 kWh val_bias=+0.0000 kWh (+0.0%) combined=0.0040 kWh ema_combined=0.0044 kWh 2026-08-14 22:58:42.297790: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 22:58:42.298559: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 22:58:42.298669: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 22:58:42.298894: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 22:58:42.298947: Note: Inverter does not support discharge freeze - disabled 2026-08-14 22:58:42.299053: Note: Inverter does not support charge freeze - disabled 2026-08-14 22:58:42.299080: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 22:58:45.499751: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0103 val_mae=0.0071 kWh val_bias=-0.0031 kWh (-3.3%) combined=0.0046 kWh ema_combined=0.0044 kWh 2026-08-14 22:59:06.329707: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0087 val_mae=0.0064 kWh val_bias=-0.0027 kWh (-2.8%) combined=0.0038 kWh ema_combined=0.0042 kWh 2026-08-14 22:59:28.107312: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0088 val_mae=0.0054 kWh val_bias=-0.0003 kWh (-0.3%) combined=0.0031 kWh ema_combined=0.0039 kWh 2026-08-14 22:59:48.508694: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0081 val_mae=0.0062 kWh val_bias=-0.0030 kWh (-3.2%) combined=0.0043 kWh ema_combined=0.0040 kWh 2026-08-14 23:00:00.791093: --------------- PredBat - update at 2026-08-14 23:00:00+01:00 with clock skew 0 minutes, minutes now 1380 2026-08-14 23:00:00.791925: Saved current settings to /config/predbat_config.json 2026-08-14 23:00:00.792077: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 60.0 minutes 2026-08-14 23:00:00.792159: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 23:00:00.792232: Autoupdate: Currently up to date 2026-08-14 23:00:00.830303: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 23:00:00.830637: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 23:00:00.830988: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 23:00:00.832147: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 23:00:00.832384: Predbat mode is set to Control charge & discharge 2026-08-14 23:00:01.430715: Found 21602 load_today datapoints going back 27 days 2026-08-14 23:00:01.434255: Using load_power data to fill gaps in load_today data 2026-08-14 23:00:02.967420: Processing 721 30-minute periods for power integration 2026-08-14 23:00:03.209152: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 23:00:03.209487: Car charging hold False, threshold 6.0kWh 2026-08-14 23:00:03.209649: Current data so far today: load 24.65kWh, import 29.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 23:00:03.239258: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 23:00:03.240149: Standing charge is set to 49.98p 2026-08-14 23:00:03.401711: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 23:00:03.401945: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 23:00:03.402269: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 25.0 minutes 2026-08-14 23:00:03.402864: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 25.0 minutes 2026-08-14 23:00:03.409789: Loaded 95 datapoints of futurerate analysis 2026-08-14 23:00:03.759601: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41', '08-15 22:00:00 => 30.26 / 20.87'] 2026-08-14 23:00:03.819161: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 23:00:03.819799: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-14 23:00:03.873840: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 23:00:03.874140: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 23:00:03.875683: High export rate found rates in range 99p to -99p 2026-08-14 23:00:04.057252: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 23:00:04.057426: Car 0 charging is not planned as it is not plugged in 2026-08-14 23:00:04.076293: Battery level now 3.61kWh, -1hr ago 5.15kWh, at midnight 2.43kWh, battery value change in the last hour -18.26p, change today 13.91p, rate_forward 11.83p 2026-08-14 23:00:04.076934: Last hour: net energy 0.03kWh, import 0.03kWh, export 0.0kWh, car 0kWh, load 1.8kWh, net cost 1.01p, import 1.01p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 23:00:04.223265: Today's energy total net 29.1kWh, import 29.1kWh, export 0.0kWh, cost 738.29p, import 688.31p, export 0.0p, carbon 0.0kg 2026-08-14 23:00:04.223488: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 23:00:04.391234: Using weighted-bucket historical load forecast over 14 days 2026-08-14 23:00:04.465043: Today's load divergence 144.72%, in-day adjustment 142.67%, damping 0.95x, yesterday 146.81% today 142.49% blend 4.17% 2026-08-14 23:00:04.466290: Today's predicted so far 13.2kWh with 0.0kWh car/iBoost excluded, 17.37kWh import ignored, and 13.2kWh forecast extra. 2026-08-14 23:00:04.466594: Today's actual load so far 24.63kWh with 0.0kWh car/iBoost excluded, and 17.37kWh import ignored. 2026-08-14 23:00:04.509544: Inverter 0: Type SK Sunsynk 2026-08-14 23:00:04.509808: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:00:04.510504: Reserve min: 7%, battery_min: 7% 2026-08-14 23:00:04.510668: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:00:04.511057: Inverter 0 SoC: 3.35kW 21%, current charge rate 5000W, current discharge rate 5250W, current battery power 1614W, current battery voltage 51.2V, grid power -54W, load power 1672W, PV Power 0W 2026-08-14 23:00:04.511306: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:00:04.511469: Inverter 0 scheduled charge enable is False 2026-08-14 23:00:04.511591: Inverter 0 charge windows currently [] 2026-08-14 23:00:04.511637: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:00:04.512637: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:00:04.512785: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:00:04.512933: Inverter 0 scheduled discharge enable is False 2026-08-14 23:00:04.513262: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:00:04.513311: Inverter 0 discharge windows currently [] 2026-08-14 23:00:04.513336: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:00:04.513355: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:00:04.513372: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:00:04.612884: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 23:00:04.613095: Plan was last updated on 2026-08-14 22:55:00+01:00 and is now 5.0 minutes old 2026-08-14 23:00:04.613457: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 23:00:04.613538: Best export window [ ] 2026-08-14 23:00:04.614623: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:00:04.618315: Load divergence over 8.0 hours mean 468.94W, min 378.6W, max 1138.2W, std dev 90.47W, divergence 9.65% 2026-08-14 23:00:04.648377: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:00:04.648659: LoadML is_calculating True 2026-08-14 23:00:04.661013: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-14 23:00:04.733832: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1365.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 47.72kWh, PV 0.0kWh 2026-08-14 23:00:04.961762: Battery has 1.83 hours left - now at 3.35kWh 2026-08-14 23:00:05.149812: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1393.69p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 48.82kWh, PV 0.0kWh 2026-08-14 23:00:05.344904: predict best10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1262.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 48.82kWh, PV 0.0kWh 2026-08-14 23:00:05.519542: predict best end_record 08-16 11:35:00, final soc 1.12kWh, metric 1236.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 47.72kWh, PV 0.0kWh 2026-08-14 23:00:05.519668: Saving plan best values to HA entities 2026-08-14 23:00:05.893691: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:00:05.927714: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 23:00:05.937180: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.47kWh, house 8.22kWh, export 0.0kWh, metric 1236.33p, metric10 1262.51p 2026-08-14 23:00:06.169282: Marginal costs baseline metric (no standing charge): 1136.3633 2026-08-14 23:00:06.550464: Marginal energy costs matrix computed: min=16.01 max=28.68 2026-08-14 23:00:06.685691: Rate array import [{'start': 1380, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1380, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:00:06.687008: - Your estimated bill for today is £7.38 and tomorrow is £4.35 2026-08-14 23:00:06.687176: - Import rates are expensive (24.6p - 29.1p) for the next 8 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:00:06.687313: - The battery is currently at 21% and is in eco mode for the next 14 hours. 2026-08-14 23:00:06.687441: - For the next 48 hours there will be no solar generation. 2026-08-14 23:00:06.687559: - You will run out of battery in 1 and three quarters hours. 2026-08-14 23:00:06.687684: - Your next charge slot will be in 14 hours where import rates will be cheap (15.4p). 2026-08-14 23:00:06.687830: 2026-08-14 23:00:06.759637: Plan calculation took 2.15 seconds 2026-08-14 23:00:06.770793: No high rate period found 2026-08-14 23:00:06.949471: Import threshold used for optimisation was 27.18p 2026-08-14 23:00:07.190096: Low import rate windows [0: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 1: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 2: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 3: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 4: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 5: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 6: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 7: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 8: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 9: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 10: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 11: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 12: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 13: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 14: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 15: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 16: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 17: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 18: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 19: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 20: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 21: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 22: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 23: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 24: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 25: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 26: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 27: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 28: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 29: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 30: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 31: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 32: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 33: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 34: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 35: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 36: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 37: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 38: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 39: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 40: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 41: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 42: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 43: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 44: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 45: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 46: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 47: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 48: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 49: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 50: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 51: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 52: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 53: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 54: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 55: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 56: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 57: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 58: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 59: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 60: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 61: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 62: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 63: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 64: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 65: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 66: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 67: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 68: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 69: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 70: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 71: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 72: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 73: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 74: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 75: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 76: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 77: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 78: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 79: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 80: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 81: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 82: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 83: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 84: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 85: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 86: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 87: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 88: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 89: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 90: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 91: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 92: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 93: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81] 2026-08-14 23:00:07.203929: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 21%, target 100% 2026-08-14 23:00:07.204293: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:00:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:00:07.204465: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:00:07.204906: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:00:07.205182: No export window planned 2026-08-14 23:00:07.205481: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:00:07.205619: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:00:07.205960: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:00:07.206504: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:00:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:00:07.206662: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:00:07.206824: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:00:07.207055: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:00:07.207294: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:00:07.207606: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:00:07.207818: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:00:07.208011: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:00:07.208203: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:00:07.208379: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:00:07.208616: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:00:07.208753: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:00:07.208900: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:00:07.209164: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:00:07.209322: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:00:07.209494: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:00:07.209682: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:00:07.209831: Inverter 0 count register writes 0 2026-08-14 23:00:07.248833: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 23:00:07.272389: Total inverter register writes now 815 2026-08-14 23:00:07.404612: Info: Completed run status Demand 2026-08-14 23:00:07.416672: Info: record_status Demand 2026-08-14 23:00:07.436063: Saved current settings to /config/predbat_config.json 2026-08-14 23:00:07.436451: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 23:00:18.684438: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0074 val_mae=0.0064 kWh val_bias=-0.0025 kWh (-2.7%) combined=0.0038 kWh ema_combined=0.0040 kWh 2026-08-14 23:00:41.648870: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:00:41.649387: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:00:41.649451: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:00:41.649690: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:00:41.649846: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:00:41.649895: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:00:41.649988: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:00:41.850689: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0089 val_mae=0.0059 kWh val_bias=-0.0018 kWh (-1.9%) combined=0.0039 kWh ema_combined=0.0039 kWh 2026-08-14 23:01:04.407898: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0077 val_mae=0.0061 kWh val_bias=-0.0026 kWh (-2.8%) combined=0.0040 kWh ema_combined=0.0040 kWh 2026-08-14 23:01:26.496088: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0078 val_mae=0.0059 kWh val_bias=-0.0024 kWh (-2.5%) combined=0.0041 kWh ema_combined=0.0040 kWh 2026-08-14 23:01:46.404206: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0079 val_mae=0.0056 kWh val_bias=-0.0022 kWh (-2.3%) combined=0.0037 kWh ema_combined=0.0039 kWh 2026-08-14 23:02:10.846721: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0073 val_mae=0.0055 kWh val_bias=-0.0019 kWh (-2.1%) combined=0.0031 kWh ema_combined=0.0037 kWh 2026-08-14 23:02:32.964239: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0074 val_mae=0.0049 kWh val_bias=-0.0014 kWh (-1.5%) combined=0.0027 kWh ema_combined=0.0034 kWh 2026-08-14 23:02:42.033553: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:02:42.034056: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:02:42.034197: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:02:42.034491: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:02:42.034621: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:02:42.034745: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:02:42.034863: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:02:55.780601: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0072 val_mae=0.0052 kWh val_bias=-0.0017 kWh (-1.8%) combined=0.0030 kWh ema_combined=0.0033 kWh 2026-08-14 23:03:16.628138: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0073 val_mae=0.0054 kWh val_bias=-0.0025 kWh (-2.7%) combined=0.0036 kWh ema_combined=0.0034 kWh 2026-08-14 23:03:38.936199: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0067 val_mae=0.0049 kWh val_bias=-0.0008 kWh (-0.9%) combined=0.0025 kWh ema_combined=0.0031 kWh 2026-08-14 23:03:38.941867: ML Predictor: Restored best weights from epoch with val_mae=0.0049 kWh val_bias=-0.0008 kWh (-0.9%) 2026-08-14 23:03:38.942197: ML Predictor: Training complete, final val_mae=0.0049 kWh val_bias=-0.0008 kWh (-0.9%) 2026-08-14 23:03:39.855540: ML Predictor: AR rollout over holdout: ar_mae=0.0053 kWh ar_bias=-0.0007 kWh (-0.8%) [drift vs teacher-forced: +0.0004 kWh] 2026-08-14 23:03:39.860026: ML Predictor: Curriculum training complete, final val_mae=0.0049 kWh 2026-08-14 23:03:39.867096: ML Component: Training successful, val_mae=0.0049 kWh 2026-08-14 23:03:39.987481: ML Predictor: Model saved to /config/predbat_ml_model.npz 2026-08-14 23:03:39.992724: ML Component: Generating predictions load data age 56.0 days, 16244 data points 2026-08-14 23:03:40.128270: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.133 max_dow {0: 0.10500312496256084, 1: 0.10763750054407865, 2: 0.11822499983031302, 3: 0.1251781244263053, 4: 0.1736281253574416, 5: 0.10149375002831221, 6: 0.10796875073947013} 2026-08-14 23:03:43.986930: ML Component: Generated 576 predictions (total 42.36 kWh over 48h) 2026-08-14 23:03:44.025582: ML Component: Prediction cycle completed 2026-08-14 23:03:44.123341: ML Component: Saved 16244 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 23:04:56.706326: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:04:56.706614: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:04:56.706650: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:04:56.706792: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:04:56.706833: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:04:56.706854: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:04:56.706871: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:05:00.791347: --------------- PredBat - update at 2026-08-14 23:05:00+01:00 with clock skew 0 minutes, minutes now 1385 2026-08-14 23:05:00.792162: Saved current settings to /config/predbat_config.json 2026-08-14 23:05:00.792289: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 65.0 minutes 2026-08-14 23:05:00.792368: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 23:05:00.792478: Autoupdate: Currently up to date 2026-08-14 23:05:00.815626: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 23:05:00.815760: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 23:05:00.815920: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 23:05:00.816443: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 23:05:00.816558: Predbat mode is set to Control charge & discharge 2026-08-14 23:05:01.006379: Found 21602 load_today datapoints going back 27 days 2026-08-14 23:05:01.006562: Using load_power data to fill gaps in load_today data 2026-08-14 23:05:01.878329: Processing 721 30-minute periods for power integration 2026-08-14 23:05:02.074597: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 23:05:02.074739: Car charging hold False, threshold 6.0kWh 2026-08-14 23:05:02.074785: Current data so far today: load 24.8kWh, import 29.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 23:05:02.093367: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 23:05:02.093819: Standing charge is set to 49.98p 2026-08-14 23:05:02.144221: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 23:05:02.144332: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 23:05:02.144535: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 30.0 minutes 2026-08-14 23:05:02.144996: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 30.0 minutes 2026-08-14 23:05:02.151395: Loaded 95 datapoints of futurerate analysis 2026-08-14 23:05:02.307513: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41', '08-15 22:00:00 => 30.26 / 20.87'] 2026-08-14 23:05:02.357676: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 23:05:02.358246: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-14 23:05:02.405621: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 23:05:02.405749: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 23:05:02.407114: High export rate found rates in range 99p to -99p 2026-08-14 23:05:02.520171: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 23:05:02.520356: Car 0 charging is not planned as it is not plugged in 2026-08-14 23:05:02.535317: Battery level now 3.35kWh, -1hr ago 5.03kWh, at midnight 2.43kWh, battery value change in the last hour -19.87p, change today 10.88p, rate_forward 11.83p 2026-08-14 23:05:02.535767: Last hour: net energy 0.03kWh, import 0.03kWh, export 0.0kWh, car 0kWh, load 1.8kWh, net cost 0.87p, import 0.87p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 23:05:02.602946: Today's energy total net 29.1kWh, import 29.1kWh, export 0.0kWh, cost 738.29p, import 688.31p, export 0.0p, carbon 0.0kg 2026-08-14 23:05:02.603124: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 23:05:02.694400: Using weighted-bucket historical load forecast over 14 days 2026-08-14 23:05:02.726561: Today's load divergence 145.0%, in-day adjustment 142.9%, damping 0.95x, yesterday 146.81% today 142.75% blend 3.82% 2026-08-14 23:05:02.726659: Today's predicted so far 13.3kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 13.3kWh forecast extra. 2026-08-14 23:05:02.726691: Today's actual load so far 24.86kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 23:05:02.763984: Inverter 0: Type SK Sunsynk 2026-08-14 23:05:02.764121: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:05:02.765123: Reserve min: 7%, battery_min: 7% 2026-08-14 23:05:02.765245: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:05:02.765593: Inverter 0 SoC: 3.35kW 21%, current charge rate 5000W, current discharge rate 5250W, current battery power 1690W, current battery voltage 51.2V, grid power -55W, load power 1750W, PV Power 0W 2026-08-14 23:05:02.765857: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:05:02.765968: Inverter 0 scheduled charge enable is False 2026-08-14 23:05:02.766021: Inverter 0 charge windows currently [] 2026-08-14 23:05:02.766052: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:05:02.766170: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:05:02.766207: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:05:02.766274: Inverter 0 scheduled discharge enable is False 2026-08-14 23:05:02.766408: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:05:02.766445: Inverter 0 discharge windows currently [] 2026-08-14 23:05:02.766468: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:05:02.766491: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:05:02.766508: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:05:02.841657: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 23:05:02.841774: Plan was last updated on 2026-08-14 22:55:00+01:00 and is now 10.0 minutes old 2026-08-14 23:05:02.841995: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 23:05:02.842061: Best export window [ ] 2026-08-14 23:05:02.842925: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:05:02.846247: Load divergence over 8.0 hours mean 469.03W, min 274.8W, max 1243.8W, std dev 113.82W, divergence 12.13% 2026-08-14 23:05:02.866673: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:05:02.866812: LoadML is_calculating False 2026-08-14 23:05:02.866892: Creating pool of 12 processes to match your CPU count 2026-08-14 23:05:02.989150: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1363.67p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 47.83kWh, PV 0.0kWh 2026-08-14 23:05:03.122550: Battery has 1.92 hours left - now at 3.35kWh 2026-08-14 23:05:03.171624: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1391.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.93kWh, PV 0.0kWh 2026-08-14 23:05:03.263320: predict best10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1260.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.93kWh, PV 0.0kWh 2026-08-14 23:05:03.365875: predict best end_record 08-16 11:40:00, final soc 1.12kWh, metric 1234.2p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 47.83kWh, PV 0.0kWh 2026-08-14 23:05:03.365970: Saving plan best values to HA entities 2026-08-14 23:05:03.562805: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:05:03.568788: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 23:05:03.574689: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.47kWh, house 8.18kWh, export 0.0kWh, metric 1234.2p, metric10 1260.29p 2026-08-14 23:05:03.656821: Marginal costs baseline metric (no standing charge): 1134.2376 2026-08-14 23:05:03.944661: Marginal energy costs matrix computed: min=16.04 max=28.67 2026-08-14 23:05:04.043678: Rate array import [{'start': 1385, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1385, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:05:04.044537: - Your estimated bill for today is £7.38 and tomorrow is £4.31 2026-08-14 23:05:04.044585: - Import rates are expensive (24.6p - 29.1p) for the next 7 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:05:04.044608: - The battery is currently at 21% and is in eco mode for the next 13 hours. 2026-08-14 23:05:04.044626: - For the next 48 hours there will be no solar generation. 2026-08-14 23:05:04.044649: - You will run out of battery in 1 hours. 2026-08-14 23:05:04.044683: - Your next charge slot will be in 13 hours where import rates will be cheap (15.4p). 2026-08-14 23:05:04.044703: 2026-08-14 23:05:04.115469: Plan calculation took 1.27 seconds 2026-08-14 23:05:04.119363: No high rate period found 2026-08-14 23:05:04.178135: Import threshold used for optimisation was 27.18p 2026-08-14 23:05:04.237647: Low import rate windows [0: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 1: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 2: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 3: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 4: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 5: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 6: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 7: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 8: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 9: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 10: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 11: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 12: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 13: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 14: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 15: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 16: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 17: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 18: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 19: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 20: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 21: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 22: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 23: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 24: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 25: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 26: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 27: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 28: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 29: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 30: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 31: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 32: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 33: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 34: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 35: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 36: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 37: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 38: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 39: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 40: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 41: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 42: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 43: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 44: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 45: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 46: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 47: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 48: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 49: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 50: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 51: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 52: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 53: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 54: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 55: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 56: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 57: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 58: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 59: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 60: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 61: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 62: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 63: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 64: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 65: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 66: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 67: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 68: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 69: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 70: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 71: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 72: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 73: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 74: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 75: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 76: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 77: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 78: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 79: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 80: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 81: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 82: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 83: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 84: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 85: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 86: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 87: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 88: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 89: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 90: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 91: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 92: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 93: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 94: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8] 2026-08-14 23:05:04.246614: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 21%, target 100% 2026-08-14 23:05:04.246770: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:05:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:05:04.246892: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:05:04.247179: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:05:04.247279: No export window planned 2026-08-14 23:05:04.247394: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:05:04.247430: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:05:04.247565: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:05:04.247747: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:05:04.247815: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:05:04.247903: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:05:04.248028: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:05:04.248078: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:05:04.248113: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:05:04.248138: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:05:04.248169: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:05:04.248193: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:05:04.248224: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:05:04.248287: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:05:04.248322: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:05:04.248348: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:05:04.248377: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:05:04.248401: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:05:04.248453: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:05:04.248481: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:05:04.248507: Inverter 0 count register writes 0 2026-08-14 23:05:04.266216: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 23:05:04.266405: Recompute is saving previous plan... 2026-08-14 23:05:04.269523: Best charge window [ 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0% ] 2026-08-14 23:05:04.269624: Best export window [ ] 2026-08-14 23:05:04.270582: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:05:04.273790: Load divergence over 8.0 hours mean 469.03W, min 274.8W, max 1243.8W, std dev 113.82W, divergence 12.13% 2026-08-14 23:05:04.295370: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:05:04.295629: LoadML is_calculating False 2026-08-14 23:05:04.295720: Creating pool of 12 processes to match your CPU count 2026-08-14 23:05:04.390551: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 23:05:04.392654: Optimise levels pass started at 2026-08-14 23:05:04 2026-08-14 23:05:04.392715: Optimise all windows, total charge 94 export 1 2026-08-14 23:05:05.816208: >> Region optimisation pass width 960 gives best_metric 1244.05p, best_cost 1250.79p, best_cycle 36.95kWh, best_import 30.35kWh 2026-08-14 23:05:06.277837: >> Region optimisation pass width 480 gives best_metric 1244.05p, best_cost 1250.79p, best_cycle 36.95kWh, best_import 30.35kWh 2026-08-14 23:05:06.812682: >> Region optimisation pass width 240 gives best_metric 1244.05p, best_cost 1250.79p, best_cycle 36.95kWh, best_import 30.35kWh 2026-08-14 23:05:08.224416: >> Region optimisation pass width 120 gives best_metric 1242.96p, best_cost 1249.38p, best_cycle 35.25kWh, best_import 30.23kWh 2026-08-14 23:05:08.224823: Calculated end_record as 08-16 13:00:00 based on best_price 15.87p, next_charge_start 08-15 13:00:00, max_windows 75 2026-08-14 23:05:08.224935: Optimise levels pass ended at 2026-08-14 23:05:08, duration 3.8 seconds tried 347 combinations 2026-08-14 23:05:08.225153: Set best_price_charge_level 17.0p, best_price_export_level 0p, best_price_charge 15.87p, best_cost_export 0p, best_metric 1242.96p, best_keep 0kWh, best_cycle 35.25kWh, best_carbon 0kg, best_import 30.23kWh 2026-08-14 23:05:08.243614: Starting detailed optimisation end_record 08-16 13:00:00, best_price_charge 15.87p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 13.0, 13.0, 13.0, 13.0, 13.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 23:05:13.547262: Tweak plan optimisation started metric 1143.44p, cost 1152.68p 2026-08-14 23:05:13.797979: Tweak optimisation finished metric 1143.44p, cost 1152.68p, metric_keep 0kWh, cycle 25.94kWh, carbon 0kg, import 23.79kWh, changed 8 window(s) 2026-08-14 23:05:13.814856: Swap charge optimisation started metric 1143.44p, cost 1152.68p, min_improvement_swap 0.1p 2026-08-14 23:05:20.300728: Swap charge optimisation finished metric 1143.44p, cost 1152.68p 2026-08-14 23:05:20.434997: Pruned 2 dead plan slot(s) in 9 trial(s), nominal metric 1139.44p -> 1139.44p, plan now metric 1143.48p, cost 1152.68p, cycle 25.94kWh, import 23.79kWh 2026-08-14 23:05:20.447666: Raw charge windows [ 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 81%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 81%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100% ] reserve 1.12 2026-08-14 23:05:20.448371: Unclipped charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 14:00:00 @ 15.55p 100%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 81%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 23:30:00 @ 29.3p 100% ] reserve 1.12 2026-08-14 23:05:20.448711: Unfiltered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 14:00:00 @ 15.55p 100%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 23:30:00 @ 29.3p 100% ] reserve 1.12 2026-08-14 23:05:20.449035: Filtered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 15:30:00 @ 14.94p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 23:30:00 @ 29.3p 100% ] reserve 1.12 2026-08-14 23:05:20.493246: Previous plan best metric is 1143.54 (cost 1152.78) and new plan best metric is 1143.44 (cost 1152.68) 2026-08-14 23:05:20.493596: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 23:05:20.493842: Plan valid is now true after recompute was False 2026-08-14 23:05:20.526523: predict base end_record 08-16 13:00:00, final soc 1.12kWh, metric 1382.21p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.97kWh, PV 0.0kWh 2026-08-14 23:05:20.627364: Battery has 1.92 hours left - now at 3.35kWh 2026-08-14 23:05:20.667633: predict base10 end_record 08-16 13:00:00, final soc 1.12kWh, metric 1410.82p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 50.12kWh, PV 0.0kWh 2026-08-14 23:05:20.745066: predict best10 end_record 08-16 13:00:00, final soc 1.12kWh, metric 1279.73p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 50.12kWh, PV 0.0kWh 2026-08-14 23:05:20.835563: predict best end_record 08-16 13:00:00, final soc 1.12kWh, metric 1252.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 48.97kWh, PV 0.0kWh 2026-08-14 23:05:20.835654: Saving plan best values to HA entities 2026-08-14 23:05:20.994093: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:05:21.002609: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 23:05:21.009831: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.47kWh, house 9.31kWh, export 0.0kWh, metric 1252.75p, metric10 1279.73p 2026-08-14 23:05:21.103975: Marginal costs baseline metric (no standing charge): 1152.7803 2026-08-14 23:05:21.403698: Marginal energy costs matrix computed: min=16.04 max=28.67 2026-08-14 23:05:21.480778: Rate array import [{'start': 1385, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3660, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1385, 'end': 3660, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:05:21.481575: - Your estimated bill for today is £7.38 and tomorrow is £4.31 2026-08-14 23:05:21.481626: - Import rates are expensive (24.6p - 29.1p) for the next 7 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:05:21.481649: - The battery is currently at 21% and is in eco mode for the next 13 hours. 2026-08-14 23:05:21.481667: - For the next 48 hours there will be no solar generation. 2026-08-14 23:05:21.481684: - You will run out of battery in 1 hours. 2026-08-14 23:05:21.481702: - Your next charge slot will be in 13 hours where import rates will be cheap (15.4p). 2026-08-14 23:05:21.481719: 2026-08-14 23:05:21.541635: Plan calculation took 17.28 seconds 2026-08-14 23:05:21.542019: Inverter 0: Type SK Sunsynk 2026-08-14 23:05:21.542137: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:05:21.542854: Reserve min: 7%, battery_min: 7% 2026-08-14 23:05:21.542946: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:05:21.543282: Inverter 0 SoC: 3.2kW 20%, current charge rate 5000W, current discharge rate 5250W, current battery power 1701W, current battery voltage 51.2V, grid power -55W, load power 1761W, PV Power 0W 2026-08-14 23:05:21.543524: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:05:21.543630: Inverter 0 scheduled charge enable is False 2026-08-14 23:05:21.543663: Inverter 0 charge windows currently [] 2026-08-14 23:05:21.543699: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:05:21.543809: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:05:21.543845: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:05:21.543881: Inverter 0 scheduled discharge enable is False 2026-08-14 23:05:21.544023: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:05:21.544064: Inverter 0 discharge windows currently [] 2026-08-14 23:05:21.544086: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:05:21.544104: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:05:21.544127: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:05:21.604174: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 20%, target 100% 2026-08-14 23:05:21.604328: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:05:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:05:21.604409: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:05:21.604652: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:05:21.604750: No export window planned 2026-08-14 23:05:21.604885: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:05:21.604932: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:05:21.605205: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:05:21.605408: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:05:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:05:21.605501: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:05:21.605579: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:05:21.605700: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:05:21.605763: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:05:21.605808: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:05:21.605844: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:05:21.605889: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:05:21.605923: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:05:21.605962: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:05:21.606058: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:05:21.606115: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:05:21.606166: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:05:21.606212: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:05:21.606254: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:05:21.606291: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:05:21.606327: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:05:21.606357: Inverter 0 count register writes 0 2026-08-14 23:05:21.629925: Total inverter register writes now 815 2026-08-14 23:05:21.665709: Info: Completed run status Demand 2026-08-14 23:05:21.672653: Info: record_status Demand 2026-08-14 23:05:21.679426: Saved current settings to /config/predbat_config.json 2026-08-14 23:05:21.679712: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 23:05:56.783337: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:05:56.783575: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:05:56.783618: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:05:56.783792: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:05:56.783831: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:05:56.783852: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:05:56.783881: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:07:57.009654: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:07:57.009940: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:07:57.010085: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:07:57.010289: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:07:57.010332: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:07:57.010397: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:07:57.010416: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:08:44.468719: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 23:08:45.450469: Processing 1297 30-minute periods for power integration 2026-08-14 23:08:45.560861: ML Component: Car charging hold False, car energy reported load False 2026-08-14 23:08:45.655702: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 23:08:45.762995: ML Temperature data points: 47576 2026-08-14 23:08:46.005999: ML Component: Fetched 7776 load data points, 27.0 days of history 2026-08-14 23:08:46.045905: ML Component: Data fetch completed, load data age 56.0 days, 16254 data points 2026-08-14 23:08:46.046044: ML Component: No training needed, model age is 0.02 hours 2026-08-14 23:08:46.046118: ML Component: Generating predictions load data age 56.0 days, 16254 data points 2026-08-14 23:08:46.173303: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.1527 max_dow {0: 0.09899687486626207, 1: 0.10616562486607581, 2: 0.12051249983031302, 3: 0.1227374996352941, 4: 0.1701437503574416, 5: 0.10420937564577908, 6: 0.11264999961592256} 2026-08-14 23:08:46.542649: ML Component: Generated 576 predictions (total 42.07 kWh over 48h) 2026-08-14 23:08:46.576268: ML Component: Prediction cycle completed 2026-08-14 23:08:46.687958: ML Component: Saved 16254 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 23:09:57.263506: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:09:57.263751: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:09:57.263800: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:09:57.264070: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:09:57.264124: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:09:57.264146: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:09:57.264164: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:10:00.351066: --------------- PredBat - update at 2026-08-14 23:10:00+01:00 with clock skew 0 minutes, minutes now 1390 2026-08-14 23:10:00.351936: Saved current settings to /config/predbat_config.json 2026-08-14 23:10:00.352111: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 70.0 minutes 2026-08-14 23:10:00.352249: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 23:10:00.352440: Autoupdate: Currently up to date 2026-08-14 23:10:00.371276: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 23:10:00.371416: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 23:10:00.371585: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 23:10:00.372169: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 23:10:00.372289: Predbat mode is set to Control charge & discharge 2026-08-14 23:10:00.552060: Found 21602 load_today datapoints going back 28 days 2026-08-14 23:10:00.552198: Using load_power data to fill gaps in load_today data 2026-08-14 23:10:01.279205: Processing 721 30-minute periods for power integration 2026-08-14 23:10:01.448008: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 23:10:01.448811: Car charging hold False, threshold 6.0kWh 2026-08-14 23:10:01.448864: Current data so far today: load 24.95kWh, import 29.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 23:10:01.465309: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 23:10:01.465730: Standing charge is set to 49.98p 2026-08-14 23:10:01.509089: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 23:10:01.509202: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 23:10:01.509369: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 35.0 minutes 2026-08-14 23:10:01.509698: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 35.0 minutes 2026-08-14 23:10:01.514649: Loaded 95 datapoints of futurerate analysis 2026-08-14 23:10:01.657845: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41', '08-15 22:00:00 => 30.26 / 20.87'] 2026-08-14 23:10:01.705839: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 23:10:01.706249: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-14 23:10:01.747076: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 23:10:01.748492: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 23:10:01.749717: High export rate found rates in range 99p to -99p 2026-08-14 23:10:01.849516: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 23:10:01.851961: Car 0 charging is not planned as it is not plugged in 2026-08-14 23:10:01.875473: Battery level now 3.35kWh, -1hr ago 4.9kWh, at midnight 2.43kWh, battery value change in the last hour -18.35p, change today 10.88p, rate_forward 11.83p 2026-08-14 23:10:01.877292: Last hour: net energy 0.02kWh, import 0.02kWh, export 0.0kWh, car 0kWh, load 1.8kWh, net cost 0.72p, import 0.72p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 23:10:01.963636: Today's energy total net 29.1kWh, import 29.1kWh, export 0.0kWh, cost 738.29p, import 688.31p, export 0.0p, carbon 0.0kg 2026-08-14 23:10:01.963823: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 23:10:02.068809: Using weighted-bucket historical load forecast over 14 days 2026-08-14 23:10:02.097247: Today's load divergence 145.14%, in-day adjustment 143.02%, damping 0.95x, yesterday 146.81% today 142.88% blend 3.47% 2026-08-14 23:10:02.097399: Today's predicted so far 13.34kWh with 0.0kWh car/iBoost excluded, 17.18kWh import ignored, and 13.34kWh forecast extra. 2026-08-14 23:10:02.097436: Today's actual load so far 24.97kWh with 0.0kWh car/iBoost excluded, and 17.18kWh import ignored. 2026-08-14 23:10:02.152481: Inverter 0: Type SK Sunsynk 2026-08-14 23:10:02.152565: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:10:02.153182: Reserve min: 7%, battery_min: 7% 2026-08-14 23:10:02.153278: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:10:02.153539: Inverter 0 SoC: 3.05kW 19%, current charge rate 5000W, current discharge rate 5250W, current battery power 1568W, current battery voltage 51.2V, grid power -55W, load power 1625W, PV Power 0W 2026-08-14 23:10:02.153683: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:10:02.153757: Inverter 0 scheduled charge enable is False 2026-08-14 23:10:02.153781: Inverter 0 charge windows currently [] 2026-08-14 23:10:02.153803: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:10:02.153889: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:10:02.153913: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:10:02.153941: Inverter 0 scheduled discharge enable is False 2026-08-14 23:10:02.154052: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:10:02.154084: Inverter 0 discharge windows currently [] 2026-08-14 23:10:02.154102: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:10:02.154117: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:10:02.154131: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:10:02.210927: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 23:10:02.211046: Plan was last updated on 2026-08-14 23:05:00+01:00 and is now 5.0 minutes old 2026-08-14 23:10:02.211229: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 23:10:02.211266: Best export window [ ] 2026-08-14 23:10:02.211974: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:10:02.214725: Load divergence over 8.0 hours mean 464.31W, min 274.8W, max 1206.0W, std dev 110.64W, divergence 11.91% 2026-08-14 23:10:02.233343: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:10:02.233464: LoadML is_calculating False 2026-08-14 23:10:02.233523: Creating pool of 12 processes to match your CPU count 2026-08-14 23:10:02.349626: predict base end_record 08-16 13:05:00, final soc 1.12kWh, metric 1388.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 49.08kWh, PV 0.0kWh 2026-08-14 23:10:02.480557: Battery has 1.58 hours left - now at 3.05kWh 2026-08-14 23:10:02.528056: predict base10 end_record 08-16 13:05:00, final soc 1.12kWh, metric 1416.64p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 50.23kWh, PV 0.0kWh 2026-08-14 23:10:02.610214: predict best10 end_record 08-16 13:05:00, final soc 1.44kWh, metric 1290.85p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 50.23kWh, PV 0.0kWh 2026-08-14 23:10:02.701518: predict best end_record 08-16 13:05:00, final soc 1.51kWh, metric 1264.99p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 49.08kWh, PV 0.0kWh 2026-08-14 23:10:02.701627: Saving plan best values to HA entities 2026-08-14 23:10:02.910707: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:10:02.918368: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 23:10:02.932715: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.96kWh, house 9.49kWh, export 0.0kWh, metric 1264.99p, metric10 1290.85p 2026-08-14 23:10:03.008819: Marginal costs baseline metric (no standing charge): 1165.0207 2026-08-14 23:10:03.299175: Marginal energy costs matrix computed: min=16.08 max=28.73 2026-08-14 23:10:03.385723: Rate array import [{'start': 1390, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3665, 'rate': 'cheap', 'range': '(15.4p - 23.6p)'}] export [{'start': 1390, 'end': 3665, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:10:03.386537: - Your estimated bill for today is £7.38 and tomorrow is £4.36 2026-08-14 23:10:03.386588: - Import rates are expensive (24.6p - 29.1p) for the next 7 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:10:03.386611: - The battery is currently at 19% and is in eco mode for the next 13 hours. 2026-08-14 23:10:03.386629: - For the next 48 hours there will be no solar generation. 2026-08-14 23:10:03.386646: - You will run out of battery in 1 and a half hours. 2026-08-14 23:10:03.386663: - Your next charge slot will be in 13 hours where import rates will be cheap (15.4p). 2026-08-14 23:10:03.386682: 2026-08-14 23:10:03.449304: Plan calculation took 1.24 seconds 2026-08-14 23:10:03.453214: No high rate period found 2026-08-14 23:10:03.500680: Import threshold used for optimisation was 27.18p 2026-08-14 23:10:03.553222: Low import rate windows [0: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 1: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 2: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 3: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 4: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 5: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 6: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 7: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 8: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 9: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 10: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 11: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 12: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 13: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 14: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 15: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 16: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 17: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 18: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 19: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 20: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 21: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 22: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 23: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 24: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 25: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 26: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 27: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 28: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 29: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 30: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 31: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 32: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 33: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 34: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 35: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 36: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 37: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 38: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 39: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 40: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 41: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 42: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 43: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 44: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 45: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 46: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 47: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 48: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 49: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 50: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 51: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 52: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 53: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 54: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 55: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 56: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 57: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 58: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 59: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 60: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 61: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 62: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 63: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 64: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 65: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 66: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 67: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 68: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 69: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 70: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 71: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 72: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 73: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 74: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 75: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 76: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 77: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 78: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 79: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 80: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 81: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 82: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 83: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 84: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 85: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 86: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 87: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 88: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 89: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 90: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 91: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 92: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 93: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 94: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8] 2026-08-14 23:10:03.559438: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 19%, target 100% 2026-08-14 23:10:03.559563: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:10:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:10:03.559675: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:10:03.559994: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:10:03.560119: No export window planned 2026-08-14 23:10:03.560257: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:10:03.560286: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:10:03.560422: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:10:03.560633: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:10:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:10:03.560697: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:10:03.560756: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:10:03.560896: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:10:03.560996: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:10:03.561058: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:10:03.561093: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:10:03.561128: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:10:03.561154: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:10:03.561183: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:10:03.561262: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:10:03.561299: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:10:03.561324: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:10:03.561348: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:10:03.561371: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:10:03.561394: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:10:03.561418: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:10:03.561444: Inverter 0 count register writes 0 2026-08-14 23:10:03.576630: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 23:10:03.581895: Total inverter register writes now 815 2026-08-14 23:10:03.613329: Info: Completed run status Demand 2026-08-14 23:10:03.619571: Info: record_status Demand 2026-08-14 23:10:03.626322: Saved current settings to /config/predbat_config.json 2026-08-14 23:10:03.626702: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 23:10:41.740870: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:10:41.741257: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:10:41.741336: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:10:41.741543: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:10:41.741635: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:10:41.741658: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:10:41.741675: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:12:41.956338: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:12:41.956578: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:12:41.956621: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:12:41.956756: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:12:41.956795: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:12:41.956816: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:12:41.956838: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:14:42.178639: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:14:42.178967: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:14:42.179019: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:14:42.179265: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:14:42.179325: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:14:42.179350: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:14:42.179368: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:15:00.292361: --------------- PredBat - update at 2026-08-14 23:15:00+01:00 with clock skew 0 minutes, minutes now 1395 2026-08-14 23:15:00.293300: Saved current settings to /config/predbat_config.json 2026-08-14 23:15:00.293483: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 75.0 minutes 2026-08-14 23:15:00.293603: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 23:15:00.293751: Autoupdate: Currently up to date 2026-08-14 23:15:00.311411: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 23:15:00.311548: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 23:15:00.311713: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 23:15:00.312262: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 23:15:00.312386: Predbat mode is set to Control charge & discharge 2026-08-14 23:15:00.490848: Found 21602 load_today datapoints going back 28 days 2026-08-14 23:15:00.491011: Using load_power data to fill gaps in load_today data 2026-08-14 23:15:01.341603: Processing 721 30-minute periods for power integration 2026-08-14 23:15:01.537960: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 23:15:01.538116: Car charging hold False, threshold 6.0kWh 2026-08-14 23:15:01.538164: Current data so far today: load 25.1kWh, import 29.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 23:15:01.557456: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 23:15:01.558353: Standing charge is set to 49.98p 2026-08-14 23:15:01.602317: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 23:15:01.602424: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 23:15:01.602629: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 40.0 minutes 2026-08-14 23:15:01.603090: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 40.0 minutes 2026-08-14 23:15:01.609192: Loaded 95 datapoints of futurerate analysis 2026-08-14 23:15:01.769445: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41', '08-15 22:00:00 => 30.26 / 20.87'] 2026-08-14 23:15:01.814808: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 23:15:01.815337: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-14 23:15:01.860537: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 23:15:01.860704: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 23:15:01.863109: High export rate found rates in range 99p to -99p 2026-08-14 23:15:01.973182: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 23:15:01.973316: Car 0 charging is not planned as it is not plugged in 2026-08-14 23:15:01.985152: Battery level now 3.05kWh, -1hr ago 4.62kWh, at midnight 2.43kWh, battery value change in the last hour -18.64p, change today 7.28p, rate_forward 11.83p 2026-08-14 23:15:01.985550: Last hour: net energy 0.02kWh, import 0.02kWh, export 0.0kWh, car 0kWh, load 1.8kWh, net cost 0.58p, import 0.58p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 23:15:02.055095: Today's energy total net 29.1kWh, import 29.1kWh, export 0.0kWh, cost 738.29p, import 688.31p, export 0.0p, carbon 0.0kg 2026-08-14 23:15:02.055321: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 23:15:02.155412: Using weighted-bucket historical load forecast over 14 days 2026-08-14 23:15:02.188006: Today's load divergence 145.27%, in-day adjustment 143.12%, damping 0.95x, yesterday 146.81% today 143.01% blend 3.12% 2026-08-14 23:15:02.188126: Today's predicted so far 13.38kWh with 0.0kWh car/iBoost excluded, 17.19kWh import ignored, and 13.38kWh forecast extra. 2026-08-14 23:15:02.188160: Today's actual load so far 25.07kWh with 0.0kWh car/iBoost excluded, and 17.19kWh import ignored. 2026-08-14 23:15:02.221485: Inverter 0: Type SK Sunsynk 2026-08-14 23:15:02.221579: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:15:02.222163: Reserve min: 7%, battery_min: 7% 2026-08-14 23:15:02.222251: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:15:02.222525: Inverter 0 SoC: 3.05kW 19%, current charge rate 5000W, current discharge rate 5250W, current battery power 1617W, current battery voltage 51.2V, grid power -55W, load power 1677W, PV Power 0W 2026-08-14 23:15:02.222688: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:15:02.222777: Inverter 0 scheduled charge enable is False 2026-08-14 23:15:02.222812: Inverter 0 charge windows currently [] 2026-08-14 23:15:02.222839: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:15:02.222978: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:15:02.223015: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:15:02.223070: Inverter 0 scheduled discharge enable is False 2026-08-14 23:15:02.223330: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:15:02.223395: Inverter 0 discharge windows currently [] 2026-08-14 23:15:02.223423: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:15:02.223447: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:15:02.223465: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:15:02.296373: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 23:15:02.296516: Plan was last updated on 2026-08-14 23:05:00+01:00 and is now 10.0 minutes old 2026-08-14 23:15:02.296823: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 23:15:02.296893: Best export window [ ] 2026-08-14 23:15:02.298003: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:15:02.302907: Load divergence over 8.0 hours mean 459.81W, min 279.0W, max 1164.0W, std dev 109.01W, divergence 11.85% 2026-08-14 23:15:02.325702: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:15:02.325836: LoadML is_calculating False 2026-08-14 23:15:02.325908: Creating pool of 12 processes to match your CPU count 2026-08-14 23:15:02.448293: predict base end_record 08-16 13:10:00, final soc 1.12kWh, metric 1386.44p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 49.2kWh, PV 0.0kWh 2026-08-14 23:15:02.587857: Battery has 1.58 hours left - now at 3.05kWh 2026-08-14 23:15:02.628586: predict base10 end_record 08-16 13:10:00, final soc 1.12kWh, metric 1414.91p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 50.35kWh, PV 0.0kWh 2026-08-14 23:15:02.701576: predict best10 end_record 08-16 13:10:00, final soc 1.77kWh, metric 1294.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 50.35kWh, PV 0.0kWh 2026-08-14 23:15:02.775164: predict best end_record 08-16 13:10:00, final soc 1.9kWh, metric 1269.78p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 49.2kWh, PV 0.0kWh 2026-08-14 23:15:02.775389: Saving plan best values to HA entities 2026-08-14 23:15:02.929126: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:15:02.934348: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 23:15:02.939121: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 15.43kWh, house 9.4kWh, export 0.0kWh, metric 1269.78p, metric10 1294.47p 2026-08-14 23:15:03.005932: Marginal costs baseline metric (no standing charge): 1169.8112 2026-08-14 23:15:03.236202: Marginal energy costs matrix computed: min=16.12 max=28.66 2026-08-14 23:15:03.306941: Rate array import [{'start': 1395, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3670, 'rate': 'cheap', 'range': '(15.4p - 23.6p)'}] export [{'start': 1395, 'end': 3670, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:15:03.307599: - Your estimated bill for today is £7.38 and tomorrow is £4.34 2026-08-14 23:15:03.307638: - Import rates are expensive (24.6p - 29.1p) for the next 7 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:15:03.307656: - The battery is currently at 19% and is in eco mode for the next 13 hours. 2026-08-14 23:15:03.307671: - For the next 48 hours there will be no solar generation. 2026-08-14 23:15:03.307685: - You will run out of battery in 1 and a half hours. 2026-08-14 23:15:03.307699: - Your next charge slot will be in 13 hours where import rates will be cheap (15.4p). 2026-08-14 23:15:03.307713: 2026-08-14 23:15:03.362293: Plan calculation took 1.07 seconds 2026-08-14 23:15:03.365629: No high rate period found 2026-08-14 23:15:03.413670: Import threshold used for optimisation was 27.18p 2026-08-14 23:15:03.472567: Low import rate windows [0: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 1: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 2: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 3: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 4: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 5: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 6: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 7: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 8: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 9: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 10: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 11: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 12: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 13: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 14: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 15: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 16: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 17: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 18: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 19: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 20: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 21: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 22: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 23: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 24: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 25: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 26: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 27: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 28: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 29: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 30: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 31: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 32: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 33: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 34: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 35: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 36: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 37: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 38: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 39: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 40: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 41: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 42: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 43: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 44: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 45: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 46: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 47: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 48: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 49: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 50: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 51: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 52: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 53: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 54: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 55: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 56: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 57: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 58: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 59: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 60: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 61: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 62: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 63: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 64: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 65: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 66: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 67: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 68: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 69: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 70: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 71: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 72: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 73: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 74: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 75: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 76: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 77: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 78: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 79: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 80: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 81: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 82: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 83: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 84: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 85: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 86: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 87: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 88: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 89: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 90: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 91: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 92: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 93: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 94: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8] 2026-08-14 23:15:03.479897: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 19%, target 100% 2026-08-14 23:15:03.480022: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:15:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:15:03.480135: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:15:03.480365: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:15:03.480443: No export window planned 2026-08-14 23:15:03.480541: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:15:03.480565: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:15:03.480667: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:15:03.480814: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:15:03.480868: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:15:03.480941: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:15:03.481122: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:15:03.481182: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:15:03.481241: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:15:03.481283: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:15:03.481309: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:15:03.481349: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:15:03.481392: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:15:03.481473: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:15:03.481514: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:15:03.481559: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:15:03.481584: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:15:03.481647: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:15:03.481689: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:15:03.481717: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:15:03.481738: Inverter 0 count register writes 0 2026-08-14 23:15:03.502115: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 23:15:03.502308: Recompute is saving previous plan... 2026-08-14 23:15:03.505495: Best charge window [ 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0% ] 2026-08-14 23:15:03.505580: Best export window [ ] 2026-08-14 23:15:03.506583: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:15:03.510284: Load divergence over 8.0 hours mean 459.81W, min 279.0W, max 1164.0W, std dev 109.01W, divergence 11.85% 2026-08-14 23:15:03.529450: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:15:03.529586: LoadML is_calculating False 2026-08-14 23:15:03.529661: Creating pool of 12 processes to match your CPU count 2026-08-14 23:15:03.619538: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 23:15:03.621838: Optimise levels pass started at 2026-08-14 23:15:03 2026-08-14 23:15:03.621901: Optimise all windows, total charge 94 export 1 2026-08-14 23:15:04.674360: >> Region optimisation pass width 960 gives best_metric 1251.99p, best_cost 1257.41p, best_cycle 37.3kWh, best_import 30.65kWh 2026-08-14 23:15:05.062604: >> Region optimisation pass width 480 gives best_metric 1251.99p, best_cost 1257.41p, best_cycle 37.3kWh, best_import 30.65kWh 2026-08-14 23:15:05.578395: >> Region optimisation pass width 240 gives best_metric 1251.99p, best_cost 1257.41p, best_cycle 37.3kWh, best_import 30.65kWh 2026-08-14 23:15:06.717814: >> Region optimisation pass width 120 gives best_metric 1251.99p, best_cost 1257.41p, best_cycle 37.3kWh, best_import 30.65kWh 2026-08-14 23:15:06.718098: Calculated end_record as 08-16 11:30:00 based on best_price 15.87p, next_charge_start 08-15 11:30:00, max_windows 72 2026-08-14 23:15:06.718190: Optimise levels pass ended at 2026-08-14 23:15:06, duration 3.1 seconds tried 335 combinations 2026-08-14 23:15:06.718281: Set best_price_charge_level 17.0p, best_price_export_level 0p, best_price_charge 15.87p, best_cost_export 0p, best_metric 1251.99p, best_keep 0kWh, best_cycle 37.3kWh, best_carbon 0kg, best_import 30.65kWh 2026-08-14 23:15:06.735132: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 15.87p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 0, 16.0, 0, 16.0, 16.0, 13.0, 13.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 23:15:11.628373: Tweak plan optimisation started metric 1124.59p, cost 1134.01p 2026-08-14 23:15:11.883113: Tweak optimisation finished metric 1124.59p, cost 1134.01p, metric_keep 0kWh, cycle 25.64kWh, carbon 0kg, import 22.57kWh, changed 8 window(s) 2026-08-14 23:15:11.903062: Swap charge optimisation started metric 1124.59p, cost 1134.01p, min_improvement_swap 0.1p 2026-08-14 23:15:17.704124: Swap charge optimisation finished metric 1124.59p, cost 1134.01p 2026-08-14 23:15:17.810029: Pruned 2 dead plan slot(s) in 8 trial(s), nominal metric 1120.77p -> 1120.77p, plan now metric 1124.62p, cost 1134.01p, cycle 25.64kWh, import 22.57kWh 2026-08-14 23:15:17.822464: Raw charge windows [ 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 81%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100% ] reserve 1.12 2026-08-14 23:15:17.823043: Unclipped charge windows [ 15-08 13:00:00 - 15-08 15:00:00 @ 14.41p 100%, 15-08 15:00:00 - 15-08 16:00:00 @ 15.45p 81%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 23:30:00 @ 29.3p 100% ] reserve 1.12 2026-08-14 23:15:17.823309: Unfiltered charge windows [ 15-08 13:00:00 - 15-08 15:00:00 @ 14.41p 100%, 15-08 15:00:00 - 15-08 16:00:00 @ 15.45p 81%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 23:30:00 @ 29.3p 100% ] reserve 1.12 2026-08-14 23:15:17.823528: Filtered charge windows [ 15-08 13:00:00 - 15-08 15:00:00 @ 14.41p 100%, 15-08 15:00:00 - 15-08 16:00:00 @ 15.45p 81%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 23:30:00 @ 29.3p 100% ] reserve 1.12 2026-08-14 23:15:17.863146: Previous plan best metric is 1124.59 (cost 1134.01) and new plan best metric is 1124.59 (cost 1134.01) 2026-08-14 23:15:17.863358: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 23:15:17.863573: Plan valid is now true after recompute was False 2026-08-14 23:15:17.893465: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 1363.44p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 47.77kWh, PV 0.0kWh 2026-08-14 23:15:17.998365: Battery has 1.58 hours left - now at 3.05kWh 2026-08-14 23:15:18.039935: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1390.81p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 48.85kWh, PV 0.0kWh 2026-08-14 23:15:18.125328: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 1259.7p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 48.85kWh, PV 0.0kWh 2026-08-14 23:15:18.214153: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 1233.98p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 47.77kWh, PV 0.0kWh 2026-08-14 23:15:18.214252: Saving plan best values to HA entities 2026-08-14 23:15:18.368836: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:15:18.373788: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 23:15:18.378386: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.48kWh, house 8.09kWh, export 0.0kWh, metric 1233.98p, metric10 1259.7p 2026-08-14 23:15:18.442853: Marginal costs baseline metric (no standing charge): 1134.0111 2026-08-14 23:15:18.671187: Marginal energy costs matrix computed: min=16.12 max=28.66 2026-08-14 23:15:18.739168: Rate array import [{'start': 1395, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3570, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 1395, 'end': 3570, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:15:18.739784: - Your estimated bill for today is £7.38 and tomorrow is £4.34 2026-08-14 23:15:18.739935: - Import rates are expensive (24.6p - 29.1p) for the next 7 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:15:18.739974: - The battery is currently at 19% and is in eco mode for the next 13 hours. 2026-08-14 23:15:18.739995: - For the next 48 hours there will be no solar generation. 2026-08-14 23:15:18.740014: - You will run out of battery in 1 and a half hours. 2026-08-14 23:15:18.741351: - Your next charge slot will be in 13 hours where import rates will be cheap (15.4p). 2026-08-14 23:15:18.741392: 2026-08-14 23:15:18.793046: Plan calculation took 15.29 seconds 2026-08-14 23:15:18.793442: Inverter 0: Type SK Sunsynk 2026-08-14 23:15:18.793490: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:15:18.794156: Reserve min: 7%, battery_min: 7% 2026-08-14 23:15:18.794248: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:15:18.794583: Inverter 0 SoC: 2.92kW 18%, current charge rate 5000W, current discharge rate 5250W, current battery power 1596W, current battery voltage 51.2V, grid power -55W, load power 1652W, PV Power 0W 2026-08-14 23:15:18.794821: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:15:18.794931: Inverter 0 scheduled charge enable is False 2026-08-14 23:15:18.794971: Inverter 0 charge windows currently [] 2026-08-14 23:15:18.795030: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:15:18.795182: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:15:18.795222: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:15:18.795259: Inverter 0 scheduled discharge enable is False 2026-08-14 23:15:18.795396: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:15:18.795435: Inverter 0 discharge windows currently [] 2026-08-14 23:15:18.795457: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:15:18.795481: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:15:18.795498: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:15:18.866827: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 18%, target 100% 2026-08-14 23:15:18.866983: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:15:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:15:18.867072: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:15:18.867293: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:15:18.867377: No export window planned 2026-08-14 23:15:18.867514: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:15:18.867550: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:15:18.867708: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:15:18.867896: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:15:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:15:18.868001: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:15:18.868076: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:15:18.868203: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:15:18.868261: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:15:18.868299: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:15:18.868325: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:15:18.868356: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:15:18.868380: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:15:18.868410: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:15:18.868468: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:15:18.868501: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:15:18.868525: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:15:18.868554: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:15:18.868578: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:15:18.868601: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:15:18.868629: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:15:18.868650: Inverter 0 count register writes 0 2026-08-14 23:15:18.892907: Total inverter register writes now 815 2026-08-14 23:15:18.931528: Info: Completed run status Demand 2026-08-14 23:15:18.938377: Info: record_status Demand 2026-08-14 23:15:18.945214: Saved current settings to /config/predbat_config.json 2026-08-14 23:15:18.945570: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 23:15:57.054073: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:15:57.054466: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:15:57.054525: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:15:57.054680: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:15:57.054724: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:15:57.054745: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:15:57.054766: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:17:57.270201: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:17:57.270446: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:17:57.270490: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:17:57.270685: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:17:57.270758: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:17:57.270803: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:17:57.270841: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:20:00.506883: --------------- PredBat - update at 2026-08-14 23:20:00+01:00 with clock skew 0 minutes, minutes now 1400 2026-08-14 23:20:00.507636: Saved current settings to /config/predbat_config.json 2026-08-14 23:20:00.507765: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 80.0 minutes 2026-08-14 23:20:00.507876: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 23:20:00.508008: Autoupdate: Currently up to date 2026-08-14 23:20:00.529567: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 23:20:00.529702: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 23:20:00.529867: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 23:20:00.530410: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 23:20:00.530534: Predbat mode is set to Control charge & discharge 2026-08-14 23:20:00.747569: Found 21602 load_today datapoints going back 28 days 2026-08-14 23:20:00.747734: Using load_power data to fill gaps in load_today data 2026-08-14 23:20:01.470936: Processing 721 30-minute periods for power integration 2026-08-14 23:20:01.624492: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 23:20:01.624615: Car charging hold False, threshold 6.0kWh 2026-08-14 23:20:01.624654: Current data so far today: load 25.1kWh, import 29.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 23:20:01.639846: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 23:20:01.640237: Standing charge is set to 49.98p 2026-08-14 23:20:01.687218: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 23:20:01.687293: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 23:20:01.687457: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 45.0 minutes 2026-08-14 23:20:01.687772: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 45.0 minutes 2026-08-14 23:20:01.692513: Loaded 95 datapoints of futurerate analysis 2026-08-14 23:20:01.815272: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41', '08-15 22:00:00 => 30.26 / 20.87'] 2026-08-14 23:20:01.852627: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 23:20:01.853054: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-14 23:20:01.887197: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 23:20:01.887311: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 23:20:01.888467: High export rate found rates in range 99p to -99p 2026-08-14 23:20:01.977089: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 23:20:01.977224: Car 0 charging is not planned as it is not plugged in 2026-08-14 23:20:01.987899: Battery level now 3.05kWh, -1hr ago 4.47kWh, at midnight 2.43kWh, battery value change in the last hour -16.84p, change today 7.28p, rate_forward 11.83p 2026-08-14 23:20:01.988298: Last hour: net energy 0.01kWh, import 0.01kWh, export 0.0kWh, car 0kWh, load 1.65kWh, net cost 0.43p, import 0.43p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 23:20:02.042232: Today's energy total net 29.1kWh, import 29.1kWh, export 0.0kWh, cost 738.29p, import 688.31p, export 0.0p, carbon 0.0kg 2026-08-14 23:20:02.042372: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 23:20:02.124030: Using weighted-bucket historical load forecast over 14 days 2026-08-14 23:20:02.154446: Today's load divergence 145.09%, in-day adjustment 142.94%, damping 0.95x, yesterday 146.81% today 142.83% blend 2.78% 2026-08-14 23:20:02.154535: Today's predicted so far 13.44kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 13.44kWh forecast extra. 2026-08-14 23:20:02.154562: Today's actual load so far 25.03kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 23:20:02.187363: Inverter 0: Type SK Sunsynk 2026-08-14 23:20:02.187461: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:20:02.188148: Reserve min: 7%, battery_min: 7% 2026-08-14 23:20:02.188240: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:20:02.188604: Inverter 0 SoC: 2.79kW 17%, current charge rate 5000W, current discharge rate 5250W, current battery power 1608W, current battery voltage 51.2V, grid power -54W, load power 1664W, PV Power 0W 2026-08-14 23:20:02.188846: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:20:02.189023: Inverter 0 scheduled charge enable is False 2026-08-14 23:20:02.189084: Inverter 0 charge windows currently [] 2026-08-14 23:20:02.189135: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:20:02.189271: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:20:02.189302: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:20:02.189340: Inverter 0 scheduled discharge enable is False 2026-08-14 23:20:02.189475: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:20:02.189511: Inverter 0 discharge windows currently [] 2026-08-14 23:20:02.189534: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:20:02.189553: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:20:02.189570: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:20:02.252929: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 23:20:02.253093: Plan was last updated on 2026-08-14 23:15:00+01:00 and is now 5.0 minutes old 2026-08-14 23:20:02.253278: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 23:20:02.253313: Best export window [ ] 2026-08-14 23:20:02.253918: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:20:02.256393: Load divergence over 8.0 hours mean 458.58W, min 345.0W, max 1182.6W, std dev 96.04W, divergence 10.47% 2026-08-14 23:20:02.271899: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:20:02.272211: LoadML is_calculating False 2026-08-14 23:20:02.272295: Creating pool of 12 processes to match your CPU count 2026-08-14 23:20:02.403307: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 1369.18p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 47.78kWh, PV 0.0kWh 2026-08-14 23:20:02.513164: Battery has 1.33 hours left - now at 2.79kWh 2026-08-14 23:20:02.553142: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1396.5p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 48.86kWh, PV 0.0kWh 2026-08-14 23:20:02.622483: predict best10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 1265.36p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 48.86kWh, PV 0.0kWh 2026-08-14 23:20:02.694055: predict best end_record 08-16 11:35:00, final soc 1.12kWh, metric 1239.63p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 47.78kWh, PV 0.0kWh 2026-08-14 23:20:02.694140: Saving plan best values to HA entities 2026-08-14 23:20:02.835122: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:20:02.839808: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 23:20:02.844372: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.47kWh, house 8.35kWh, export 0.0kWh, metric 1239.63p, metric10 1265.36p 2026-08-14 23:20:02.909319: Marginal costs baseline metric (no standing charge): 1139.6669 2026-08-14 23:20:03.134786: Marginal energy costs matrix computed: min=16.15 max=28.69 2026-08-14 23:20:03.207141: Rate array import [{'start': 1400, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3575, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1400, 'end': 3575, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:20:03.207789: - Your estimated bill for today is £7.38 and tomorrow is £4.38 2026-08-14 23:20:03.207827: - Import rates are expensive (24.6p - 29.1p) for the next 7 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:20:03.207845: - The battery is currently at 17% and is in eco mode for the next 13 hours. 2026-08-14 23:20:03.207860: - For the next 48 hours there will be no solar generation. 2026-08-14 23:20:03.207874: - You will run out of battery in 1 and a quarter hours. 2026-08-14 23:20:03.207905: - Your next charge slot will be in 13 hours where import rates will be cheap (15.4p). 2026-08-14 23:20:03.207920: 2026-08-14 23:20:03.260828: Plan calculation took 1.01 seconds 2026-08-14 23:20:03.264083: No high rate period found 2026-08-14 23:20:03.310234: Import threshold used for optimisation was 22.73p 2026-08-14 23:20:03.358241: Low import rate windows [0: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 1: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 2: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 3: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 4: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 5: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 6: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 7: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 8: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 9: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 10: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 11: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 12: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 13: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 14: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 15: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 16: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 17: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 18: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 19: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 20: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 21: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 22: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 23: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 24: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 25: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 26: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 27: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 28: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 29: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 30: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 31: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 32: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 33: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 34: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 35: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 36: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 37: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 38: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 39: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 40: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 41: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 42: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 43: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 44: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 45: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 46: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 47: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 48: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 49: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 50: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 51: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 52: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 53: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 54: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 55: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 56: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 57: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 58: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 59: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 60: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 61: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 62: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 63: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 64: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 65: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 66: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 67: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 68: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 69: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 70: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 71: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 72: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 73: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 74: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 75: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 76: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 77: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 78: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 79: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 80: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 81: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 82: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 83: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 84: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 85: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 86: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 87: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 88: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 89: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 90: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 91: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 92: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 93: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 94: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8] 2026-08-14 23:20:03.365522: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 17%, target 100% 2026-08-14 23:20:03.365645: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:20:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:20:03.365767: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:20:03.366040: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:20:03.366119: No export window planned 2026-08-14 23:20:03.366218: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:20:03.366273: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:20:03.366437: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:20:03.366704: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:20:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:20:03.366815: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:20:03.366885: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:20:03.367057: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:20:03.367120: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:20:03.367168: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:20:03.367198: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:20:03.367243: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:20:03.367283: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:20:03.367307: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:20:03.367415: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:20:03.367455: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:20:03.367477: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:20:03.367498: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:20:03.367522: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:20:03.367541: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:20:03.367560: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:20:03.367580: Inverter 0 count register writes 0 2026-08-14 23:20:03.383326: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 23:20:03.388789: Total inverter register writes now 815 2026-08-14 23:20:03.418573: Info: Completed run status Demand 2026-08-14 23:20:03.424605: Info: record_status Demand 2026-08-14 23:20:03.430734: Saved current settings to /config/predbat_config.json 2026-08-14 23:20:03.431034: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 23:20:41.530654: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:20:41.530900: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:20:41.531307: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:20:41.531497: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:20:41.531775: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:20:41.531855: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:20:41.531876: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:22:41.746979: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:22:41.747234: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:22:41.747269: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:22:41.747426: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:22:41.747507: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:22:41.747528: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:22:41.747546: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:24:41.971152: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:24:41.971502: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:24:41.971555: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:24:41.971784: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:24:41.971847: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:24:41.971910: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:24:41.971959: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:25:00.079305: --------------- PredBat - update at 2026-08-14 23:25:00+01:00 with clock skew 0 minutes, minutes now 1405 2026-08-14 23:25:00.080039: Saved current settings to /config/predbat_config.json 2026-08-14 23:25:00.080166: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 85.0 minutes 2026-08-14 23:25:00.080280: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 23:25:00.080380: Autoupdate: Currently up to date 2026-08-14 23:25:00.102067: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 23:25:00.102217: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 23:25:00.102385: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 23:25:00.102967: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 23:25:00.103093: Predbat mode is set to Control charge & discharge 2026-08-14 23:25:00.293221: Found 21602 load_today datapoints going back 28 days 2026-08-14 23:25:00.293369: Using load_power data to fill gaps in load_today data 2026-08-14 23:25:01.029056: Processing 721 30-minute periods for power integration 2026-08-14 23:25:01.197327: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 23:25:01.197453: Car charging hold False, threshold 6.0kWh 2026-08-14 23:25:01.197493: Current data so far today: load 25.2kWh, import 29.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 23:25:01.213140: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 23:25:01.213573: Standing charge is set to 49.98p 2026-08-14 23:25:01.265066: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 23:25:01.265198: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 23:25:01.265469: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 50.0 minutes 2026-08-14 23:25:01.265900: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 50.0 minutes 2026-08-14 23:25:01.274294: Loaded 95 datapoints of futurerate analysis 2026-08-14 23:25:01.415678: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41', '08-15 22:00:00 => 30.26 / 20.87'] 2026-08-14 23:25:01.462516: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 23:25:01.463014: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-14 23:25:01.499447: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 23:25:01.499567: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 23:25:01.500929: High export rate found rates in range 99p to -99p 2026-08-14 23:25:01.592127: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 23:25:01.592257: Car 0 charging is not planned as it is not plugged in 2026-08-14 23:25:01.605056: Battery level now 2.79kWh, -1hr ago 4.32kWh, at midnight 2.43kWh, battery value change in the last hour -18.07p, change today 4.26p, rate_forward 11.83p 2026-08-14 23:25:01.605468: Last hour: net energy 0.01kWh, import 0.01kWh, export 0.0kWh, car 0kWh, load 1.6kWh, net cost 0.28p, import 0.28p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 23:25:01.661013: Today's energy total net 29.1kWh, import 29.1kWh, export 0.0kWh, cost 738.29p, import 688.31p, export 0.0p, carbon 0.0kg 2026-08-14 23:25:01.661195: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 23:25:01.760304: Using weighted-bucket historical load forecast over 14 days 2026-08-14 23:25:01.793407: Today's load divergence 145.03%, in-day adjustment 142.88%, damping 0.95x, yesterday 146.81% today 142.78% blend 2.43% 2026-08-14 23:25:01.793518: Today's predicted so far 13.51kWh with 0.0kWh car/iBoost excluded, 17.38kWh import ignored, and 13.51kWh forecast extra. 2026-08-14 23:25:01.793558: Today's actual load so far 25.09kWh with 0.0kWh car/iBoost excluded, and 17.38kWh import ignored. 2026-08-14 23:25:01.822536: Inverter 0: Type SK Sunsynk 2026-08-14 23:25:01.822627: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:25:01.823218: Reserve min: 7%, battery_min: 7% 2026-08-14 23:25:01.823305: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:25:01.823595: Inverter 0 SoC: 2.79kW 17%, current charge rate 5000W, current discharge rate 5250W, current battery power 1644W, current battery voltage 51.2V, grid power -55W, load power 1706W, PV Power 0W 2026-08-14 23:25:01.823774: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:25:01.823858: Inverter 0 scheduled charge enable is False 2026-08-14 23:25:01.823906: Inverter 0 charge windows currently [] 2026-08-14 23:25:01.823940: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:25:01.824046: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:25:01.824081: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:25:01.824116: Inverter 0 scheduled discharge enable is False 2026-08-14 23:25:01.824239: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:25:01.824268: Inverter 0 discharge windows currently [] 2026-08-14 23:25:01.824289: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:25:01.824308: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:25:01.824325: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:25:01.884765: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 23:25:01.884878: Plan was last updated on 2026-08-14 23:15:00+01:00 and is now 10.0 minutes old 2026-08-14 23:25:01.885201: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 23:25:01.885254: Best export window [ ] 2026-08-14 23:25:01.886114: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:25:01.889336: Load divergence over 8.0 hours mean 450.4W, min 312.6W, max 694.2W, std dev 56.88W, divergence 6.31% 2026-08-14 23:25:01.905333: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:25:01.905418: LoadML is_calculating False 2026-08-14 23:25:01.905470: Creating pool of 12 processes to match your CPU count 2026-08-14 23:25:02.006538: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 1367.22p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 47.84kWh, PV 0.0kWh 2026-08-14 23:25:02.121535: Battery has 1.42 hours left - now at 2.79kWh 2026-08-14 23:25:02.166865: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1394.46p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 48.92kWh, PV 0.0kWh 2026-08-14 23:25:02.259161: predict best10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 1263.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 48.92kWh, PV 0.0kWh 2026-08-14 23:25:02.350934: predict best end_record 08-16 11:40:00, final soc 1.12kWh, metric 1237.67p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 47.84kWh, PV 0.0kWh 2026-08-14 23:25:02.351032: Saving plan best values to HA entities 2026-08-14 23:25:02.534357: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:25:02.539439: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 23:25:02.544420: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.48kWh, house 8.3kWh, export 0.0kWh, metric 1237.67p, metric10 1263.29p 2026-08-14 23:25:02.618830: Marginal costs baseline metric (no standing charge): 1137.7001 2026-08-14 23:25:02.848158: Marginal energy costs matrix computed: min=16.19 max=28.66 2026-08-14 23:25:02.921115: Rate array import [{'start': 1405, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3580, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1405, 'end': 3580, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:25:02.921791: - Your estimated bill for today is £7.38 and tomorrow is £4.35 2026-08-14 23:25:02.921829: - Import rates are expensive (24.6p - 29.1p) for the next 7 and a half hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:25:02.921848: - The battery is currently at 17% and is in eco mode for the next 13 hours. 2026-08-14 23:25:02.921862: - For the next 48 hours there will be no solar generation. 2026-08-14 23:25:02.921877: - You will run out of battery in 1 and a half hours. 2026-08-14 23:25:02.921928: - Your next charge slot will be in 13 hours where import rates will be cheap (15.4p). 2026-08-14 23:25:02.921972: 2026-08-14 23:25:02.976693: Plan calculation took 1.09 seconds 2026-08-14 23:25:02.980031: No high rate period found 2026-08-14 23:25:03.026877: Import threshold used for optimisation was 22.73p 2026-08-14 23:25:03.076770: Low import rate windows [0: 08-14 23:00:00 - 08-14 23:30:00 @ 27.8, 1: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 2: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 3: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 4: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 5: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 6: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 7: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 8: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 9: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 10: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 11: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 12: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 13: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 14: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 15: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 16: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 17: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 18: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 19: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 20: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 21: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 22: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 23: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 24: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 25: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 26: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 27: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 28: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 29: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 30: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 31: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 32: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 33: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 34: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 35: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 36: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 37: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 38: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 39: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 40: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 41: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 42: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 43: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 44: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 45: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 46: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 47: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 48: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 49: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 50: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 51: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 52: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 53: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 54: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 55: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 56: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 57: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 58: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 59: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 60: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 61: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 62: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 63: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 64: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 65: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 66: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 67: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 68: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 69: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 70: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 71: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 72: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 73: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 74: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 75: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 76: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 77: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 78: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 79: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 80: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 81: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 82: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 83: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 84: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 85: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 86: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 87: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 88: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 89: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 90: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 91: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 92: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 93: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 94: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8] 2026-08-14 23:25:03.082642: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 17%, target 100% 2026-08-14 23:25:03.082751: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:25:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:25:03.082850: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:25:03.083164: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:25:03.083241: No export window planned 2026-08-14 23:25:03.083342: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:25:03.083400: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:25:03.083512: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:25:03.083682: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:25:03.083755: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:25:03.083809: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:25:03.083907: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:25:03.083941: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:25:03.083971: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:25:03.083993: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:25:03.084014: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:25:03.084038: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:25:03.084058: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:25:03.084114: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:25:03.084143: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:25:03.084168: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:25:03.084204: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:25:03.084224: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:25:03.084244: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:25:03.084263: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:25:03.084279: Inverter 0 count register writes 0 2026-08-14 23:25:03.113208: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 23:25:03.113399: Recompute is saving previous plan... 2026-08-14 23:25:03.116640: Best charge window [ 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0% ] 2026-08-14 23:25:03.116733: Best export window [ ] 2026-08-14 23:25:03.117631: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:25:03.120670: Load divergence over 8.0 hours mean 450.4W, min 312.6W, max 694.2W, std dev 56.88W, divergence 6.31% 2026-08-14 23:25:03.138665: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:25:03.138763: LoadML is_calculating False 2026-08-14 23:25:03.138826: Creating pool of 12 processes to match your CPU count 2026-08-14 23:25:03.223774: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 23:25:03.225863: Optimise levels pass started at 2026-08-14 23:25:03 2026-08-14 23:25:03.225943: Optimise all windows, total charge 94 export 1 2026-08-14 23:25:04.353273: >> Region optimisation pass width 960 gives best_metric 1257.81p, best_cost 1263.22p, best_cycle 37.06kWh, best_import 30.86kWh 2026-08-14 23:25:04.800470: >> Region optimisation pass width 480 gives best_metric 1257.81p, best_cost 1263.22p, best_cycle 37.06kWh, best_import 30.86kWh 2026-08-14 23:25:05.309637: >> Region optimisation pass width 240 gives best_metric 1257.81p, best_cost 1263.22p, best_cycle 37.06kWh, best_import 30.86kWh 2026-08-14 23:25:07.241297: >> Region optimisation pass width 120 gives best_metric 1249.41p, best_cost 1258.27p, best_cycle 36.82kWh, best_import 30.99kWh 2026-08-14 23:25:07.241685: Calculated end_record as 08-16 13:00:00 based on best_price 15.87p, next_charge_start 08-15 13:00:00, max_windows 75 2026-08-14 23:25:07.241787: Optimise levels pass ended at 2026-08-14 23:25:07, duration 4.0 seconds tried 362 combinations 2026-08-14 23:25:07.241932: Set best_price_charge_level 17.0p, best_price_export_level 0p, best_price_charge 15.87p, best_cost_export 0p, best_metric 1249.41p, best_keep 0kWh, best_cycle 36.82kWh, best_carbon 0kg, best_import 30.99kWh 2026-08-14 23:25:07.263081: Starting detailed optimisation end_record 08-16 13:00:00, best_price_charge 15.87p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 13.0, 13.0, 13.0, 13.0, 13.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 23:25:12.751127: Tweak plan optimisation started metric 1146.79p, cost 1156.1p 2026-08-14 23:25:13.020662: Tweak optimisation finished metric 1146.79p, cost 1156.1p, metric_keep 0kWh, cycle 25.39kWh, carbon 0kg, import 23.91kWh, changed 8 window(s) 2026-08-14 23:25:13.042047: Swap charge optimisation started metric 1146.79p, cost 1156.1p, min_improvement_swap 0.1p 2026-08-14 23:25:18.370805: Swap charge optimisation finished metric 1146.79p, cost 1156.1p 2026-08-14 23:25:18.460615: Pruned 2 dead plan slot(s) in 8 trial(s), nominal metric 1142.85p -> 1142.85p, plan now metric 1146.83p, cost 1156.1p, cycle 25.39kWh, import 23.91kWh 2026-08-14 23:25:18.470654: Raw charge windows [ 14-08 23:00:00 - 14-08 23:30:00 @ 27.8p 0%, 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 81%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 81%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100% ] reserve 1.12 2026-08-14 23:25:18.471178: Unclipped charge windows [ 15-08 13:00:00 - 15-08 14:00:00 @ 15.55p 100%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 81%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 23:30:00 @ 29.3p 100% ] reserve 1.12 2026-08-14 23:25:18.471440: Unfiltered charge windows [ 15-08 13:00:00 - 15-08 14:00:00 @ 15.55p 100%, 15-08 14:00:00 - 15-08 15:00:00 @ 14.17p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 23:30:00 @ 29.3p 100% ] reserve 1.12 2026-08-14 23:25:18.471593: Filtered charge windows [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.94p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 23:30:00 @ 29.3p 100% ] reserve 1.12 2026-08-14 23:25:18.502808: Previous plan best metric is 1146.79 (cost 1156.1) and new plan best metric is 1146.79 (cost 1156.1) 2026-08-14 23:25:18.503021: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 23:25:18.503181: Plan valid is now true after recompute was False 2026-08-14 23:25:18.526742: predict base end_record 08-16 13:00:00, final soc 1.12kWh, metric 1385.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.97kWh, PV 0.0kWh 2026-08-14 23:25:18.624339: Battery has 1.42 hours left - now at 2.79kWh 2026-08-14 23:25:18.668294: predict base10 end_record 08-16 13:00:00, final soc 1.12kWh, metric 1413.74p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 50.11kWh, PV 0.0kWh 2026-08-14 23:25:18.736244: predict best10 end_record 08-16 13:00:00, final soc 1.12kWh, metric 1282.56p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 50.11kWh, PV 0.0kWh 2026-08-14 23:25:18.803644: predict best end_record 08-16 13:00:00, final soc 1.12kWh, metric 1256.07p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 48.97kWh, PV 0.0kWh 2026-08-14 23:25:18.803726: Saving plan best values to HA entities 2026-08-14 23:25:18.948034: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:25:18.955867: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 23:25:18.961603: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.48kWh, house 9.43kWh, export 0.0kWh, metric 1256.07p, metric10 1282.56p 2026-08-14 23:25:19.042632: Marginal costs baseline metric (no standing charge): 1156.0983 2026-08-14 23:25:19.303339: Marginal energy costs matrix computed: min=16.19 max=28.66 2026-08-14 23:25:19.388981: Rate array import [{'start': 1405, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3660, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1405, 'end': 3660, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:25:19.389745: - Your estimated bill for today is £7.38 and tomorrow is £4.35 2026-08-14 23:25:19.389792: - Import rates are expensive (24.6p - 29.1p) for the next 7 and a half hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:25:19.389814: - The battery is currently at 17% and is in eco mode for the next 13 hours. 2026-08-14 23:25:19.389832: - For the next 48 hours there will be no solar generation. 2026-08-14 23:25:19.389849: - You will run out of battery in 1 and a half hours. 2026-08-14 23:25:19.389870: - Your next charge slot will be in 13 hours where import rates will be cheap (15.4p). 2026-08-14 23:25:19.389904: 2026-08-14 23:25:19.447118: Plan calculation took 16.33 seconds 2026-08-14 23:25:19.447456: Inverter 0: Type SK Sunsynk 2026-08-14 23:25:19.447497: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:25:19.448056: Reserve min: 7%, battery_min: 7% 2026-08-14 23:25:19.448132: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:25:19.448385: Inverter 0 SoC: 2.66kW 17%, current charge rate 5000W, current discharge rate 5250W, current battery power 1616W, current battery voltage 51.2V, grid power -55W, load power 1674W, PV Power 0W 2026-08-14 23:25:19.448586: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:25:19.448678: Inverter 0 scheduled charge enable is False 2026-08-14 23:25:19.448711: Inverter 0 charge windows currently [] 2026-08-14 23:25:19.448760: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:25:19.448854: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:25:19.448895: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:25:19.448928: Inverter 0 scheduled discharge enable is False 2026-08-14 23:25:19.449144: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:25:19.449187: Inverter 0 discharge windows currently [] 2026-08-14 23:25:19.449213: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:25:19.449249: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:25:19.449271: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:25:19.510691: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 17%, target 100% 2026-08-14 23:25:19.510850: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:25:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:25:19.510945: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:25:19.511145: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:25:19.511227: No export window planned 2026-08-14 23:25:19.511347: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:25:19.511383: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:25:19.511515: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:25:19.511678: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:25:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:25:19.511731: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:25:19.511791: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:25:19.511897: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:25:19.511946: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:25:19.511975: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:25:19.512007: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:25:19.512034: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:25:19.512062: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:25:19.512092: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:25:19.512151: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:25:19.512187: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:25:19.512212: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:25:19.512236: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:25:19.512259: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:25:19.512282: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:25:19.512336: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:25:19.512359: Inverter 0 count register writes 0 2026-08-14 23:25:19.538921: Total inverter register writes now 815 2026-08-14 23:25:19.579961: Info: Completed run status Demand 2026-08-14 23:25:19.592119: Info: record_status Demand 2026-08-14 23:25:19.600102: Saved current settings to /config/predbat_config.json 2026-08-14 23:25:19.600431: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 23:25:56.710823: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:25:56.711112: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:25:56.711182: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:25:56.711340: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:25:56.711380: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:25:56.711400: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:25:56.711417: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:27:56.935435: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:27:56.935700: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:27:56.935742: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:27:56.935934: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:27:56.936015: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:27:56.936035: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:27:56.936053: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:29:57.156371: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:29:57.156641: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:29:57.156690: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:29:57.156925: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:29:57.156995: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:29:57.157017: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:29:57.157037: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:30:00.233461: --------------- PredBat - update at 2026-08-14 23:30:00+01:00 with clock skew 0 minutes, minutes now 1410 2026-08-14 23:30:00.234219: Saved current settings to /config/predbat_config.json 2026-08-14 23:30:00.234349: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 90.0 minutes 2026-08-14 23:30:00.234469: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 23:30:00.234585: Autoupdate: Currently up to date 2026-08-14 23:30:00.252366: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 23:30:00.252492: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 23:30:00.252704: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 23:30:00.253367: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 23:30:00.253522: Predbat mode is set to Control charge & discharge 2026-08-14 23:30:00.429871: Found 21602 load_today datapoints going back 28 days 2026-08-14 23:30:00.430007: Using load_power data to fill gaps in load_today data 2026-08-14 23:30:01.242289: Processing 721 30-minute periods for power integration 2026-08-14 23:30:01.418382: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 23:30:01.418776: Car charging hold False, threshold 6.0kWh 2026-08-14 23:30:01.418842: Current data so far today: load 25.45kWh, import 29.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 23:30:01.433704: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 23:30:01.434101: Standing charge is set to 49.98p 2026-08-14 23:30:01.481372: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 23:30:01.481482: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 23:30:01.481686: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 55.0 minutes 2026-08-14 23:30:01.482110: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 55.0 minutes 2026-08-14 23:30:01.488179: Loaded 95 datapoints of futurerate analysis 2026-08-14 23:30:01.640221: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41', '08-15 22:00:00 => 30.26 / 20.87'] 2026-08-14 23:30:01.688321: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 23:30:01.689042: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-14 23:30:01.733721: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 23:30:01.733882: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 23:30:01.735297: High export rate found rates in range 99p to -99p 2026-08-14 23:30:01.852889: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 23:30:01.853104: Car 0 charging is not planned as it is not plugged in 2026-08-14 23:30:01.869937: Battery level now 2.79kWh, -1hr ago 4.17kWh, at midnight 2.43kWh, battery value change in the last hour -16.27p, change today 4.26p, rate_forward 11.83p 2026-08-14 23:30:01.870606: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.7kWh, net cost 0.14p, import 0.14p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 23:30:01.952437: Today's energy total net 29.1kWh, import 29.1kWh, export 0.0kWh, cost 738.29p, import 688.31p, export 0.0p, carbon 0.0kg 2026-08-14 23:30:01.952631: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 23:30:02.068372: Using weighted-bucket historical load forecast over 14 days 2026-08-14 23:30:02.095563: Today's load divergence 145.52%, in-day adjustment 143.31%, damping 0.95x, yesterday 146.81% today 143.24% blend 2.08% 2026-08-14 23:30:02.095653: Today's predicted so far 13.66kWh with 0.0kWh car/iBoost excluded, 17.37kWh import ignored, and 13.66kWh forecast extra. 2026-08-14 23:30:02.095680: Today's actual load so far 25.44kWh with 0.0kWh car/iBoost excluded, and 17.37kWh import ignored. 2026-08-14 23:30:02.126190: Inverter 0: Type SK Sunsynk 2026-08-14 23:30:02.126299: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:30:02.126935: Reserve min: 7%, battery_min: 7% 2026-08-14 23:30:02.127022: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:30:02.127287: Inverter 0 SoC: 2.52kW 16%, current charge rate 5000W, current discharge rate 5250W, current battery power 1678W, current battery voltage 51.2V, grid power -55W, load power 1734W, PV Power 0W 2026-08-14 23:30:02.127447: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:30:02.127537: Inverter 0 scheduled charge enable is False 2026-08-14 23:30:02.127565: Inverter 0 charge windows currently [] 2026-08-14 23:30:02.127590: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:30:02.127697: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:30:02.127732: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:30:02.127768: Inverter 0 scheduled discharge enable is False 2026-08-14 23:30:02.127920: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:30:02.127960: Inverter 0 discharge windows currently [] 2026-08-14 23:30:02.127983: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:30:02.128005: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:30:02.128023: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:30:02.196989: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 23:30:02.197147: Plan was last updated on 2026-08-14 23:25:00+01:00 and is now 5.0 minutes old 2026-08-14 23:30:02.197381: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 23:30:02.197424: Best export window [ ] 2026-08-14 23:30:02.198274: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:30:02.201651: Load divergence over 8.0 hours mean 445.78W, min 290.4W, max 553.2W, std dev 47.69W, divergence 5.35% 2026-08-14 23:30:02.221191: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:30:02.221324: LoadML is_calculating False 2026-08-14 23:30:02.221393: Creating pool of 12 processes to match your CPU count 2026-08-14 23:30:02.356650: predict base end_record 08-16 13:05:00, final soc 1.12kWh, metric 1389.26p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 49.13kWh, PV 0.0kWh 2026-08-14 23:30:02.485399: Battery has 1.17 hours left - now at 2.52kWh 2026-08-14 23:30:02.534286: predict base10 end_record 08-16 13:05:00, final soc 1.12kWh, metric 1417.16p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 50.25kWh, PV 0.0kWh 2026-08-14 23:30:02.616782: predict best10 end_record 08-16 13:05:00, final soc 1.44kWh, metric 1291.31p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 50.25kWh, PV 0.0kWh 2026-08-14 23:30:02.700980: predict best end_record 08-16 13:05:00, final soc 1.51kWh, metric 1266.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 49.13kWh, PV 0.0kWh 2026-08-14 23:30:02.701114: Saving plan best values to HA entities 2026-08-14 23:30:04.104628: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:30:04.112554: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 23:30:04.679084: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.95kWh, house 9.54kWh, export 0.0kWh, metric 1266.09p, metric10 1291.31p 2026-08-14 23:30:05.402500: Marginal costs baseline metric (no standing charge): 1166.1218 2026-08-14 23:30:05.643797: Marginal energy costs matrix computed: min=16.23 max=28.69 2026-08-14 23:30:06.620263: Rate array import [{'start': 1410, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3665, 'rate': 'cheap', 'range': '(15.4p - 23.6p)'}] export [{'start': 1410, 'end': 3665, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:30:06.622815: - Your estimated bill for today is £7.38 and tomorrow is £4.37 2026-08-14 23:30:06.622929: - Import rates are expensive (24.6p - 29.1p) for the next 7 and a half hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:30:06.622957: - The battery is currently at 16% and is in eco mode for the next 13 hours. 2026-08-14 23:30:06.622977: - For the next 48 hours there will be no solar generation. 2026-08-14 23:30:06.622994: - You will run out of battery in 1 and a quarter hours. 2026-08-14 23:30:06.623011: - Your next charge slot will be in 13 hours where import rates will be cheap (15.4p). 2026-08-14 23:30:06.623028: 2026-08-14 23:30:07.252644: Plan calculation took 5.06 seconds 2026-08-14 23:30:07.257324: No high rate period found 2026-08-14 23:30:08.150642: Import threshold used for optimisation was 22.73p 2026-08-14 23:30:08.209082: Low import rate windows [0: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 1: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 2: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 3: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 4: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 5: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 6: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 7: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 8: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 9: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 10: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 11: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 12: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 13: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 14: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 15: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 16: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 17: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 18: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 19: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 20: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 21: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 22: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 23: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 24: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 25: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 26: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 27: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 28: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 29: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 30: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 31: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 32: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 33: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 34: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 35: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 36: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 37: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 38: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 39: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 40: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 41: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 42: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 43: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 44: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 45: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 46: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 47: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 48: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 49: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 50: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 51: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 52: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 53: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 54: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 55: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 56: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 57: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 58: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 59: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 60: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 61: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 62: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 63: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 64: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 65: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 66: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 67: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 68: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 69: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 70: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 71: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 72: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 73: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 74: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 75: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 76: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 77: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 78: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 79: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 80: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 81: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 82: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 83: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 84: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 85: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 86: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 87: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 88: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 89: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 90: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 91: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 92: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 93: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8] 2026-08-14 23:30:08.217660: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 16%, target 100% 2026-08-14 23:30:08.217895: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:30:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:30:08.218073: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:30:08.218553: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:30:08.218701: No export window planned 2026-08-14 23:30:08.218927: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:30:08.218991: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:30:08.219244: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:30:08.219538: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:30:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:30:08.219675: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:30:08.219771: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:30:08.220012: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:30:08.220099: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:30:08.220194: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:30:08.220258: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:30:08.220297: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:30:08.220325: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:30:08.220349: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:30:08.220424: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:30:08.220458: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:30:08.220482: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:30:08.220505: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:30:08.220528: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:30:08.220552: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:30:08.220575: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:30:08.220596: Inverter 0 count register writes 0 2026-08-14 23:30:08.253463: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 23:30:08.261327: Total inverter register writes now 815 2026-08-14 23:30:08.296085: Info: Completed run status Demand 2026-08-14 23:30:08.304998: Info: record_status Demand 2026-08-14 23:30:08.315944: Saved current settings to /config/predbat_config.json 2026-08-14 23:30:08.316393: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 23:30:42.423947: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:30:42.424207: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:30:42.424258: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:30:42.424454: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:30:42.424515: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:30:42.424552: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:30:42.424575: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:32:56.664681: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:32:56.665003: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:32:56.665079: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:32:56.665218: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:32:56.665309: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:32:56.665331: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:32:56.665349: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:34:56.883518: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:34:56.883775: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:34:56.883831: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:34:56.883970: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:34:56.884011: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:34:56.884032: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:34:56.884049: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:35:00.965501: --------------- PredBat - update at 2026-08-14 23:35:00+01:00 with clock skew 0 minutes, minutes now 1415 2026-08-14 23:35:00.966361: Saved current settings to /config/predbat_config.json 2026-08-14 23:35:00.966526: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 95.0 minutes 2026-08-14 23:35:00.966603: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 23:35:00.966696: Autoupdate: Currently up to date 2026-08-14 23:35:00.985486: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 23:35:00.985595: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 23:35:00.985731: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 23:35:00.986191: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 23:35:00.986293: Predbat mode is set to Control charge & discharge 2026-08-14 23:35:01.150293: Found 21602 load_today datapoints going back 28 days 2026-08-14 23:35:01.150427: Using load_power data to fill gaps in load_today data 2026-08-14 23:35:01.970555: Processing 721 30-minute periods for power integration 2026-08-14 23:35:02.178819: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 23:35:02.178953: Car charging hold False, threshold 6.0kWh 2026-08-14 23:35:02.179000: Current data so far today: load 25.6kWh, import 29.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 23:35:02.197916: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 23:35:02.198398: Standing charge is set to 49.98p 2026-08-14 23:35:02.241187: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 23:35:02.241322: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 23:35:02.241567: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 60.0 minutes 2026-08-14 23:35:02.242109: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 60.0 minutes 2026-08-14 23:35:02.250249: Loaded 95 datapoints of futurerate analysis 2026-08-14 23:35:02.411864: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41', '08-15 22:00:00 => 30.26 / 20.87'] 2026-08-14 23:35:02.459294: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 23:35:02.459701: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-14 23:35:02.505012: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 23:35:02.505167: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 23:35:02.506670: High export rate found rates in range 99p to -99p 2026-08-14 23:35:02.617056: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 23:35:02.617209: Car 0 charging is not planned as it is not plugged in 2026-08-14 23:35:02.630398: Battery level now 2.52kWh, -1hr ago 4.02kWh, at midnight 2.43kWh, battery value change in the last hour -17.79p, change today 1.04p, rate_forward 11.83p 2026-08-14 23:35:02.630769: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.7kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 23:35:02.692846: Today's energy total net 29.1kWh, import 29.1kWh, export 0.0kWh, cost 738.29p, import 688.31p, export 0.0p, carbon 0.0kg 2026-08-14 23:35:02.693033: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 23:35:02.794267: Using weighted-bucket historical load forecast over 14 days 2026-08-14 23:35:02.827632: Today's load divergence 145.76%, in-day adjustment 143.53%, damping 0.95x, yesterday 146.81% today 143.47% blend 1.74% 2026-08-14 23:35:02.827717: Today's predicted so far 13.78kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 13.78kWh forecast extra. 2026-08-14 23:35:02.827749: Today's actual load so far 25.67kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 23:35:02.874096: Inverter 0: Type SK Sunsynk 2026-08-14 23:35:02.874192: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:35:02.874762: Reserve min: 7%, battery_min: 7% 2026-08-14 23:35:02.874864: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:35:02.875154: Inverter 0 SoC: 2.52kW 16%, current charge rate 5000W, current discharge rate 5250W, current battery power 1641W, current battery voltage 51.2V, grid power -55W, load power 1699W, PV Power 0W 2026-08-14 23:35:02.875315: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:35:02.875430: Inverter 0 scheduled charge enable is False 2026-08-14 23:35:02.875465: Inverter 0 charge windows currently [] 2026-08-14 23:35:02.875493: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:35:02.875604: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:35:02.875640: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:35:02.875677: Inverter 0 scheduled discharge enable is False 2026-08-14 23:35:02.875821: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:35:02.875861: Inverter 0 discharge windows currently [] 2026-08-14 23:35:02.875883: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:35:02.875902: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:35:02.875919: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:35:02.934194: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 23:35:02.934299: Plan was last updated on 2026-08-14 23:25:00+01:00 and is now 10.0 minutes old 2026-08-14 23:35:02.934532: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 23:35:02.934575: Best export window [ ] 2026-08-14 23:35:02.935444: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:35:02.938590: Load divergence over 8.0 hours mean 441.34W, min 269.4W, max 554.4W, std dev 68.52W, divergence 7.76% 2026-08-14 23:35:02.957874: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:35:02.957972: LoadML is_calculating False 2026-08-14 23:35:02.958038: Creating pool of 12 processes to match your CPU count 2026-08-14 23:35:03.084162: predict base end_record 08-16 13:10:00, final soc 1.12kWh, metric 1385.98p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 49.19kWh, PV 0.0kWh 2026-08-14 23:35:03.233216: Battery has 1.33 hours left - now at 2.52kWh 2026-08-14 23:35:03.277190: predict base10 end_record 08-16 13:10:00, final soc 1.12kWh, metric 1413.76p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 50.31kWh, PV 0.0kWh 2026-08-14 23:35:03.355107: predict best10 end_record 08-16 13:10:00, final soc 1.77kWh, metric 1293.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 50.31kWh, PV 0.0kWh 2026-08-14 23:35:03.438293: predict best end_record 08-16 13:10:00, final soc 1.9kWh, metric 1269.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 49.19kWh, PV 0.0kWh 2026-08-14 23:35:03.438384: Saving plan best values to HA entities 2026-08-14 23:35:03.602065: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:35:03.606999: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 23:35:03.611960: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 15.43kWh, house 9.38kWh, export 0.0kWh, metric 1269.32p, metric10 1293.33p 2026-08-14 23:35:03.679290: Marginal costs baseline metric (no standing charge): 1169.3494 2026-08-14 23:35:03.911193: Marginal energy costs matrix computed: min=16.3 max=28.49 2026-08-14 23:35:03.981401: Rate array import [{'start': 1415, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3670, 'rate': 'cheap', 'range': '(15.4p - 23.6p)'}] export [{'start': 1415, 'end': 3670, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:35:03.982068: - Your estimated bill for today is £7.38 and tomorrow is £4.33 2026-08-14 23:35:03.982106: - Import rates are expensive (24.6p - 29.1p) for the next 7 and a half hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:35:03.982125: - The battery is currently at 16% and is in eco mode for the next 13 hours. 2026-08-14 23:35:03.982139: - For the next 48 hours there will be no solar generation. 2026-08-14 23:35:03.982153: - You will run out of battery in 1 and a quarter hours. 2026-08-14 23:35:03.982167: - Your next charge slot will be in 13 hours where import rates will be cheap (15.4p). 2026-08-14 23:35:03.982181: 2026-08-14 23:35:04.041073: Plan calculation took 1.11 seconds 2026-08-14 23:35:04.044886: No high rate period found 2026-08-14 23:35:04.105320: Import threshold used for optimisation was 22.73p 2026-08-14 23:35:04.174803: Low import rate windows [0: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 1: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 2: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 3: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 4: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 5: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 6: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 7: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 8: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 9: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 10: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 11: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 12: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 13: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 14: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 15: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 16: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 17: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 18: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 19: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 20: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 21: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 22: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 23: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 24: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 25: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 26: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 27: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 28: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 29: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 30: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 31: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 32: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 33: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 34: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 35: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 36: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 37: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 38: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 39: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 40: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 41: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 42: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 43: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 44: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 45: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 46: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 47: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 48: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 49: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 50: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 51: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 52: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 53: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 54: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 55: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 56: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 57: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 58: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 59: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 60: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 61: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 62: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 63: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 64: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 65: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 66: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 67: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 68: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 69: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 70: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 71: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 72: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 73: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 74: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 75: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 76: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 77: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 78: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 79: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 80: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 81: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 82: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 83: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 84: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 85: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 86: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 87: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 88: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 89: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 90: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 91: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 92: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 93: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 94: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09] 2026-08-14 23:35:04.183308: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 16%, target 100% 2026-08-14 23:35:04.183447: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:35:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:35:04.183569: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:35:04.183860: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:35:04.183951: No export window planned 2026-08-14 23:35:04.184062: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:35:04.184097: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:35:04.184253: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:35:04.184432: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:35:04.184496: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:35:04.184560: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:35:04.184656: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:35:04.184701: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:35:04.184730: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:35:04.184755: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:35:04.184784: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:35:04.184824: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:35:04.184857: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:35:04.184921: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:35:04.185002: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:35:04.185078: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:35:04.185107: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:35:04.185131: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:35:04.185154: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:35:04.185177: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:35:04.185203: Inverter 0 count register writes 0 2026-08-14 23:35:04.205811: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 23:35:04.205999: Recompute is saving previous plan... 2026-08-14 23:35:04.209199: Best charge window [ 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0% ] 2026-08-14 23:35:04.209289: Best export window [ ] 2026-08-14 23:35:04.210232: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:35:04.213875: Load divergence over 8.0 hours mean 441.34W, min 269.4W, max 554.4W, std dev 68.52W, divergence 7.76% 2026-08-14 23:35:04.234924: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:35:04.235060: LoadML is_calculating False 2026-08-14 23:35:04.235130: Creating pool of 12 processes to match your CPU count 2026-08-14 23:35:04.328172: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 23:35:04.330693: Optimise levels pass started at 2026-08-14 23:35:04 2026-08-14 23:35:04.330766: Optimise all windows, total charge 94 export 1 2026-08-14 23:35:05.392160: >> Region optimisation pass width 960 gives best_metric 1250.36p, best_cost 1260.11p, best_cycle 38.05kWh, best_import 31.24kWh 2026-08-14 23:35:05.870435: >> Region optimisation pass width 480 gives best_metric 1250.36p, best_cost 1260.11p, best_cycle 38.05kWh, best_import 31.24kWh 2026-08-14 23:35:06.437643: >> Region optimisation pass width 240 gives best_metric 1250.36p, best_cost 1260.11p, best_cycle 38.05kWh, best_import 31.24kWh 2026-08-14 23:35:07.867819: >> Region optimisation pass width 120 gives best_metric 1247.98p, best_cost 1258.75p, best_cycle 35.71kWh, best_import 31.08kWh 2026-08-14 23:35:07.868279: Calculated end_record as 08-16 13:00:00 based on best_price 15.87p, next_charge_start 08-15 13:00:00, max_windows 74 2026-08-14 23:35:07.868367: Optimise levels pass ended at 2026-08-14 23:35:07, duration 3.5 seconds tried 351 combinations 2026-08-14 23:35:07.868441: Set best_price_charge_level 17.0p, best_price_export_level 0p, best_price_charge 15.87p, best_cost_export 0p, best_metric 1247.98p, best_keep 0kWh, best_cycle 35.71kWh, best_carbon 0kg, best_import 31.08kWh 2026-08-14 23:35:07.885715: Starting detailed optimisation end_record 08-16 13:00:00, best_price_charge 15.87p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6.0, 6.0, 16.0, 16.0, 16.0, 13.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 23:35:13.253939: Tweak plan optimisation started metric 1145.16p, cost 1154.52p 2026-08-14 23:35:13.557093: Tweak optimisation finished metric 1145.16p, cost 1154.52p, metric_keep 0kWh, cycle 25.13kWh, carbon 0kg, import 23.86kWh, changed 8 window(s) 2026-08-14 23:35:13.578461: Swap charge optimisation started metric 1145.16p, cost 1154.52p, min_improvement_swap 0.1p 2026-08-14 23:35:19.146071: Swap charge optimisation finished metric 1145.16p, cost 1154.52p 2026-08-14 23:35:19.241995: Pruned 2 dead plan slot(s) in 9 trial(s), nominal metric 1141.27p -> 1141.27p, plan now metric 1145.2p, cost 1154.52p, cycle 25.13kWh, import 23.86kWh 2026-08-14 23:35:19.251973: Raw charge windows [ 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100% ] reserve 1.12 2026-08-14 23:35:19.252521: Unclipped charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:00:00 @ 29.2p 100% ] reserve 1.12 2026-08-14 23:35:19.252767: Unfiltered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:00:00 @ 29.2p 100% ] reserve 1.12 2026-08-14 23:35:19.253039: Filtered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:00:00 @ 29.2p 100% ] reserve 1.12 2026-08-14 23:35:19.284865: Previous plan best metric is 1145.28 (cost 1154.66) and new plan best metric is 1145.16 (cost 1154.52) 2026-08-14 23:35:19.285096: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 23:35:19.285258: Plan valid is now true after recompute was False 2026-08-14 23:35:19.310286: predict base end_record 08-16 13:00:00, final soc 1.12kWh, metric 1384.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 49.06kWh, PV 0.0kWh 2026-08-14 23:35:19.411642: Battery has 1.33 hours left - now at 2.52kWh 2026-08-14 23:35:19.453879: predict base10 end_record 08-16 13:00:00, final soc 1.12kWh, metric 1411.78p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 50.18kWh, PV 0.0kWh 2026-08-14 23:35:19.527633: predict best10 end_record 08-16 13:00:00, final soc 1.12kWh, metric 1280.69p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 50.18kWh, PV 0.0kWh 2026-08-14 23:35:19.599078: predict best end_record 08-16 13:00:00, final soc 1.12kWh, metric 1254.63p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 49.06kWh, PV 0.0kWh 2026-08-14 23:35:19.599288: Saving plan best values to HA entities 2026-08-14 23:35:19.752874: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:35:19.757857: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-14 23:35:19.762512: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.47kWh, house 9.38kWh, export 0.0kWh, metric 1254.63p, metric10 1280.69p 2026-08-14 23:35:19.849178: Marginal costs baseline metric (no standing charge): 1154.6602 2026-08-14 23:35:20.152271: Marginal energy costs matrix computed: min=16.3 max=28.49 2026-08-14 23:35:20.247428: Rate array import [{'start': 1415, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3660, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1415, 'end': 3660, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:35:20.248107: - Your estimated bill for today is £7.38 and tomorrow is £4.33 2026-08-14 23:35:20.248146: - Import rates are expensive (24.6p - 29.1p) for the next 7 and a half hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:35:20.248165: - The battery is currently at 16% and is in eco mode for the next 13 hours. 2026-08-14 23:35:20.248179: - For the next 48 hours there will be no solar generation. 2026-08-14 23:35:20.248193: - You will run out of battery in 1 and a quarter hours. 2026-08-14 23:35:20.248206: - Your next charge slot will be in 13 hours where import rates will be cheap (15.4p). 2026-08-14 23:35:20.248220: 2026-08-14 23:35:20.313868: Plan calculation took 16.11 seconds 2026-08-14 23:35:20.314252: Inverter 0: Type SK Sunsynk 2026-08-14 23:35:20.314299: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:35:20.315008: Reserve min: 7%, battery_min: 7% 2026-08-14 23:35:20.315102: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:35:20.315400: Inverter 0 SoC: 2.38kW 15%, current charge rate 5000W, current discharge rate 5250W, current battery power 1640W, current battery voltage 51.2V, grid power -54W, load power 1697W, PV Power 0W 2026-08-14 23:35:20.315638: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:35:20.315748: Inverter 0 scheduled charge enable is False 2026-08-14 23:35:20.315782: Inverter 0 charge windows currently [] 2026-08-14 23:35:20.315849: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:35:20.315972: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:35:20.316009: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:35:20.316046: Inverter 0 scheduled discharge enable is False 2026-08-14 23:35:20.316181: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:35:20.316219: Inverter 0 discharge windows currently [] 2026-08-14 23:35:20.316241: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:35:20.316262: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:35:20.316279: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:35:20.371437: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 15%, target 100% 2026-08-14 23:35:20.371565: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:35:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:35:20.371628: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:35:20.371782: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:35:20.371869: No export window planned 2026-08-14 23:35:20.371967: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:35:20.372015: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:35:20.372144: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:35:20.372284: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:35:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:35:20.372329: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:35:20.372371: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:35:20.372453: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:35:20.372492: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:35:20.372515: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:35:20.372537: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:35:20.372557: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:35:20.372578: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:35:20.372597: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:35:20.372642: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:35:20.372668: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:35:20.372688: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:35:20.372710: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:35:20.372729: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:35:20.372747: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:35:20.372766: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:35:20.372782: Inverter 0 count register writes 0 2026-08-14 23:35:20.391228: Total inverter register writes now 815 2026-08-14 23:35:20.424440: Info: Completed run status Demand 2026-08-14 23:35:20.431624: Info: record_status Demand 2026-08-14 23:35:20.438280: Saved current settings to /config/predbat_config.json 2026-08-14 23:35:20.438612: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 23:35:56.548912: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:35:56.549348: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:35:56.549467: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:35:56.549769: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:35:56.549853: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:35:56.549891: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:35:56.549919: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:37:56.764239: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:37:56.764482: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:37:56.764552: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:37:56.764726: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:37:56.764797: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:37:56.764819: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:37:56.764837: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:38:48.311324: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-14 23:38:49.338420: Processing 1345 30-minute periods for power integration 2026-08-14 23:38:49.455968: ML Component: Car charging hold False, car energy reported load False 2026-08-14 23:38:49.560078: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 23:38:49.671019: ML Temperature data points: 48986 2026-08-14 23:38:49.948576: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-14 23:38:49.983953: ML Component: Data fetch completed, load data age 56.0 days, 16260 data points 2026-08-14 23:38:49.984108: ML Component: No training needed, model age is 0.52 hours 2026-08-14 23:38:49.984187: ML Component: Generating predictions load data age 56.0 days, 16260 data points 2026-08-14 23:38:50.112108: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.1361 max_dow {0: 0.09899687486626207, 1: 0.10616562486607581, 2: 0.12051249983031302, 3: 0.1227374996352941, 4: 0.1701437503574416, 5: 0.10630000064577906, 6: 0.11264999961592256} 2026-08-14 23:38:50.473431: ML Component: Generated 576 predictions (total 41.94 kWh over 48h) 2026-08-14 23:38:50.507059: ML Component: Prediction cycle completed 2026-08-14 23:38:50.609426: ML Component: Saved 16260 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-14 23:39:56.998095: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:39:56.998398: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:39:56.998473: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:39:56.998830: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:39:56.998926: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:39:56.998983: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:39:56.999060: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:40:00.081548: --------------- PredBat - update at 2026-08-14 23:40:00+01:00 with clock skew 0 minutes, minutes now 1420 2026-08-14 23:40:00.082334: Saved current settings to /config/predbat_config.json 2026-08-14 23:40:00.082504: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 100.0 minutes 2026-08-14 23:40:00.082641: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 23:40:00.082748: Autoupdate: Currently up to date 2026-08-14 23:40:00.112216: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 23:40:00.112388: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 23:40:00.112614: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 23:40:00.113272: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 23:40:00.113442: Predbat mode is set to Control charge & discharge 2026-08-14 23:40:00.325136: Found 21602 load_today datapoints going back 28 days 2026-08-14 23:40:00.325325: Using load_power data to fill gaps in load_today data 2026-08-14 23:40:01.068052: Processing 721 30-minute periods for power integration 2026-08-14 23:40:01.240267: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 23:40:01.240456: Car charging hold False, threshold 6.0kWh 2026-08-14 23:40:01.240580: Current data so far today: load 25.75kWh, import 29.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 23:40:01.262863: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 23:40:01.263405: Standing charge is set to 49.98p 2026-08-14 23:40:01.320179: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 23:40:01.320276: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 23:40:01.320458: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 65.0 minutes 2026-08-14 23:40:01.320821: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 65.0 minutes 2026-08-14 23:40:01.326077: Loaded 95 datapoints of futurerate analysis 2026-08-14 23:40:01.456842: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41', '08-15 22:00:00 => 30.26 / 20.87'] 2026-08-14 23:40:01.494661: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 23:40:01.494989: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-14 23:40:01.533938: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 23:40:01.534112: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 23:40:01.536468: High export rate found rates in range 99p to -99p 2026-08-14 23:40:01.629940: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 23:40:01.630062: Car 0 charging is not planned as it is not plugged in 2026-08-14 23:40:01.643013: Battery level now 2.52kWh, -1hr ago 4.02kWh, at midnight 2.43kWh, battery value change in the last hour -17.79p, change today 1.04p, rate_forward 11.83p 2026-08-14 23:40:01.643325: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.7kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 23:40:01.762144: Today's energy total net 29.1kWh, import 29.1kWh, export 0.0kWh, cost 738.29p, import 688.31p, export 0.0p, carbon 0.0kg 2026-08-14 23:40:01.762299: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 23:40:01.850851: Using weighted-bucket historical load forecast over 14 days 2026-08-14 23:40:01.877574: Today's load divergence 145.86%, in-day adjustment 143.61%, damping 0.95x, yesterday 146.81% today 143.57% blend 1.39% 2026-08-14 23:40:01.877666: Today's predicted so far 13.83kWh with 0.0kWh car/iBoost excluded, 17.18kWh import ignored, and 13.83kWh forecast extra. 2026-08-14 23:40:01.877693: Today's actual load so far 25.77kWh with 0.0kWh car/iBoost excluded, and 17.18kWh import ignored. 2026-08-14 23:40:01.913914: Inverter 0: Type SK Sunsynk 2026-08-14 23:40:01.914000: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:40:01.914544: Reserve min: 7%, battery_min: 7% 2026-08-14 23:40:01.914617: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:40:01.914856: Inverter 0 SoC: 2.24kW 14%, current charge rate 5000W, current discharge rate 5250W, current battery power 1706W, current battery voltage 51.2V, grid power -55W, load power 1766W, PV Power 0W 2026-08-14 23:40:01.914996: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:40:01.915074: Inverter 0 scheduled charge enable is False 2026-08-14 23:40:01.915103: Inverter 0 charge windows currently [] 2026-08-14 23:40:01.915124: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:40:01.915248: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:40:01.915306: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:40:01.915361: Inverter 0 scheduled discharge enable is False 2026-08-14 23:40:01.915526: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:40:01.915562: Inverter 0 discharge windows currently [] 2026-08-14 23:40:01.915589: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:40:01.915610: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:40:01.915632: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:40:01.998556: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 23:40:01.998707: Plan was last updated on 2026-08-14 23:35:00+01:00 and is now 5.0 minutes old 2026-08-14 23:40:01.999061: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 23:40:01.999128: Best export window [ ] 2026-08-14 23:40:01.999942: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:40:02.003267: Load divergence over 8.0 hours mean 437.86W, min 268.2W, max 559.8W, std dev 68.95W, divergence 7.87% 2026-08-14 23:40:02.022932: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:40:02.023067: LoadML is_calculating False 2026-08-14 23:40:02.023140: Creating pool of 12 processes to match your CPU count 2026-08-14 23:40:02.161563: predict base end_record 08-16 13:05:00, final soc 1.12kWh, metric 1388.98p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 49.16kWh, PV 0.0kWh 2026-08-14 23:40:02.316441: Battery has 1.0 hours left - now at 2.24kWh 2026-08-14 23:40:02.362812: predict base10 end_record 08-16 13:05:00, final soc 1.12kWh, metric 1416.58p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 50.27kWh, PV 0.0kWh 2026-08-14 23:40:02.434044: predict best10 end_record 08-16 13:05:00, final soc 1.44kWh, metric 1290.79p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 50.27kWh, PV 0.0kWh 2026-08-14 23:40:02.515051: predict best end_record 08-16 13:05:00, final soc 1.51kWh, metric 1265.85p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 49.16kWh, PV 0.0kWh 2026-08-14 23:40:02.515142: Saving plan best values to HA entities 2026-08-14 23:40:02.715133: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:40:02.721004: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 23:40:02.727093: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.96kWh, house 9.52kWh, export 0.0kWh, metric 1265.85p, metric10 1290.79p 2026-08-14 23:40:02.806136: Marginal costs baseline metric (no standing charge): 1165.8881 2026-08-14 23:40:03.104853: Marginal energy costs matrix computed: min=16.37 max=28.37 2026-08-14 23:40:03.186786: Rate array import [{'start': 1420, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3665, 'rate': 'cheap', 'range': '(15.4p - 23.6p)'}] export [{'start': 1420, 'end': 3665, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:40:03.187652: - Your estimated bill for today is £7.38 and tomorrow is £4.37 2026-08-14 23:40:03.187707: - Import rates are expensive (24.6p - 29.1p) for the next 7 and a quarter hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:40:03.187744: - The battery is currently at 14% and is in eco mode for the next 13 hours. 2026-08-14 23:40:03.187797: - For the next 48 hours there will be no solar generation. 2026-08-14 23:40:03.187830: - You will run out of battery in 1 hour. 2026-08-14 23:40:03.187849: - Your next charge slot will be in 13 hours where import rates will be cheap (15.4p). 2026-08-14 23:40:03.187870: 2026-08-14 23:40:03.262563: Plan calculation took 1.26 seconds 2026-08-14 23:40:03.266582: No high rate period found 2026-08-14 23:40:03.323484: Import threshold used for optimisation was 27.18p 2026-08-14 23:40:03.372828: Low import rate windows [0: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 1: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 2: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 3: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 4: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 5: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 6: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 7: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 8: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 9: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 10: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 11: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 12: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 13: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 14: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 15: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 16: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 17: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 18: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 19: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 20: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 21: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 22: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 23: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 24: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 25: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 26: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 27: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 28: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 29: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 30: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 31: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 32: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 33: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 34: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 35: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 36: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 37: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 38: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 39: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 40: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 41: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 42: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 43: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 44: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 45: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 46: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 47: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 48: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 49: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 50: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 51: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 52: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 53: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 54: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 55: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 56: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 57: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 58: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 59: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 60: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 61: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 62: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 63: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 64: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 65: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 66: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 67: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 68: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 69: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 70: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 71: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 72: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 73: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 74: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 75: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 76: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 77: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 78: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 79: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 80: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 81: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 82: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 83: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 84: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 85: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 86: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 87: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 88: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 89: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 90: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 91: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 92: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 93: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 94: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09] 2026-08-14 23:40:03.380631: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 14%, target 100% 2026-08-14 23:40:03.380792: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:40:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:40:03.380908: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:40:03.381257: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:40:03.381354: No export window planned 2026-08-14 23:40:03.381463: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:40:03.381500: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:40:03.381634: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:40:03.381827: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:40:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:40:03.381917: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:40:03.381979: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:40:03.382068: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:40:03.382112: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:40:03.382145: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:40:03.382171: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:40:03.382202: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:40:03.382226: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:40:03.382250: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:40:03.382316: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:40:03.382352: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:40:03.382377: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:40:03.382409: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:40:03.382433: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:40:03.382460: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:40:03.382484: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:40:03.382507: Inverter 0 count register writes 0 2026-08-14 23:40:03.396460: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 23:40:03.401264: Total inverter register writes now 815 2026-08-14 23:40:03.431097: Info: Completed run status Demand 2026-08-14 23:40:03.438992: Info: record_status Demand 2026-08-14 23:40:03.446188: Saved current settings to /config/predbat_config.json 2026-08-14 23:40:03.446532: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 23:40:41.548884: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:40:41.549252: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:40:41.549306: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:40:41.549457: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:40:41.549530: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:40:41.549551: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:40:41.549569: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:42:41.768053: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:42:41.768304: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:42:41.768340: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:42:41.768485: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:42:41.768560: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:42:41.768583: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:42:41.768601: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:44:41.994798: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:44:41.995056: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:44:41.995122: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:44:41.995295: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:44:41.995326: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:44:41.995346: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:44:41.995366: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:45:00.103151: --------------- PredBat - update at 2026-08-14 23:45:00+01:00 with clock skew 0 minutes, minutes now 1425 2026-08-14 23:45:00.104049: Saved current settings to /config/predbat_config.json 2026-08-14 23:45:00.104221: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 105.0 minutes 2026-08-14 23:45:00.104366: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 23:45:00.104517: Autoupdate: Currently up to date 2026-08-14 23:45:00.123316: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 23:45:00.123493: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 23:45:00.123655: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 23:45:00.124163: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 23:45:00.124265: Predbat mode is set to Control charge & discharge 2026-08-14 23:45:00.315350: Found 21602 load_today datapoints going back 28 days 2026-08-14 23:45:00.315512: Using load_power data to fill gaps in load_today data 2026-08-14 23:45:01.067969: Processing 721 30-minute periods for power integration 2026-08-14 23:45:01.252272: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 23:45:01.252400: Car charging hold False, threshold 6.0kWh 2026-08-14 23:45:01.252438: Current data so far today: load 25.9kWh, import 29.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 23:45:01.267466: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 23:45:01.267928: Standing charge is set to 49.98p 2026-08-14 23:45:01.311305: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 23:45:01.311413: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 23:45:01.311636: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 70.0 minutes 2026-08-14 23:45:01.312078: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 70.0 minutes 2026-08-14 23:45:01.317032: Loaded 95 datapoints of futurerate analysis 2026-08-14 23:45:01.441418: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41', '08-15 22:00:00 => 30.26 / 20.87'] 2026-08-14 23:45:01.479904: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 23:45:01.480284: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-14 23:45:01.523111: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 23:45:01.523245: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 23:45:01.524719: High export rate found rates in range 99p to -99p 2026-08-14 23:45:01.633752: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 23:45:01.634226: Car 0 charging is not planned as it is not plugged in 2026-08-14 23:45:01.647355: Battery level now 2.24kWh, -1hr ago 3.75kWh, at midnight 2.43kWh, battery value change in the last hour -17.88p, change today -2.27p, rate_forward 11.83p 2026-08-14 23:45:01.647664: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.7kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 23:45:01.706288: Today's energy total net 29.1kWh, import 29.1kWh, export 0.0kWh, cost 738.29p, import 688.31p, export 0.0p, carbon 0.0kg 2026-08-14 23:45:01.706447: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 23:45:01.791589: Using weighted-bucket historical load forecast over 14 days 2026-08-14 23:45:01.823149: Today's load divergence 145.93%, in-day adjustment 143.66%, damping 0.95x, yesterday 146.81% today 143.63% blend 1.04% 2026-08-14 23:45:01.823269: Today's predicted so far 13.88kWh with 0.0kWh car/iBoost excluded, 17.19kWh import ignored, and 13.88kWh forecast extra. 2026-08-14 23:45:01.823305: Today's actual load so far 25.86kWh with 0.0kWh car/iBoost excluded, and 17.19kWh import ignored. 2026-08-14 23:45:01.860396: Inverter 0: Type SK Sunsynk 2026-08-14 23:45:01.860481: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:45:01.861000: Reserve min: 7%, battery_min: 7% 2026-08-14 23:45:01.861083: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:45:01.861311: Inverter 0 SoC: 2.24kW 14%, current charge rate 5000W, current discharge rate 5250W, current battery power 1684W, current battery voltage 51.2V, grid power -55W, load power 1741W, PV Power 0W 2026-08-14 23:45:01.861483: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:45:01.861624: Inverter 0 scheduled charge enable is False 2026-08-14 23:45:01.861662: Inverter 0 charge windows currently [] 2026-08-14 23:45:01.861701: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:45:01.861859: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:45:01.861899: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:45:01.861947: Inverter 0 scheduled discharge enable is False 2026-08-14 23:45:01.862099: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:45:01.862137: Inverter 0 discharge windows currently [] 2026-08-14 23:45:01.862164: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:45:01.862193: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:45:01.862211: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:45:01.930198: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 23:45:01.930299: Plan was last updated on 2026-08-14 23:35:00+01:00 and is now 10.0 minutes old 2026-08-14 23:45:01.930560: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 23:45:01.930603: Best export window [ ] 2026-08-14 23:45:01.931360: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:45:01.933931: Load divergence over 8.0 hours mean 434.19W, min 226.2W, max 580.8W, std dev 77.83W, divergence 8.96% 2026-08-14 23:45:01.949507: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:45:01.949624: LoadML is_calculating False 2026-08-14 23:45:01.949698: Creating pool of 12 processes to match your CPU count 2026-08-14 23:45:02.066796: predict base end_record 08-16 13:10:00, final soc 1.12kWh, metric 1386.48p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 49.25kWh, PV 0.0kWh 2026-08-14 23:45:02.198296: Battery has 1.08 hours left - now at 2.24kWh 2026-08-14 23:45:02.248413: predict base10 end_record 08-16 13:10:00, final soc 1.12kWh, metric 1413.98p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 50.36kWh, PV 0.0kWh 2026-08-14 23:45:02.338070: predict best10 end_record 08-16 13:10:00, final soc 1.77kWh, metric 1293.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 50.36kWh, PV 0.0kWh 2026-08-14 23:45:02.427982: predict best end_record 08-16 13:10:00, final soc 1.9kWh, metric 1269.82p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 49.25kWh, PV 0.0kWh 2026-08-14 23:45:02.428080: Saving plan best values to HA entities 2026-08-14 23:45:02.581140: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:45:02.585977: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 23:45:02.590781: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 15.43kWh, house 9.4kWh, export 0.0kWh, metric 1269.82p, metric10 1293.54p 2026-08-14 23:45:02.664043: Marginal costs baseline metric (no standing charge): 1169.855 2026-08-14 23:45:02.923114: Marginal energy costs matrix computed: min=16.45 max=28.19 2026-08-14 23:45:03.031090: Rate array import [{'start': 1425, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3670, 'rate': 'cheap', 'range': '(15.4p - 23.6p)'}] export [{'start': 1425, 'end': 3670, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:45:03.031957: - Your estimated bill for today is £7.38 and tomorrow is £4.34 2026-08-14 23:45:03.032012: - Import rates are expensive (24.6p - 29.1p) for the next 7 and a quarter hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:45:03.032039: - The battery is currently at 14% and is in eco mode for the next 13 hours. 2026-08-14 23:45:03.032068: - For the next 48 hours there will be no solar generation. 2026-08-14 23:45:03.032100: - You will run out of battery in 1 hour. 2026-08-14 23:45:03.032118: - Your next charge slot will be in 13 hours where import rates will be cheap (15.4p). 2026-08-14 23:45:03.032139: 2026-08-14 23:45:03.088849: Plan calculation took 1.16 seconds 2026-08-14 23:45:03.092739: No high rate period found 2026-08-14 23:45:03.140850: Import threshold used for optimisation was 27.18p 2026-08-14 23:45:03.192205: Low import rate windows [0: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 1: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 2: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 3: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 4: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 5: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 6: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 7: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 8: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 9: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 10: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 11: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 12: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 13: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 14: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 15: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 16: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 17: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 18: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 19: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 20: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 21: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 22: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 23: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 24: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 25: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 26: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 27: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 28: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 29: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 30: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 31: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 32: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 33: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 34: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 35: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 36: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 37: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 38: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 39: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 40: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 41: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 42: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 43: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 44: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 45: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 46: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 47: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 48: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 49: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 50: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 51: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 52: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 53: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 54: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 55: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 56: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 57: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 58: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 59: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 60: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 61: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 62: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 63: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 64: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 65: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 66: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 67: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 68: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 69: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 70: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 71: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 72: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 73: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 74: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 75: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 76: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 77: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 78: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 79: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 80: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 81: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 82: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 83: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 84: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 85: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 86: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 87: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 88: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 89: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 90: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 91: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 92: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 93: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 94: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09] 2026-08-14 23:45:03.197912: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 14%, target 100% 2026-08-14 23:45:03.198014: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:45:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:45:03.198114: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:45:03.198385: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:45:03.198461: No export window planned 2026-08-14 23:45:03.198558: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:45:03.198583: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:45:03.198689: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:45:03.198850: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:45:03.198925: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:45:03.198974: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:45:03.199053: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:45:03.199084: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:45:03.199105: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:45:03.199127: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:45:03.199147: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:45:03.199170: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:45:03.199190: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:45:03.199253: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:45:03.199282: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:45:03.199332: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:45:03.199353: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:45:03.199372: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:45:03.199394: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:45:03.199413: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:45:03.199432: Inverter 0 count register writes 0 2026-08-14 23:45:03.213652: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 23:45:03.213835: Recompute is saving previous plan... 2026-08-14 23:45:03.217056: Best charge window [ 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0% ] 2026-08-14 23:45:03.217147: Best export window [ ] 2026-08-14 23:45:03.218004: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:45:03.221017: Load divergence over 8.0 hours mean 434.19W, min 226.2W, max 580.8W, std dev 77.83W, divergence 8.96% 2026-08-14 23:45:03.237373: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:45:03.237459: LoadML is_calculating False 2026-08-14 23:45:03.237513: Creating pool of 12 processes to match your CPU count 2026-08-14 23:45:03.318591: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 23:45:03.320701: Optimise levels pass started at 2026-08-14 23:45:03 2026-08-14 23:45:03.320787: Optimise all windows, total charge 94 export 1 2026-08-14 23:45:04.406939: >> Region optimisation pass width 960 gives best_metric 1253.95p, best_cost 1261.01p, best_cycle 37.97kWh, best_import 31.28kWh 2026-08-14 23:45:04.813544: >> Region optimisation pass width 480 gives best_metric 1253.95p, best_cost 1261.01p, best_cycle 37.97kWh, best_import 31.28kWh 2026-08-14 23:45:05.358018: >> Region optimisation pass width 240 gives best_metric 1253.95p, best_cost 1261.01p, best_cycle 37.97kWh, best_import 31.28kWh 2026-08-14 23:45:06.697680: >> Region optimisation pass width 120 gives best_metric 1251.57p, best_cost 1259.64p, best_cycle 35.62kWh, best_import 31.12kWh 2026-08-14 23:45:06.698298: Calculated end_record as 08-16 13:00:00 based on best_price 15.87p, next_charge_start 08-15 13:00:00, max_windows 74 2026-08-14 23:45:06.698401: Optimise levels pass ended at 2026-08-14 23:45:06, duration 3.4 seconds tried 351 combinations 2026-08-14 23:45:06.698477: Set best_price_charge_level 17.0p, best_price_export_level 0p, best_price_charge 15.87p, best_cost_export 0p, best_metric 1251.57p, best_keep 0kWh, best_cycle 35.62kWh, best_carbon 0kg, best_import 31.12kWh 2026-08-14 23:45:06.717268: Starting detailed optimisation end_record 08-16 13:00:00, best_price_charge 15.87p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6.0, 6.0, 16.0, 16.0, 16.0, 13.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 23:45:11.672023: Tweak plan optimisation started metric 1145.8p, cost 1155.21p 2026-08-14 23:45:11.927433: Tweak optimisation finished metric 1145.8p, cost 1155.21p, metric_keep 0kWh, cycle 24.86kWh, carbon 0kg, import 23.88kWh, changed 8 window(s) 2026-08-14 23:45:11.949728: Swap charge optimisation started metric 1145.8p, cost 1155.21p, min_improvement_swap 0.1p 2026-08-14 23:45:17.454597: Swap charge optimisation finished metric 1145.8p, cost 1155.21p 2026-08-14 23:45:17.539213: Pruned 2 dead plan slot(s) in 8 trial(s), nominal metric 1141.97p -> 1141.97p, plan now metric 1145.83p, cost 1155.21p, cycle 24.86kWh, import 23.88kWh 2026-08-14 23:45:17.549351: Raw charge windows [ 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100% ] reserve 1.12 2026-08-14 23:45:17.549801: Unclipped charge windows [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:00:00 @ 29.2p 100% ] reserve 1.12 2026-08-14 23:45:17.549995: Unfiltered charge windows [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:00:00 @ 29.2p 100% ] reserve 1.12 2026-08-14 23:45:17.550137: Filtered charge windows [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:00:00 @ 29.2p 100% ] reserve 1.12 2026-08-14 23:45:17.582551: Previous plan best metric is 1145.8 (cost 1155.21) and new plan best metric is 1145.8 (cost 1155.21) 2026-08-14 23:45:17.582788: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 23:45:17.582925: Plan valid is now true after recompute was False 2026-08-14 23:45:17.606679: predict base end_record 08-16 13:00:00, final soc 1.12kWh, metric 1384.64p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 49.13kWh, PV 0.0kWh 2026-08-14 23:45:17.701916: Battery has 1.08 hours left - now at 2.24kWh 2026-08-14 23:45:17.745176: predict base10 end_record 08-16 13:00:00, final soc 1.12kWh, metric 1412.06p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 50.23kWh, PV 0.0kWh 2026-08-14 23:45:17.828156: predict best10 end_record 08-16 13:00:00, final soc 1.12kWh, metric 1280.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:45:00, load 50.23kWh, PV 0.0kWh 2026-08-14 23:45:17.898091: predict best end_record 08-16 13:00:00, final soc 1.12kWh, metric 1255.18p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:50:00, load 49.13kWh, PV 0.0kWh 2026-08-14 23:45:17.898170: Saving plan best values to HA entities 2026-08-14 23:45:18.040319: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:45:18.057084: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 23:45:18.061985: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.48kWh, house 9.4kWh, export 0.0kWh, metric 1255.18p, metric10 1280.95p 2026-08-14 23:45:18.125872: Marginal costs baseline metric (no standing charge): 1155.2149 2026-08-14 23:45:18.349258: Marginal energy costs matrix computed: min=16.45 max=28.19 2026-08-14 23:45:18.417091: Rate array import [{'start': 1425, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3660, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1425, 'end': 3660, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:45:18.417709: - Your estimated bill for today is £7.38 and tomorrow is £4.34 2026-08-14 23:45:18.417748: - Import rates are expensive (24.6p - 29.1p) for the next 7 and a quarter hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:45:18.417780: - The battery is currently at 14% and is in eco mode for the next 13 hours. 2026-08-14 23:45:18.417798: - For the next 48 hours there will be no solar generation. 2026-08-14 23:45:18.417817: - You will run out of battery in 1 hour. 2026-08-14 23:45:18.417831: - Your next charge slot will be in 13 hours where import rates will be cheap (15.4p). 2026-08-14 23:45:18.417845: 2026-08-14 23:45:18.472780: Plan calculation took 15.26 seconds 2026-08-14 23:45:18.473213: Inverter 0: Type SK Sunsynk 2026-08-14 23:45:18.473278: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:45:18.473848: Reserve min: 7%, battery_min: 7% 2026-08-14 23:45:18.473923: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:45:18.474229: Inverter 0 SoC: 2.09kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power 1679W, current battery voltage 51.2V, grid power -54W, load power 1736W, PV Power 0W 2026-08-14 23:45:18.474433: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:45:18.474527: Inverter 0 scheduled charge enable is False 2026-08-14 23:45:18.474561: Inverter 0 charge windows currently [] 2026-08-14 23:45:18.474587: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:45:18.474678: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:45:18.474708: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:45:18.474738: Inverter 0 scheduled discharge enable is False 2026-08-14 23:45:18.474859: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:45:18.474893: Inverter 0 discharge windows currently [] 2026-08-14 23:45:18.474913: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:45:18.474928: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:45:18.474944: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:45:18.525963: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-14 23:45:18.526125: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:45:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:45:18.526195: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:45:18.526390: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:45:18.526476: No export window planned 2026-08-14 23:45:18.526579: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:45:18.526609: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:45:18.526731: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:45:18.526914: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:45:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:45:18.526961: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:45:18.527004: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:45:18.527082: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:45:18.527116: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:45:18.527139: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:45:18.527164: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:45:18.527185: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:45:18.527204: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:45:18.527231: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:45:18.527276: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:45:18.527303: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:45:18.527323: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:45:18.527342: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:45:18.527379: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:45:18.527415: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:45:18.527445: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:45:18.527463: Inverter 0 count register writes 0 2026-08-14 23:45:18.546524: Total inverter register writes now 815 2026-08-14 23:45:18.576554: Info: Completed run status Demand 2026-08-14 23:45:18.582247: Info: record_status Demand 2026-08-14 23:45:18.588484: Saved current settings to /config/predbat_config.json 2026-08-14 23:45:18.588815: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 23:45:56.692996: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:45:56.693351: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:45:56.693446: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:45:56.693690: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:45:56.693750: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:45:56.693821: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:45:56.693860: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:47:56.913389: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:47:56.913637: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:47:56.913679: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:47:56.913996: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:47:56.914085: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:47:56.914116: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:47:56.914159: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:49:57.139536: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:49:57.139870: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:49:57.139911: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:49:57.140080: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:49:57.140126: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:49:57.140147: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:49:57.140165: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:50:00.219321: --------------- PredBat - update at 2026-08-14 23:50:00+01:00 with clock skew 0 minutes, minutes now 1430 2026-08-14 23:50:00.220211: Saved current settings to /config/predbat_config.json 2026-08-14 23:50:00.220339: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 110.0 minutes 2026-08-14 23:50:00.220449: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 23:50:00.220535: Autoupdate: Currently up to date 2026-08-14 23:50:00.242260: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 23:50:00.242479: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 23:50:00.242682: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 23:50:00.243279: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 23:50:00.243703: Predbat mode is set to Control charge & discharge 2026-08-14 23:50:00.414226: Found 21602 load_today datapoints going back 28 days 2026-08-14 23:50:00.414821: Using load_power data to fill gaps in load_today data 2026-08-14 23:50:01.242478: Processing 721 30-minute periods for power integration 2026-08-14 23:50:01.423151: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 23:50:01.423278: Car charging hold False, threshold 6.0kWh 2026-08-14 23:50:01.423318: Current data so far today: load 26.05kWh, import 29.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 23:50:01.443199: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 23:50:01.443658: Standing charge is set to 49.98p 2026-08-14 23:50:01.492063: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 23:50:01.492171: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 23:50:01.492379: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 75.0 minutes 2026-08-14 23:50:01.492881: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 75.0 minutes 2026-08-14 23:50:01.498857: Loaded 95 datapoints of futurerate analysis 2026-08-14 23:50:01.654123: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41', '08-15 22:00:00 => 30.26 / 20.87'] 2026-08-14 23:50:01.703216: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 23:50:01.703628: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-14 23:50:01.743818: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 23:50:01.743965: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 23:50:01.745471: High export rate found rates in range 99p to -99p 2026-08-14 23:50:01.841976: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 23:50:01.842113: Car 0 charging is not planned as it is not plugged in 2026-08-14 23:50:01.854905: Battery level now 2.24kWh, -1hr ago 3.75kWh, at midnight 2.43kWh, battery value change in the last hour -17.88p, change today -2.27p, rate_forward 11.83p 2026-08-14 23:50:01.855374: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.7kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 23:50:01.921747: Today's energy total net 29.1kWh, import 29.1kWh, export 0.0kWh, cost 738.29p, import 688.31p, export 0.0p, carbon 0.0kg 2026-08-14 23:50:01.921936: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 23:50:02.021557: Using weighted-bucket historical load forecast over 14 days 2026-08-14 23:50:02.055993: Today's load divergence 146.02%, in-day adjustment 143.74%, damping 0.95x, yesterday 146.81% today 143.72% blend 0.69% 2026-08-14 23:50:02.056093: Today's predicted so far 13.94kWh with 0.0kWh car/iBoost excluded, 17.2kWh import ignored, and 13.94kWh forecast extra. 2026-08-14 23:50:02.056125: Today's actual load so far 25.96kWh with 0.0kWh car/iBoost excluded, and 17.2kWh import ignored. 2026-08-14 23:50:02.090959: Inverter 0: Type SK Sunsynk 2026-08-14 23:50:02.091049: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:50:02.091630: Reserve min: 7%, battery_min: 7% 2026-08-14 23:50:02.091713: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:50:02.092007: Inverter 0 SoC: 1.94kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 1733W, current battery voltage 51.2V, grid power -54W, load power 1789W, PV Power 0W 2026-08-14 23:50:02.092170: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:50:02.092285: Inverter 0 scheduled charge enable is False 2026-08-14 23:50:02.092321: Inverter 0 charge windows currently [] 2026-08-14 23:50:02.092348: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:50:02.092480: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:50:02.092534: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:50:02.092577: Inverter 0 scheduled discharge enable is False 2026-08-14 23:50:02.092710: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:50:02.092762: Inverter 0 discharge windows currently [] 2026-08-14 23:50:02.092793: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:50:02.092818: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:50:02.092836: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:50:02.152833: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 23:50:02.153003: Plan was last updated on 2026-08-14 23:45:00+01:00 and is now 5.0 minutes old 2026-08-14 23:50:02.153373: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 23:50:02.153485: Best export window [ ] 2026-08-14 23:50:02.154481: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:50:02.157483: Load divergence over 8.0 hours mean 442.57W, min 278.4W, max 766.8W, std dev 69.91W, divergence 7.9% 2026-08-14 23:50:02.173126: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:50:02.173224: LoadML is_calculating False 2026-08-14 23:50:02.173303: Creating pool of 12 processes to match your CPU count 2026-08-14 23:50:02.300342: predict base end_record 08-16 13:05:00, final soc 1.12kWh, metric 1390.92p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 49.26kWh, PV 0.0kWh 2026-08-14 23:50:02.437191: Battery has 0.75 hours left - now at 1.94kWh 2026-08-14 23:50:02.481049: predict base10 end_record 08-16 13:05:00, final soc 1.12kWh, metric 1418.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 50.37kWh, PV 0.0kWh 2026-08-14 23:50:02.563701: predict best10 end_record 08-16 13:05:00, final soc 1.44kWh, metric 1292.45p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 50.37kWh, PV 0.0kWh 2026-08-14 23:50:02.646420: predict best end_record 08-16 13:05:00, final soc 1.51kWh, metric 1267.77p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 49.26kWh, PV 0.0kWh 2026-08-14 23:50:02.646513: Saving plan best values to HA entities 2026-08-14 23:50:02.804381: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:50:02.810212: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 23:50:02.816050: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.95kWh, house 9.6kWh, export 0.0kWh, metric 1267.77p, metric10 1292.45p 2026-08-14 23:50:02.891465: Marginal costs baseline metric (no standing charge): 1167.8048 2026-08-14 23:50:03.169303: Marginal energy costs matrix computed: min=16.52 max=28.08 2026-08-14 23:50:03.255405: Rate array import [{'start': 1430, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3665, 'rate': 'cheap', 'range': '(15.4p - 23.6p)'}] export [{'start': 1430, 'end': 3665, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:50:03.256175: - Your estimated bill for today is £7.38 and tomorrow is £4.39 2026-08-14 23:50:03.256220: - Import rates are expensive (24.6p - 29.1p) for the next 7 and a quarter hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:50:03.256243: - The battery is currently at 12% and is in eco mode for the next 13 hours. 2026-08-14 23:50:03.256275: - For the next 48 hours there will be no solar generation. 2026-08-14 23:50:03.256309: - You will run out of battery in 45 minutes. 2026-08-14 23:50:03.256325: - Your next charge slot will be in 13 hours where import rates will be cheap (15.4p). 2026-08-14 23:50:03.256341: 2026-08-14 23:50:03.313297: Plan calculation took 1.16 seconds 2026-08-14 23:50:03.316619: No high rate period found 2026-08-14 23:50:03.360135: Import threshold used for optimisation was 22.73p 2026-08-14 23:50:03.411633: Low import rate windows [0: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 1: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 2: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 3: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 4: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 5: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 6: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 7: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 8: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 9: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 10: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 11: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 12: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 13: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 14: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 15: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 16: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 17: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 18: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 19: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 20: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 21: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 22: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 23: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 24: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 25: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 26: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 27: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 28: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 29: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 30: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 31: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 32: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 33: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 34: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 35: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 36: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 37: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 38: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 39: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 40: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 41: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 42: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 43: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 44: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 45: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 46: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 47: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 48: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 49: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 50: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 51: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 52: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 53: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 54: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 55: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 56: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 57: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 58: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 59: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 60: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 61: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 62: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 63: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 64: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 65: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 66: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 67: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 68: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 69: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 70: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 71: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 72: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 73: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 74: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 75: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 76: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 77: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 78: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 79: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 80: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 81: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 82: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 83: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 84: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 85: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 86: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 87: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 88: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 89: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 90: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 91: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 92: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 93: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 94: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09] 2026-08-14 23:50:03.419505: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-14 23:50:03.419683: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:50:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:50:03.419893: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:50:03.420286: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:50:03.420425: No export window planned 2026-08-14 23:50:03.420668: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:50:03.420724: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:50:03.421008: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:50:03.421265: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:50:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:50:03.421363: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:50:03.421476: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:50:03.421638: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:50:03.421711: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:50:03.421822: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:50:03.421870: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:50:03.421900: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:50:03.421925: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:50:03.421958: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:50:03.422054: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:50:03.422090: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:50:03.422147: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:50:03.422175: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:50:03.422199: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:50:03.422253: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:50:03.422303: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:50:03.422352: Inverter 0 count register writes 0 2026-08-14 23:50:03.438344: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-14 23:50:03.443933: Total inverter register writes now 815 2026-08-14 23:50:03.477684: Info: Completed run status Demand 2026-08-14 23:50:03.483713: Info: record_status Demand 2026-08-14 23:50:03.489739: Saved current settings to /config/predbat_config.json 2026-08-14 23:50:03.490029: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 23:50:41.593582: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:50:41.593894: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:50:41.593996: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:50:41.594257: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:50:41.594318: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:50:41.594363: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:50:41.594404: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:52:41.808761: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:52:41.809238: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:52:41.809294: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:52:41.809460: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:52:41.809518: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:52:41.809537: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:52:41.809555: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:54:42.036782: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:54:42.037131: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:54:42.037219: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:54:42.037465: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:54:42.037523: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:54:42.037554: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:54:42.037593: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:55:00.140436: --------------- PredBat - update at 2026-08-14 23:55:00+01:00 with clock skew 0 minutes, minutes now 1435 2026-08-14 23:55:00.141341: Saved current settings to /config/predbat_config.json 2026-08-14 23:55:00.141477: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 115.0 minutes 2026-08-14 23:55:00.141594: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 23:55:00.141745: Autoupdate: Currently up to date 2026-08-14 23:55:00.160842: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 23:55:00.161000: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 23:55:00.161146: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 23:55:00.161631: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 23:55:00.161749: Predbat mode is set to Control charge & discharge 2026-08-14 23:55:00.348354: Found 21602 load_today datapoints going back 28 days 2026-08-14 23:55:00.348519: Using load_power data to fill gaps in load_today data 2026-08-14 23:55:01.187107: Processing 721 30-minute periods for power integration 2026-08-14 23:55:01.387233: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 23:55:01.387381: Car charging hold False, threshold 6.0kWh 2026-08-14 23:55:01.387428: Current data so far today: load 26.2kWh, import 29.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 23:55:01.406178: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 23:55:01.406692: Standing charge is set to 49.98p 2026-08-14 23:55:01.463117: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 23:55:01.463267: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 23:55:01.463571: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 80.0 minutes 2026-08-14 23:55:01.464081: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 80.0 minutes 2026-08-14 23:55:01.473794: Loaded 95 datapoints of futurerate analysis 2026-08-14 23:55:01.641794: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41', '08-15 22:00:00 => 30.26 / 20.87'] 2026-08-14 23:55:01.688223: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 23:55:01.688674: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-14 23:55:01.732423: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 23:55:01.732559: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 23:55:01.733998: High export rate found rates in range 99p to -99p 2026-08-14 23:55:01.842476: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 23:55:01.842608: Car 0 charging is not planned as it is not plugged in 2026-08-14 23:55:01.855438: Battery level now 1.94kWh, -1hr ago 3.61kWh, at midnight 2.43kWh, battery value change in the last hour -19.68p, change today -5.77p, rate_forward 11.83p 2026-08-14 23:55:01.855820: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.7kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 23:55:01.913033: Today's energy total net 29.1kWh, import 29.1kWh, export 0.0kWh, cost 738.29p, import 688.31p, export 0.0p, carbon 0.0kg 2026-08-14 23:55:01.913205: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 23:55:02.001498: Using weighted-bucket historical load forecast over 14 days 2026-08-14 23:55:02.033115: Today's load divergence 146.07%, in-day adjustment 143.77%, damping 0.95x, yesterday 146.81% today 143.76% blend 0.35% 2026-08-14 23:55:02.033212: Today's predicted so far 14.01kWh with 0.0kWh car/iBoost excluded, 17.38kWh import ignored, and 14.01kWh forecast extra. 2026-08-14 23:55:02.033255: Today's actual load so far 26.06kWh with 0.0kWh car/iBoost excluded, and 17.38kWh import ignored. 2026-08-14 23:55:02.061445: Inverter 0: Type SK Sunsynk 2026-08-14 23:55:02.061538: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:55:02.062102: Reserve min: 7%, battery_min: 7% 2026-08-14 23:55:02.062189: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:55:02.062451: Inverter 0 SoC: 1.8kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 1694W, current battery voltage 51.2V, grid power -54W, load power 1751W, PV Power 0W 2026-08-14 23:55:02.062603: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:55:02.062691: Inverter 0 scheduled charge enable is False 2026-08-14 23:55:02.062748: Inverter 0 charge windows currently [] 2026-08-14 23:55:02.062775: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:55:02.062881: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:55:02.062916: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:55:02.062951: Inverter 0 scheduled discharge enable is False 2026-08-14 23:55:02.063081: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:55:02.063118: Inverter 0 discharge windows currently [] 2026-08-14 23:55:02.063140: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:55:02.063159: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:55:02.063180: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:55:02.122627: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 23:55:02.122759: Plan was last updated on 2026-08-14 23:45:00+01:00 and is now 10.0 minutes old 2026-08-14 23:55:02.122982: Best charge window [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 16-08 22:30:00 @ 31.8p 100% ] 2026-08-14 23:55:02.123026: Best export window [ ] 2026-08-14 23:55:02.123873: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:55:02.127072: Load divergence over 8.0 hours mean 450.25W, min 312.6W, max 960.0W, std dev 81.47W, divergence 9.05% 2026-08-14 23:55:02.146345: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:55:02.146460: LoadML is_calculating False 2026-08-14 23:55:02.146523: Creating pool of 12 processes to match your CPU count 2026-08-14 23:55:02.255972: predict base end_record 08-16 13:10:00, final soc 1.12kWh, metric 1392.31p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 49.35kWh, PV 0.0kWh 2026-08-14 23:55:02.384865: Battery has 0.67 hours left - now at 1.8kWh 2026-08-14 23:55:02.430402: predict base10 end_record 08-16 13:10:00, final soc 1.12kWh, metric 1419.56p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 50.46kWh, PV 0.0kWh 2026-08-14 23:55:02.504307: predict best10 end_record 08-16 13:10:00, final soc 1.77kWh, metric 1299.05p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 50.46kWh, PV 0.0kWh 2026-08-14 23:55:02.593340: predict best end_record 08-16 13:10:00, final soc 1.9kWh, metric 1275.56p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 49.35kWh, PV 0.0kWh 2026-08-14 23:55:02.593440: Saving plan best values to HA entities 2026-08-14 23:55:02.774416: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:55:02.779889: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 23:55:02.785203: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 15.45kWh, house 9.6kWh, export 0.0kWh, metric 1275.56p, metric10 1299.05p 2026-08-14 23:55:02.861465: Marginal costs baseline metric (no standing charge): 1175.5915 2026-08-14 23:55:03.096796: Marginal energy costs matrix computed: min=16.6 max=27.94 2026-08-14 23:55:03.168850: Rate array import [{'start': 1435, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3670, 'rate': 'cheap', 'range': '(15.4p - 23.6p)'}] export [{'start': 1435, 'end': 3670, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:55:03.169583: - Your estimated bill for today is £7.38 and tomorrow is £4.39 2026-08-14 23:55:03.169633: - Import rates are expensive (24.6p - 29.1p) for the next 7 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:55:03.169652: - The battery is currently at 11% and is in eco mode for the next 13 hours. 2026-08-14 23:55:03.169667: - For the next 48 hours there will be no solar generation. 2026-08-14 23:55:03.169680: - You will run out of battery in 40 minutes. 2026-08-14 23:55:03.169714: - Your next charge slot will be in 13 hours where import rates will be cheap (15.4p). 2026-08-14 23:55:03.169733: 2026-08-14 23:55:03.229417: Plan calculation took 1.11 seconds 2026-08-14 23:55:03.232633: No high rate period found 2026-08-14 23:55:03.277720: Import threshold used for optimisation was 22.73p 2026-08-14 23:55:03.324040: Low import rate windows [0: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 1: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 2: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 3: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 4: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 5: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 6: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 7: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 8: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 9: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 10: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 11: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 12: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 13: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 14: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 15: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 16: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 17: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 18: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 19: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 20: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 21: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 22: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 23: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 24: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 25: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 26: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 27: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 28: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 29: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 30: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 31: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 32: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 33: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 34: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 35: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 36: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 37: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 38: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 39: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 40: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 41: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 42: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 43: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 44: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 45: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 46: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 47: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 48: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 49: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 50: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 51: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 52: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 53: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 54: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 55: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 56: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 57: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 58: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 59: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 60: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 61: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 62: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 63: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 64: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 65: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 66: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 67: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 68: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 69: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 70: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 71: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 72: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 73: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 74: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 75: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 76: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 77: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 78: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 79: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 80: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 81: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 82: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 83: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 84: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 85: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 86: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 87: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 88: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 89: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 90: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 91: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 92: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 93: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 94: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09] 2026-08-14 23:55:03.329919: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 23:55:03.330029: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:55:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:55:03.330161: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:55:03.330399: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:55:03.330478: No export window planned 2026-08-14 23:55:03.330574: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:55:03.330597: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:55:03.330717: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:55:03.330901: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:55:03.330955: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:55:03.331008: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:55:03.331093: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:03.331170: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:03.331240: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:03.331323: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:03.331377: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:03.331428: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:03.331471: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:03.331560: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:03.331600: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:03.331629: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:03.331712: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:03.331746: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:03.331768: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:03.331808: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:03.331839: Inverter 0 count register writes 0 2026-08-14 23:55:03.345920: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-14 23:55:03.346145: Recompute is saving previous plan... 2026-08-14 23:55:03.348784: Best charge window [ 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0% ] 2026-08-14 23:55:03.348862: Best export window [ ] 2026-08-14 23:55:03.349597: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:55:03.352112: Load divergence over 8.0 hours mean 450.25W, min 312.6W, max 960.0W, std dev 81.47W, divergence 9.05% 2026-08-14 23:55:03.366047: Calculating data from yesterday for savings calculation 2026-08-14 23:55:03.377790: Yesterday basic charge window best: [{'start': 900, 'end': 930, 'average': 21.88}] charge limit best: [16.0] based on max charge slots 1 2026-08-14 23:55:03.416988: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 23:55:03.429277: predict yesterday10 end_record 08-15 00:00:00, final soc 1.12kWh, metric 870.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 23:55:03.445811: predict yesterday end_record 08-15 00:00:00, final soc 1.12kWh, metric 856.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 23:55:03.481397: Yesterday: Predbat disabled was £8.57 (adjusted £8.43) vs £6.21 (adjusted £5.91), saving £2.35 (adjusted £2.52) with import 28.13kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 13.25kWh 2026-08-14 23:55:03.556485: predict yesterday end_record 08-15 00:00:00, final soc 0.0kWh, metric 901.12p, metric_keep 0kWh, min_soc 0kWh @ 08-14 00:00:00, load 27.8kWh, PV 0.0kWh 2026-08-14 23:55:03.556630: Yesterday: No Battery/PV system cost predicted was £9.01 (adjusted £9.01) vs £6.21 (adjusted £5.91), saving £2.8 (adjusted £3.1) with import 27.8kWh, export 0kWh and battery_value 0.0kWh 2026-08-14 23:55:03.566687: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:55:03.566819: LoadML is_calculating False 2026-08-14 23:55:03.566887: Creating pool of 12 processes to match your CPU count 2026-08-14 23:55:03.650277: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 23:55:03.652595: Optimise levels pass started at 2026-08-14 23:55:03 2026-08-14 23:55:03.652654: Optimise all windows, total charge 94 export 1 2026-08-14 23:55:04.700487: >> Region optimisation pass width 960 gives best_metric 1262.52p, best_cost 1270.41p, best_cycle 37.99kWh, best_import 31.75kWh 2026-08-14 23:55:05.114030: >> Region optimisation pass width 480 gives best_metric 1262.52p, best_cost 1270.41p, best_cycle 37.99kWh, best_import 31.75kWh 2026-08-14 23:55:05.624040: >> Region optimisation pass width 240 gives best_metric 1262.52p, best_cost 1270.41p, best_cycle 37.99kWh, best_import 31.75kWh 2026-08-14 23:55:06.996863: >> Region optimisation pass width 120 gives best_metric 1260.15p, best_cost 1269.06p, best_cycle 35.64kWh, best_import 31.58kWh 2026-08-14 23:55:06.997985: Calculated end_record as 08-16 13:00:00 based on best_price 15.87p, next_charge_start 08-15 13:00:00, max_windows 74 2026-08-14 23:55:06.998104: Optimise levels pass ended at 2026-08-14 23:55:06, duration 3.3 seconds tried 351 combinations 2026-08-14 23:55:06.998300: Set best_price_charge_level 17.0p, best_price_export_level 0p, best_price_charge 15.87p, best_cost_export 0p, best_metric 1260.15p, best_keep 0kWh, best_cycle 35.64kWh, best_carbon 0kg, best_import 31.58kWh 2026-08-14 23:55:07.021977: Starting detailed optimisation end_record 08-16 13:00:00, best_price_charge 15.87p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6.0, 6.0, 16.0, 16.0, 16.0, 13.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 23:55:12.001469: Tweak plan optimisation started metric 1151.34p, cost 1160.79p 2026-08-14 23:55:12.267666: Tweak optimisation finished metric 1151.34p, cost 1160.79p, metric_keep 0kWh, cycle 24.43kWh, carbon 0kg, import 24.08kWh, changed 8 window(s) 2026-08-14 23:55:12.286252: Swap charge optimisation started metric 1151.34p, cost 1160.79p, min_improvement_swap 0.1p 2026-08-14 23:55:17.576378: Swap charge optimisation finished metric 1151.34p, cost 1160.79p 2026-08-14 23:55:17.661823: Pruned 2 dead plan slot(s) in 8 trial(s), nominal metric 1147.55p -> 1147.55p, plan now metric 1151.38p, cost 1160.79p, cycle 24.43kWh, import 24.08kWh 2026-08-14 23:55:17.674796: Raw charge windows [ 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100% ] reserve 1.12 2026-08-14 23:55:17.675335: Unclipped charge windows [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:00:00 @ 29.2p 100% ] reserve 1.12 2026-08-14 23:55:17.675557: Unfiltered charge windows [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:00:00 @ 29.2p 100% ] reserve 1.12 2026-08-14 23:55:17.675792: Filtered charge windows [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:00:00 @ 29.2p 100% ] reserve 1.12 2026-08-14 23:55:17.707999: Previous plan best metric is 1151.34 (cost 1160.79) and new plan best metric is 1151.34 (cost 1160.79) 2026-08-14 23:55:17.708315: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 23:55:17.708485: Plan valid is now true after recompute was False 2026-08-14 23:55:17.732550: predict base end_record 08-16 13:00:00, final soc 1.12kWh, metric 1390.31p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 49.22kWh, PV 0.0kWh 2026-08-14 23:55:17.830433: Battery has 0.67 hours left - now at 1.8kWh 2026-08-14 23:55:17.878091: predict base10 end_record 08-16 13:00:00, final soc 1.12kWh, metric 1417.46p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 50.32kWh, PV 0.0kWh 2026-08-14 23:55:17.957186: predict best10 end_record 08-16 13:00:00, final soc 1.12kWh, metric 1286.28p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 50.32kWh, PV 0.0kWh 2026-08-14 23:55:18.040069: predict best end_record 08-16 13:00:00, final soc 1.12kWh, metric 1260.76p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 49.22kWh, PV 0.0kWh 2026-08-14 23:55:18.040167: Saving plan best values to HA entities 2026-08-14 23:55:18.220183: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:55:18.225293: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 23:55:18.230504: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.48kWh, house 9.6kWh, export 0.0kWh, metric 1260.76p, metric10 1286.28p 2026-08-14 23:55:18.304425: Marginal costs baseline metric (no standing charge): 1160.7918 2026-08-14 23:55:18.555825: Marginal energy costs matrix computed: min=16.6 max=27.94 2026-08-14 23:55:18.644640: Rate array import [{'start': 1435, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3660, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1435, 'end': 3660, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:55:18.645449: - Your estimated bill for today is £7.38 and tomorrow is £4.39 2026-08-14 23:55:18.645505: - Import rates are expensive (24.6p - 29.1p) for the next 7 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:55:18.645528: - The battery is currently at 11% and is in eco mode for the next 13 hours. 2026-08-14 23:55:18.645546: - For the next 48 hours there will be no solar generation. 2026-08-14 23:55:18.645564: - You will run out of battery in 40 minutes. 2026-08-14 23:55:18.645585: - Your next charge slot will be in 13 hours where import rates will be cheap (15.4p). 2026-08-14 23:55:18.645603: 2026-08-14 23:55:18.708174: Plan calculation took 15.36 seconds 2026-08-14 23:55:18.708725: Inverter 0: Type SK Sunsynk 2026-08-14 23:55:18.708916: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:55:18.709622: Reserve min: 7%, battery_min: 7% 2026-08-14 23:55:18.709731: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:55:18.710055: Inverter 0 SoC: 1.8kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 1694W, current battery voltage 51.2V, grid power -54W, load power 1751W, PV Power 0W 2026-08-14 23:55:18.710290: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:55:18.710402: Inverter 0 scheduled charge enable is False 2026-08-14 23:55:18.710442: Inverter 0 charge windows currently [] 2026-08-14 23:55:18.710472: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:55:18.710584: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:55:18.710619: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:55:18.710655: Inverter 0 scheduled discharge enable is False 2026-08-14 23:55:18.710809: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:55:18.710851: Inverter 0 discharge windows currently [] 2026-08-14 23:55:18.710874: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:55:18.710899: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:55:18.710917: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:55:18.769476: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 23:55:18.769623: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:55:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:55:18.769708: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:55:18.769974: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:55:18.770069: No export window planned 2026-08-14 23:55:18.770187: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:55:18.770238: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:55:18.770396: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:55:18.770623: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:55:18.770739: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:55:18.770806: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:55:18.770919: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:18.770957: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:18.770996: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:18.771023: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:18.771064: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:18.771089: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:18.771113: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:18.771169: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:18.771224: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:18.771248: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:18.771280: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:18.771304: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:18.771336: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:18.771360: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:18.771386: Inverter 0 count register writes 0 2026-08-14 23:55:18.794072: Total inverter register writes now 815 2026-08-14 23:55:18.828523: Info: Completed run status Demand 2026-08-14 23:55:18.835385: Info: record_status Demand 2026-08-14 23:55:18.842328: Saved current settings to /config/predbat_config.json 2026-08-14 23:55:18.842722: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 23:55:19.903294: Info: Refresh config entities due to their age of 480.0 minutes 2026-08-14 23:55:19.903440: Refreshing Predbat configuration 2026-08-14 23:55:20.489388: Saved current settings to /config/predbat_config.json 2026-08-14 23:55:20.504377: Validation of apps.yaml was successful 2026-08-14 23:55:20.504582: --------------- PredBat - update at 2026-08-14 23:55:00+01:00 with clock skew 0 minutes, minutes now 1435 2026-08-14 23:55:20.505271: Saved current settings to /config/predbat_config.json 2026-08-14 23:55:20.505404: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 115.3 minutes 2026-08-14 23:55:20.505523: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-14 23:55:20.505631: Autoupdate: Currently up to date 2026-08-14 23:55:20.523296: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-14 23:55:20.523416: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-14 23:55:20.523641: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-14 23:55:20.524321: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-14 23:55:20.524457: Predbat mode is set to Control charge & discharge 2026-08-14 23:55:20.725539: Found 21602 load_today datapoints going back 28 days 2026-08-14 23:55:20.725688: Using load_power data to fill gaps in load_today data 2026-08-14 23:55:21.432586: Processing 721 30-minute periods for power integration 2026-08-14 23:55:21.595494: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-14 23:55:21.595611: Car charging hold False, threshold 6.0kWh 2026-08-14 23:55:21.595649: Current data so far today: load 26.2kWh, import 29.1kWh, export 0.0kWh, PV 0kWh 2026-08-14 23:55:21.611439: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-14 23:55:21.611901: Standing charge is set to 49.98p 2026-08-14 23:55:21.652794: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-14 23:55:21.652872: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-14 23:55:21.653168: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-14&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 80.3 minutes 2026-08-14 23:55:21.653563: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 80.3 minutes 2026-08-14 23:55:21.658640: Loaded 95 datapoints of futurerate analysis 2026-08-14 23:55:21.782912: Predicted future rates: ['08-14 00:00:00 => 27.14 / 19.26', '08-14 01:00:00 => 26.0 / 18.68', '08-14 02:00:00 => 25.17 / 18.25', '08-14 03:00:00 => 24.9 / 18.11', '08-14 04:00:00 => 25.48 / 18.41', '08-14 05:00:00 => 27.13 / 19.25', '08-14 06:00:00 => 28.54 / 19.98', '08-14 07:00:00 => 27.65 / 19.52', '08-14 08:00:00 => 25.37 / 18.35', '08-14 09:00:00 => 24.17 / 17.73', '08-14 10:00:00 => 23.69 / 17.48', '08-14 11:00:00 => 22.89 / 17.07', '08-14 12:00:00 => 22.22 / 16.72', '08-14 13:00:00 => 21.81 / 16.51', '08-14 14:00:00 => 21.6 / 16.4', '08-14 15:00:00 => 21.79 / 16.5', '08-14 16:00:00 => 37.05 / 18.38', '08-14 17:00:00 => 41.88 / 20.87', '08-14 18:00:00 => 51.23 / 25.7', '08-14 19:00:00 => 44.36 / 28.15', '08-14 20:00:00 => 42.95 / 27.42', '08-14 21:00:00 => 37.48 / 24.6', '08-14 22:00:00 => 32.59 / 22.08', '08-14 23:00:00 => 30.04 / 20.76', '08-15 00:00:00 => 28.59 / 20.01', '08-15 01:00:00 => 27.24 / 19.31', '08-15 02:00:00 => 26.24 / 18.8', '08-15 03:00:00 => 25.71 / 18.53', '08-15 04:00:00 => 25.52 / 18.43', '08-15 05:00:00 => 25.68 / 18.51', '08-15 06:00:00 => 25.27 / 18.3', '08-15 07:00:00 => 24.07 / 17.68', '08-15 08:00:00 => 22.78 / 17.01', '08-15 09:00:00 => 21.81 / 16.51', '08-15 10:00:00 => 20.21 / 15.68', '08-15 11:00:00 => 17.81 / 14.45', '08-15 12:00:00 => 16.19 / 13.61', '08-15 13:00:00 => 15.59 / 13.3', '08-15 14:00:00 => 15.19 / 13.09', '08-15 15:00:00 => 15.69 / 13.35', '08-15 16:00:00 => 32.68 / 16.13', '08-15 17:00:00 => 37.76 / 18.75', '08-15 18:00:00 => 42.05 / 20.96', '08-15 19:00:00 => 30.76 / 21.13', '08-15 20:00:00 => 31.3 / 21.41', '08-15 21:00:00 => 31.3 / 21.41', '08-15 22:00:00 => 30.26 / 20.87'] 2026-08-14 23:55:21.820600: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-14 23:55:21.821148: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-14 23:55:21.855716: Export rates: min 0p, max 0p, average 0.0p 2026-08-14 23:55:21.855820: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-14 23:55:21.856989: High export rate found rates in range 99p to -99p 2026-08-14 23:55:21.950364: Low Import rate found rates in range 13.77p to 41.55p 2026-08-14 23:55:21.950516: Car 0 charging is not planned as it is not plugged in 2026-08-14 23:55:21.963239: Battery level now 1.94kWh, -1hr ago 3.61kWh, at midnight 2.43kWh, battery value change in the last hour -19.68p, change today -5.77p, rate_forward 11.83p 2026-08-14 23:55:21.963771: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.7kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-14 23:55:22.018899: Today's energy total net 29.1kWh, import 29.1kWh, export 0.0kWh, cost 738.29p, import 688.31p, export 0.0p, carbon 0.0kg 2026-08-14 23:55:22.019045: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-14 23:55:22.102038: Using weighted-bucket historical load forecast over 14 days 2026-08-14 23:55:22.133376: Today's load divergence 146.07%, in-day adjustment 143.77%, damping 0.95x, yesterday 146.81% today 143.76% blend 0.35% 2026-08-14 23:55:22.133454: Today's predicted so far 14.01kWh with 0.0kWh car/iBoost excluded, 17.38kWh import ignored, and 14.01kWh forecast extra. 2026-08-14 23:55:22.133480: Today's actual load so far 26.06kWh with 0.0kWh car/iBoost excluded, and 17.38kWh import ignored. 2026-08-14 23:55:22.158195: Inverter 0: Type SK Sunsynk 2026-08-14 23:55:22.158273: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:55:22.158748: Reserve min: 7%, battery_min: 7% 2026-08-14 23:55:22.158812: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:55:22.159038: Inverter 0 SoC: 1.8kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 1694W, current battery voltage 51.2V, grid power -54W, load power 1751W, PV Power 0W 2026-08-14 23:55:22.159168: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:55:22.159242: Inverter 0 scheduled charge enable is False 2026-08-14 23:55:22.159266: Inverter 0 charge windows currently [] 2026-08-14 23:55:22.159287: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:55:22.159378: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:55:22.159411: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:55:22.159465: Inverter 0 scheduled discharge enable is False 2026-08-14 23:55:22.159568: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:55:22.159599: Inverter 0 discharge windows currently [] 2026-08-14 23:55:22.159618: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:55:22.159634: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:55:22.159647: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:55:22.210816: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-14 23:55:22.210893: Will recompute the plan as it is invalid 2026-08-14 23:55:22.210974: Recompute is saving previous plan... 2026-08-14 23:55:22.213535: Best charge window [ 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0% ] 2026-08-14 23:55:22.213607: Best export window [ ] 2026-08-14 23:55:22.214261: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-14 23:55:22.216782: Load divergence over 8.0 hours mean 450.25W, min 312.6W, max 960.0W, std dev 81.47W, divergence 9.05% 2026-08-14 23:55:22.232644: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-14 23:55:22.232774: LoadML is_calculating False 2026-08-14 23:55:22.232830: Creating pool of 12 processes to match your CPU count 2026-08-14 23:55:22.309188: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-14 23:55:22.310885: Optimise levels pass started at 2026-08-14 23:55:22 2026-08-14 23:55:22.310942: Optimise all windows, total charge 94 export 1 2026-08-14 23:55:23.384260: >> Region optimisation pass width 960 gives best_metric 1262.52p, best_cost 1270.41p, best_cycle 37.99kWh, best_import 31.75kWh 2026-08-14 23:55:23.800369: >> Region optimisation pass width 480 gives best_metric 1262.52p, best_cost 1270.41p, best_cycle 37.99kWh, best_import 31.75kWh 2026-08-14 23:55:24.327374: >> Region optimisation pass width 240 gives best_metric 1262.52p, best_cost 1270.41p, best_cycle 37.99kWh, best_import 31.75kWh 2026-08-14 23:55:25.627350: >> Region optimisation pass width 120 gives best_metric 1260.15p, best_cost 1269.06p, best_cycle 35.64kWh, best_import 31.58kWh 2026-08-14 23:55:25.627705: Calculated end_record as 08-16 13:00:00 based on best_price 15.87p, next_charge_start 08-15 13:00:00, max_windows 74 2026-08-14 23:55:25.627813: Optimise levels pass ended at 2026-08-14 23:55:25, duration 3.3 seconds tried 351 combinations 2026-08-14 23:55:25.628207: Set best_price_charge_level 17.0p, best_price_export_level 0p, best_price_charge 15.87p, best_cost_export 0p, best_metric 1260.15p, best_keep 0kWh, best_cycle 35.64kWh, best_carbon 0kg, best_import 31.58kWh 2026-08-14 23:55:25.649536: Starting detailed optimisation end_record 08-16 13:00:00, best_price_charge 15.87p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6.0, 6.0, 16.0, 16.0, 16.0, 13.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-14 23:55:30.537042: Tweak plan optimisation started metric 1151.34p, cost 1160.79p 2026-08-14 23:55:30.782198: Tweak optimisation finished metric 1151.34p, cost 1160.79p, metric_keep 0kWh, cycle 24.43kWh, carbon 0kg, import 24.08kWh, changed 8 window(s) 2026-08-14 23:55:30.804392: Swap charge optimisation started metric 1151.34p, cost 1160.79p, min_improvement_swap 0.1p 2026-08-14 23:55:36.146374: Swap charge optimisation finished metric 1151.34p, cost 1160.79p 2026-08-14 23:55:36.230887: Pruned 2 dead plan slot(s) in 8 trial(s), nominal metric 1147.55p -> 1147.55p, plan now metric 1151.38p, cost 1160.79p, cycle 24.43kWh, import 24.08kWh 2026-08-14 23:55:36.240925: Raw charge windows [ 14-08 23:30:00 - 15-08 00:00:00 @ 29.09p 0%, 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100% ] reserve 1.12 2026-08-14 23:55:36.241431: Unclipped charge windows [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:00:00 @ 29.2p 100% ] reserve 1.12 2026-08-14 23:55:36.241610: Unfiltered charge windows [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:00:00 @ 29.2p 100% ] reserve 1.12 2026-08-14 23:55:36.241867: Filtered charge windows [ 15-08 13:00:00 - 15-08 15:30:00 @ 14.71p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 81%, 16-08 13:00:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:00:00 @ 29.2p 100% ] reserve 1.12 2026-08-14 23:55:36.273485: Previous plan best metric is 1151.34 (cost 1160.79) and new plan best metric is 1151.34 (cost 1160.79) 2026-08-14 23:55:36.273671: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-14 23:55:36.273846: Plan valid is now true after recompute was False 2026-08-14 23:55:36.299433: predict base end_record 08-16 13:00:00, final soc 1.12kWh, metric 1390.31p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 49.22kWh, PV 0.0kWh 2026-08-14 23:55:36.401163: Battery has 0.67 hours left - now at 1.8kWh 2026-08-14 23:55:36.438263: predict base10 end_record 08-16 13:00:00, final soc 1.12kWh, metric 1417.46p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 50.32kWh, PV 0.0kWh 2026-08-14 23:55:36.505498: predict best10 end_record 08-16 13:00:00, final soc 1.12kWh, metric 1286.28p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 50.32kWh, PV 0.0kWh 2026-08-14 23:55:36.579203: predict best end_record 08-16 13:00:00, final soc 1.12kWh, metric 1260.76p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 49.22kWh, PV 0.0kWh 2026-08-14 23:55:36.579302: Saving plan best values to HA entities 2026-08-14 23:55:36.734868: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-14 23:55:36.741445: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-14 23:55:36.748195: Best charging limit SoC's [16.0, 13.0, 16.0, 16.0]kWh, export []kWh gives import battery 14.48kWh, house 9.6kWh, export 0.0kWh, metric 1260.76p, metric10 1286.28p 2026-08-14 23:55:36.828201: Marginal costs baseline metric (no standing charge): 1160.7918 2026-08-14 23:55:37.065229: Marginal energy costs matrix computed: min=16.6 max=27.94 2026-08-14 23:55:37.136804: Rate array import [{'start': 1435, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 29.1p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 3300, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 3300, 'end': 3330, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 3330, 'end': 3360, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 3360, 'end': 3660, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 1435, 'end': 3660, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-14 23:55:37.137542: - Your estimated bill for today is £7.38 and tomorrow is £4.39 2026-08-14 23:55:37.137593: - Import rates are expensive (24.6p - 29.1p) for the next 7 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-14 23:55:37.137616: - The battery is currently at 11% and is in eco mode for the next 13 hours. 2026-08-14 23:55:37.137634: - For the next 48 hours there will be no solar generation. 2026-08-14 23:55:37.137650: - You will run out of battery in 40 minutes. 2026-08-14 23:55:37.137671: - Your next charge slot will be in 13 hours where import rates will be cheap (15.4p). 2026-08-14 23:55:37.137704: 2026-08-14 23:55:37.196990: Plan calculation took 14.99 seconds 2026-08-14 23:55:37.201770: Saved plan to storage 2026-08-14 23:55:37.205604: No high rate period found 2026-08-14 23:55:37.251986: Import threshold used for optimisation was 22.73p 2026-08-14 23:55:37.299952: Low import rate windows [0: 08-14 23:30:00 - 08-15 00:00:00 @ 29.09, 1: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 2: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 3: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 4: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 5: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 6: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 7: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 8: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 9: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 10: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 11: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 12: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 13: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 14: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 15: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 16: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 17: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 18: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 19: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 20: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 21: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 22: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 23: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 24: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 25: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 26: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 27: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 28: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 29: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 30: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 31: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 32: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 33: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 34: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 35: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 36: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 37: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 38: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 39: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 40: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 41: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 42: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 43: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 44: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 45: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 46: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 47: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 48: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 49: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 50: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 51: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 52: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 53: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 54: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 55: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 56: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 57: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 58: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 59: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 60: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 61: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 62: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 63: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 64: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 65: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 66: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 67: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 68: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 69: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 70: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 71: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 72: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 73: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 74: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 75: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 76: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 77: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 78: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 79: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 80: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 81: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 82: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 83: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 84: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 85: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 86: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 87: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 88: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 89: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 90: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 91: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 92: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 93: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 94: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09] 2026-08-14 23:55:37.307313: Inverter 0: Type SK Sunsynk 2026-08-14 23:55:37.307567: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-14 23:55:37.308261: Reserve min: 7%, battery_min: 7% 2026-08-14 23:55:37.308336: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-14 23:55:37.308678: Inverter 0 SoC: 1.8kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 1694W, current battery voltage 51.2V, grid power -54W, load power 1751W, PV Power 0W 2026-08-14 23:55:37.308912: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:55:37.309068: Inverter 0 scheduled charge enable is False 2026-08-14 23:55:37.309104: Inverter 0 charge windows currently [] 2026-08-14 23:55:37.309129: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-14 23:55:37.309251: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:55:37.309282: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:55:37.309311: Inverter 0 scheduled discharge enable is False 2026-08-14 23:55:37.309415: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:55:37.309461: Inverter 0 discharge windows currently [] 2026-08-14 23:55:37.309480: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:55:37.309495: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:55:37.309508: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:55:37.356270: Inverter 0 Charge window will be: 2026-08-15 13:00:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-14 23:55:37.356424: Inverter 0 disabled charge window while waiting for schedule (now 08-14 23:55:00 target set_window_minutes 30 charge start time 08-15 13:00:00) original inverter start time 08-16 00:00:00 2026-08-14 23:55:37.356484: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:55:37.356685: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:55:37.356800: No export window planned 2026-08-14 23:55:37.356918: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-14 23:55:37.357002: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-14 23:55:37.357144: Adjust demand (idle) time computed is 15:55:00-23:59:00 2026-08-14 23:55:37.357305: Inverter 0 not setting charging SoC as we are not within the window (now 08-14 23:55:00 target set_soc_minutes 30 charge start time 08-16 00:00:00) 2026-08-14 23:55:37.357404: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-14 23:55:37.357470: Inverter 0 Current Target SoC is 7%, already at target 2026-08-14 23:55:37.357545: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:37.357586: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:37.357619: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:37.357640: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:37.357660: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:37.357679: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:37.357717: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-14 23:55:37.357790: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:37.357822: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:37.357841: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:37.357865: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:37.357885: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:37.357908: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:37.357927: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-14 23:55:37.357943: Inverter 0 count register writes 0 2026-08-14 23:55:37.376850: Total inverter register writes now 815 2026-08-14 23:55:37.407907: Info: Completed run status Demand 2026-08-14 23:55:37.414973: Info: record_status Demand 2026-08-14 23:55:37.423291: Saved current settings to /config/predbat_config.json 2026-08-14 23:55:37.423613: Compare, best tariff: igo_fixed metric 240.38p 2026-08-14 23:55:37.482613: Creating predbat dashboard at /config/predbat_dashboard.yaml 2026-08-14 23:56:11.525169: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:56:11.525473: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:56:11.525527: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:56:11.525728: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:56:11.525776: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:56:11.525799: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:56:11.525825: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:57:09.861325: TemperatureAPI: Using coordinates latitude 53.4, longitude -2.2 2026-08-14 23:57:10.050312: TemperatureAPI: Successfully fetched temperature data from Open-Meteo API 2026-08-14 23:58:11.741213: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-14 23:58:11.741457: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-14 23:58:11.741499: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-14 23:58:11.741733: Inverter 0 idle time is 08-14 15:55:00-08-14 23:59:00 2026-08-14 23:58:11.741786: Note: Inverter does not support discharge freeze - disabled 2026-08-14 23:58:11.741808: Note: Inverter does not support charge freeze - disabled 2026-08-14 23:58:11.741833: Note: Inverter does not support reserve - disabling reserve functions 2026-08-14 23:58:12.903417: Info: HAHistory: Pruning history data started. 2026-08-14 23:58:12.906210: Info: HAHistory: Pruning history data completed. 2026-08-15 00:00:00.942208: --------------- PredBat - update at 2026-08-15 00:00:00+01:00 with clock skew 0 minutes, minutes now 0 2026-08-15 00:00:00.944140: Saved current settings to /config/predbat_config.json 2026-08-15 00:00:01.214192: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 00:00:01.214339: Autoupdate: Currently up to date 2026-08-15 00:00:01.240591: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 00:00:01.240742: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 00:00:01.240942: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 00:00:01.241590: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 00:00:01.241735: Predbat mode is set to Control charge & discharge 2026-08-15 00:00:01.549833: Found 21602 load_today datapoints going back 27 days 2026-08-15 00:00:01.549980: Using load_power data to fill gaps in load_today data 2026-08-15 00:00:02.594710: Processing 721 30-minute periods for power integration 2026-08-15 00:00:02.812111: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 00:00:02.812604: Car charging hold False, threshold 6.0kWh 2026-08-15 00:00:02.812690: Current data so far today: load 0.0kWh, import 0.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 00:00:02.832258: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 00:00:02.832876: Standing charge is set to 49.98p 2026-08-15 00:00:02.886229: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 00:00:02.886338: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 00:00:20.229781: Warn: Error downloading futurerate data from URL https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP, code 521 2026-08-15 00:00:20.238229: Warn: record_status Warn: Error downloading futurerate data from cloud 2026-08-15 00:00:28.249893: Loaded 47 datapoints of futurerate analysis 2026-08-15 00:00:28.358063: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 00:00:28.418818: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 00:00:28.419382: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 00:00:28.464700: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 00:00:28.464831: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 00:00:28.466148: High export rate found rates in range 99p to -99p 2026-08-15 00:00:28.542995: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 00:00:28.543125: Car 0 charging is not planned as it is not plugged in 2026-08-15 00:00:28.555790: Battery level now 1.8kWh, -1hr ago 3.35kWh, at midnight 1.8kWh, battery value change in the last hour -18.35p, change today 0.0p, rate_forward 11.83p 2026-08-15 00:00:28.556149: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.7kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 00:00:28.603171: Today's energy total net 0kWh, import 0kWh, export 0kWh, cost 0p, import 0p, export 0p, carbon 0.0kg 2026-08-15 00:00:28.603288: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 00:00:28.674328: Using weighted-bucket historical load forecast over 14 days 2026-08-15 00:00:28.694893: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 00:00:28.694956: Today's predicted so far 0kWh with 0kWh car/iBoost excluded, 0kWh import ignored, and 0kWh forecast extra. 2026-08-15 00:00:28.694983: Today's actual load so far 0kWh with 0kWh car/iBoost excluded, and 0kWh import ignored. 2026-08-15 00:00:28.729567: Inverter 0: Type SK Sunsynk 2026-08-15 00:00:28.729667: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 00:00:29.195527: Find battery size has 15 days of data, max days 15 2026-08-15 00:00:29.195901: Charge start 20820 soc 25.0 end 20815 soc 25.75 2026-08-15 00:00:29.195967: Charge start 20790 soc 28.0 end 20747 soc 43.85 2026-08-15 00:00:29.196007: Charging clipped start at 20780 with SoC 30%, end at 20750 with SoC 43%; SoC change 13% 2026-08-15 00:00:29.196055: Power added over 31 samples is 2.3kWh 2026-08-15 00:00:29.196091: Battery size sample accepted raw 17.96kWh adjusted 16.72kWh from 13% SoC over 31 minutes 2026-08-15 00:00:29.196145: Charge start 20730 soc 47.0 end 20667 soc 71.5 2026-08-15 00:00:29.196178: Charging clipped start at 20720 with SoC 49%, end at 20670 with SoC 71%; SoC change 22% 2026-08-15 00:00:29.196220: Power added over 51 samples is 3.9kWh 2026-08-15 00:00:29.196250: Battery size sample accepted raw 17.53kWh adjusted 16.32kWh from 22% SoC over 51 minutes 2026-08-15 00:00:29.196584: Charge start 19440 soc 35.0 end 19408 soc 47.1 2026-08-15 00:00:29.196619: Charging clipped start at 19435 with SoC 36%, end at 19410 with SoC 47%; SoC change 11% 2026-08-15 00:00:29.196663: Power added over 26 samples is 2.0kWh 2026-08-15 00:00:29.196705: Battery size sample accepted raw 17.74kWh adjusted 16.52kWh from 11% SoC over 26 minutes 2026-08-15 00:00:29.196749: Charge start 19380 soc 50.0 end 19317 soc 74.45 2026-08-15 00:00:29.196784: Charging clipped start at 19370 with SoC 52%, end at 19320 with SoC 74%; SoC change 22% 2026-08-15 00:00:29.196817: Power added over 51 samples is 3.9kWh 2026-08-15 00:00:29.196848: Battery size sample accepted raw 17.53kWh adjusted 16.32kWh from 22% SoC over 51 minutes 2026-08-15 00:00:29.196877: Charge start 19290 soc 78.0 end 19284 soc 78.45 2026-08-15 00:00:29.196922: Charge start 19260 soc 81.0 end 19207 soc 100.0 2026-08-15 00:00:29.196991: Charging clipped start at 19250 with SoC 83%, end at 19235 with SoC 90%; SoC change 7% 2026-08-15 00:00:29.197273: Charge start 18360 soc 71.0 end 18359 soc 71.0 2026-08-15 00:00:29.197767: Charge start 16650 soc 22.0 end 16630 soc 29.05 2026-08-15 00:00:29.197855: Charging clipped start at 16640 with SoC 24%, end at 16630 with SoC 29%; SoC change 5% 2026-08-15 00:00:29.197929: Charge start 16590 soc 31.0 end 16422 soc 100.0 2026-08-15 00:00:29.197976: Charging clipped start at 16580 with SoC 33%, end at 16450 with SoC 90%; SoC change 57% 2026-08-15 00:00:29.198028: Power added over 131 samples is 9.9kWh 2026-08-15 00:00:29.198062: Battery size sample accepted raw 17.43kWh adjusted 16.23kWh from 57% SoC over 131 minutes 2026-08-15 00:00:29.198792: Charge start 13680 soc 15.0 end 13501 soc 89.65 2026-08-15 00:00:29.198862: Charging clipped start at 13670 with SoC 17%, end at 13505 with SoC 89%; SoC change 72% 2026-08-15 00:00:29.198924: Power added over 166 samples is 12.5kWh 2026-08-15 00:00:29.198957: Battery size sample accepted raw 17.43kWh adjusted 16.23kWh from 72% SoC over 166 minutes 2026-08-15 00:00:29.198994: Charge start 13470 soc 92.0 end 13443 soc 100.0 2026-08-15 00:00:29.199305: Charge start 12383 soc 68.0 end 12382 soc 68.0 2026-08-15 00:00:29.199374: Charge start 12360 soc 69.0 end 12284 soc 99.5 2026-08-15 00:00:29.199413: Charging clipped start at 12350 with SoC 71%, end at 12310 with SoC 88%; SoC change 17% 2026-08-15 00:00:29.199448: Power added over 41 samples is 3.1kWh 2026-08-15 00:00:29.199491: Battery size sample accepted raw 18.13kWh adjusted 16.89kWh from 17% SoC over 41 minutes 2026-08-15 00:00:29.199926: Charge start 10710 soc 42.0 end 10686 soc 49.25 2026-08-15 00:00:29.199968: Charging clipped start at 10700 with SoC 44%, end at 10690 with SoC 49%; SoC change 5% 2026-08-15 00:00:29.200005: Charge start 10620 soc 52.0 end 10618 soc 52.0 2026-08-15 00:00:29.200051: Charge start 10590 soc 53.0 end 10561 soc 62.05 2026-08-15 00:00:29.200084: Charging clipped start at 10580 with SoC 55%, end at 10565 with SoC 62%; SoC change 7% 2026-08-15 00:00:29.200382: Charge start 9404 soc 9.0 end 9395 soc 11.15 2026-08-15 00:00:29.200422: Charge start 9378 soc 9.35 end 9369 soc 10.65 2026-08-15 00:00:29.200510: Charge start 9360 soc 11.8 end 9147 soc 100.0 2026-08-15 00:00:29.200546: Charging clipped start at 9360 with SoC 11%, end at 9175 with SoC 90%; SoC change 79% 2026-08-15 00:00:29.200606: Power added over 186 samples is 14.1kWh 2026-08-15 00:00:29.200631: Battery size sample accepted raw 17.84kWh adjusted 16.61kWh from 79% SoC over 186 minutes 2026-08-15 00:00:29.200940: Charge start 8010 soc 13.0 end 7921 soc 49.25 2026-08-15 00:00:29.201011: Charging clipped start at 8005 with SoC 14%, end at 7925 with SoC 49%; SoC change 35% 2026-08-15 00:00:29.201072: Power added over 81 samples is 6.1kWh 2026-08-15 00:00:29.201100: Battery size sample accepted raw 17.47kWh adjusted 16.27kWh from 35% SoC over 81 minutes 2026-08-15 00:00:29.201131: Charge start 7890 soc 53.0 end 7877 soc 55.75 2026-08-15 00:00:29.201175: Charge start 7860 soc 59.0 end 7838 soc 65.842 2026-08-15 00:00:29.201202: Charging clipped start at 7850 with SoC 61%, end at 7840 with SoC 65%; SoC change 4% 2026-08-15 00:00:29.201246: Charge start 7830 soc 69.0 end 7754 soc 99.65 2026-08-15 00:00:29.201283: Charging clipped start at 7830 with SoC 69%, end at 7780 with SoC 89%; SoC change 20% 2026-08-15 00:00:29.201316: Power added over 51 samples is 3.9kWh 2026-08-15 00:00:29.201349: Battery size sample accepted raw 19.33kWh adjusted 18.0kWh from 20% SoC over 51 minutes 2026-08-15 00:00:29.201664: Charge start 6600 soc 25.1 end 6586 soc 28.421 2026-08-15 00:00:29.201698: Charging clipped start at 6600 with SoC 25%, end at 6590 with SoC 28%; SoC change 3% 2026-08-15 00:00:29.201745: Charge start 6510 soc 31.0 end 6495 soc 35.75 2026-08-15 00:00:29.201771: Charging clipped start at 6500 with SoC 33%, end at 6495 with SoC 35%; SoC change 2% 2026-08-15 00:00:29.201830: Charge start 6420 soc 37.95 end 6322 soc 77.8 2026-08-15 00:00:29.201853: Charging clipped start at 6420 with SoC 37%, end at 6325 with SoC 77%; SoC change 40% 2026-08-15 00:00:29.201897: Power added over 96 samples is 7.3kWh 2026-08-15 00:00:29.201927: Battery size sample accepted raw 18.13kWh adjusted 16.88kWh from 40% SoC over 96 minutes 2026-08-15 00:00:29.202277: Charge start 4980 soc 10.85 end 4827 soc 74.55 2026-08-15 00:00:29.202308: Charging clipped start at 4980 with SoC 10%, end at 4830 with SoC 74%; SoC change 64% 2026-08-15 00:00:29.202360: Power added over 151 samples is 11.4kWh 2026-08-15 00:00:29.202391: Battery size sample accepted raw 17.86kWh adjusted 16.63kWh from 64% SoC over 151 minutes 2026-08-15 00:00:29.202637: Charge start 3830 soc 9.0 end 3821 soc 9.25 2026-08-15 00:00:29.202707: Charge start 3731 soc 9.0 end 3722 soc 9.75 2026-08-15 00:00:29.202777: Charge start 3660 soc 13.0 end 3590 soc 41.95 2026-08-15 00:00:29.202809: Charging clipped start at 3650 with SoC 15%, end at 3590 with SoC 41%; SoC change 26% 2026-08-15 00:00:29.202845: Power added over 61 samples is 4.6kWh 2026-08-15 00:00:29.202874: Battery size sample accepted raw 17.73kWh adjusted 16.51kWh from 26% SoC over 61 minutes 2026-08-15 00:00:29.202931: Charge start 3570 soc 44.0 end 3428 soc 100.0 2026-08-15 00:00:29.202979: Charging clipped start at 3560 with SoC 46%, end at 3460 with SoC 90%; SoC change 44% 2026-08-15 00:00:29.203027: Power added over 101 samples is 7.7kWh 2026-08-15 00:00:29.203057: Battery size sample accepted raw 17.44kWh adjusted 16.24kWh from 44% SoC over 101 minutes 2026-08-15 00:00:29.203206: Charge start 2850 soc 45.65 end 2847 soc 45.65 2026-08-15 00:00:29.203271: Charge start 2760 soc 42.0 end 2756 soc 42.0 2026-08-15 00:00:29.203441: Charge start 2175 soc 19.0 end 2163 soc 22.05 2026-08-15 00:00:29.203499: Charge start 2070 soc 22.0 end 2052 soc 27.55 2026-08-15 00:00:29.203529: Charging clipped start at 2065 with SoC 23%, end at 2055 with SoC 27%; SoC change 4% 2026-08-15 00:00:29.203581: Charge start 2040 soc 31.0 end 1947 soc 68.55 2026-08-15 00:00:29.203614: Charging clipped start at 2030 with SoC 33%, end at 1950 with SoC 68%; SoC change 35% 2026-08-15 00:00:29.203670: Power added over 81 samples is 6.2kWh 2026-08-15 00:00:29.203704: Battery size sample accepted raw 17.58kWh adjusted 16.37kWh from 35% SoC over 81 minutes 2026-08-15 00:00:29.203854: Charge start 1406 soc 9.8 end 1397 soc 9.65 2026-08-15 00:00:29.203897: Charge start 1372 soc 9.45 end 1364 soc 10.3 2026-08-15 00:00:29.203938: Charge start 1336 soc 9.65 end 1327 soc 9.8 2026-08-15 00:00:29.203977: Charge start 1300 soc 9.0 end 1291 soc 9.3 2026-08-15 00:00:29.204012: Charge start 1289 soc 11.55 end 1270 soc 19.9 2026-08-15 00:00:29.204041: Charging clipped start at 1285 with SoC 13%, end at 1270 with SoC 19%; SoC change 6% 2026-08-15 00:00:29.204154: Charge start 890 soc 8.9 end 882 soc 9.6 2026-08-15 00:00:29.204194: Charge start 847 soc 9.05 end 838 soc 10.05 2026-08-15 00:00:29.204278: Charge start 802 soc 9.0 end 794 soc 10.3 2026-08-15 00:00:29.204352: Charge start 764 soc 9.05 end 755 soc 11.05 2026-08-15 00:00:29.204405: Charge start 712 soc 9.0 end 704 soc 10.211 2026-08-15 00:00:29.204440: Charge start 694 soc 12.1 end 693 soc 12.1 2026-08-15 00:00:29.204506: Charge start 660 soc 13.0 end 541 soc 61.65 2026-08-15 00:00:29.204542: Charging clipped start at 650 with SoC 15%, end at 545 with SoC 61%; SoC change 46% 2026-08-15 00:00:29.204606: Power added over 106 samples is 8.0kWh 2026-08-15 00:00:29.204661: Battery size sample accepted raw 17.48kWh adjusted 16.27kWh from 46% SoC over 106 minutes 2026-08-15 00:00:29.204713: Charge start 510 soc 63.0 end 482 soc 72.85 2026-08-15 00:00:29.204746: Charging clipped start at 505 with SoC 64%, end at 485 with SoC 72%; SoC change 8% 2026-08-15 00:00:29.204928: Estimated battery size is 16.39kWh from 10 selected samples, 16 accepted samples, 10 rejected samples, median 16.32kWh (assumed charging loss factor 0.9, rejects {'soc_change_too_small': 10}) 2026-08-15 00:00:29.217721: Inverter 0 battery size tracking: found_size 16.39 kWh, history {'2026-08-15': 16.39, '2026-08-14': 16.42, '2026-08-13': 16.48, '2026-08-12': 16.49, '2026-08-11': 16.47, '2026-08-10': 16.37, '2026-08-09': 16.4}, trimmed_mean 16.43 kWh, degradation -2.70%, configured battery_scaling 100% (configured degradation 0%) 2026-08-15 00:00:29.227766: Reserve min: 7%, battery_min: 7% 2026-08-15 00:00:29.227922: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 00:00:29.228227: Inverter 0 SoC: 1.66kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1678W, current battery voltage 51.2V, grid power -54W, load power 1735W, PV Power 0W 2026-08-15 00:00:29.228389: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:00:29.228481: Inverter 0 scheduled charge enable is False 2026-08-15 00:00:29.228509: Inverter 0 charge windows currently [] 2026-08-15 00:00:29.228534: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 00:00:29.228665: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:00:29.228706: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:00:29.228744: Inverter 0 scheduled discharge enable is False 2026-08-15 00:00:29.228868: Inverter 0 idle time is 08-15 15:55:00-08-15 23:59:00 2026-08-15 00:00:29.228905: Inverter 0 discharge windows currently [] 2026-08-15 00:00:29.228994: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:00:29.229045: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:00:29.229067: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:00:29.292145: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 00:00:29.292260: Plan was last updated on 2026-08-14 23:55:00+01:00 and is now 5.0 minutes old 2026-08-15 00:00:29.292289: Force recompute due to start of day 2026-08-15 00:00:29.292318: Recompute, previous plan is invalid... 2026-08-15 00:00:29.295505: Best charge window [ 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0% ] 2026-08-15 00:00:29.295601: Best export window [ ] 2026-08-15 00:00:29.296369: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:00:29.299441: Load divergence over 8.0 hours mean 454.63W, min 290.4W, max 1000.8W, std dev 83.58W, divergence 9.19% 2026-08-15 00:00:29.313175: Calculating data from yesterday for savings calculation 2026-08-15 00:00:29.324834: Yesterday basic charge window best: [{'start': 840, 'end': 870, 'average': 21.7}] charge limit best: [16.0] based on max charge slots 1 2026-08-15 00:00:29.367190: predict yesterday end_record 08-16 00:00:00, final soc 1.12kWh, metric 847.94p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:00:00, load 26.35kWh, PV 0.0kWh 2026-08-15 00:00:29.378270: predict yesterday10 end_record 08-16 00:00:00, final soc 1.12kWh, metric 852.22p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:00:00, load 26.35kWh, PV 0.0kWh 2026-08-15 00:00:29.393582: predict yesterday end_record 08-16 00:00:00, final soc 1.12kWh, metric 847.94p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:00:00, load 26.35kWh, PV 0.0kWh 2026-08-15 00:00:29.419512: Yesterday: Predbat disabled was £8.48 (adjusted £8.35) vs £7.38 (adjusted £7.17), saving £1.1 (adjusted £1.18) with import 26.68kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 13.25kWh 2026-08-15 00:00:29.478663: predict yesterday end_record 08-16 00:00:00, final soc 0.0kWh, metric 856.57p, metric_keep 0kWh, min_soc 0kWh @ 08-15 00:00:00, load 26.35kWh, PV 0.0kWh 2026-08-15 00:00:29.478788: Yesterday: No Battery/PV system cost predicted was £8.57 (adjusted £8.57) vs £7.38 (adjusted £7.17), saving £1.18 (adjusted £1.4) with import 26.35kWh, export 0kWh and battery_value 0.0kWh 2026-08-15 00:00:29.489990: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:00:29.490103: LoadML is_calculating False 2026-08-15 00:00:29.490162: Creating pool of 12 processes to match your CPU count 2026-08-15 00:00:29.573576: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-15 00:00:29.575614: Optimise levels pass started at 2026-08-15 00:00:29 2026-08-15 00:00:29.575688: Optimise all windows, total charge 94 export 1 2026-08-15 00:00:30.500223: >> Region optimisation pass width 960 gives best_metric 706.97p, best_cost 711.78p, best_cycle 45.5kWh, best_import 41.33kWh 2026-08-15 00:00:31.051216: >> Region optimisation pass width 480 gives best_metric 704.86p, best_cost 712.47p, best_cycle 44.19kWh, best_import 41.24kWh 2026-08-15 00:00:31.585157: >> Region optimisation pass width 240 gives best_metric 704.86p, best_cost 712.47p, best_cycle 44.19kWh, best_import 41.24kWh 2026-08-15 00:00:32.676827: >> Region optimisation pass width 120 gives best_metric 704.86p, best_cost 712.47p, best_cycle 44.19kWh, best_import 41.24kWh 2026-08-15 00:00:32.677324: Calculated end_record as 08-16 11:30:00 based on best_price 16.34p, next_charge_start 08-15 11:30:00, max_windows 70 2026-08-15 00:00:32.677423: Optimise levels pass ended at 2026-08-15 00:00:32, duration 3.1 seconds tried 304 combinations 2026-08-15 00:00:32.677501: Set best_price_charge_level 17.6p, best_price_export_level 0p, best_price_charge 16.34p, best_cost_export 0p, best_metric 704.86p, best_keep 0kWh, best_cycle 44.19kWh, best_carbon 0kg, best_import 41.24kWh 2026-08-15 00:00:32.700724: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 16.34p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-15 00:00:36.960016: Tweak plan optimisation started metric 557.19p, cost 565.1p 2026-08-15 00:00:37.216519: Tweak optimisation finished metric 557.19p, cost 565.1p, metric_keep 0kWh, cycle 31.05kWh, carbon 0kg, import 31.37kWh, changed 8 window(s) 2026-08-15 00:00:37.236799: Swap charge optimisation started metric 557.19p, cost 565.1p, min_improvement_swap 0.1p 2026-08-15 00:00:45.016159: Swap charge optimisation finished metric 557.19p, cost 565.1p 2026-08-15 00:00:45.124598: Pruned 1 dead plan slot(s) in 11 trial(s), nominal metric 551.86p -> 551.86p, plan now metric 557.2p, cost 565.1p, cycle 31.05kWh, import 31.37kWh 2026-08-15 00:00:45.134763: Raw charge windows [ 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100% ] reserve 1.12 2026-08-15 00:00:45.135288: Unclipped charge windows [ 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:00:00 @ 29.2p 100% ] reserve 1.12 2026-08-15 00:00:45.135567: Unfiltered charge windows [ 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:00:00 @ 29.2p 100% ] reserve 1.12 2026-08-15 00:00:45.135802: Filtered charge windows [ 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:00:00 @ 29.2p 100% ] reserve 1.12 2026-08-15 00:00:45.136444: Plan valid is now true after recompute was False 2026-08-15 00:00:45.160367: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 842.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:20:00, load 29.69kWh, PV 0.0kWh 2026-08-15 00:00:45.266900: Battery has 0.33 hours left - now at 1.66kWh 2026-08-15 00:00:45.311109: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 877.98p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:20:00, load 31.1kWh, PV 0.0kWh 2026-08-15 00:00:45.390205: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 700.7p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:20:00, load 31.1kWh, PV 0.0kWh 2026-08-15 00:00:45.476008: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 665.07p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:20:00, load 29.69kWh, PV 0.0kWh 2026-08-15 00:00:45.476126: Saving plan best values to HA entities 2026-08-15 00:00:45.659954: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 00:00:45.666012: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 00:00:45.671629: Best charging limit SoC's [1.5, 16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.36kWh, house 10.01kWh, export 0.0kWh, metric 665.07p, metric10 700.7p 2026-08-15 00:00:45.743414: Marginal costs baseline metric (no standing charge): 565.1045 2026-08-15 00:00:46.001565: Marginal energy costs matrix computed: min=16.67 max=27.83 2026-08-15 00:00:46.081713: Rate array import [{'start': 0, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 28.5p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2130, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 0, 'end': 2130, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 00:00:46.082389: - Your estimated bill for today is £5.95 2026-08-15 00:00:46.082434: - Import rates are expensive (24.6p - 28.5p) for the next 7 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 00:00:46.082457: - The battery is currently at 10% and is in eco mode for the next 7 hours. 2026-08-15 00:00:46.082474: - For the next 48 hours there will be no solar generation. 2026-08-15 00:00:46.082494: - You will run out of battery in 20 minutes. 2026-08-15 00:00:46.082520: - Your next charge slot will be in 7 hours where import rates will be cheap (22.7p). 2026-08-15 00:00:46.082539: 2026-08-15 00:00:46.138076: Plan calculation took 16.85 seconds 2026-08-15 00:00:46.142298: Saved plan to storage 2026-08-15 00:00:46.145481: No high rate period found 2026-08-15 00:00:46.196942: Import threshold used for optimisation was 22.73p 2026-08-15 00:00:46.249714: Low import rate windows [0: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 1: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 2: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 3: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 4: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 5: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 6: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 7: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 8: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 9: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 10: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 11: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 12: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 13: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 14: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 15: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 16: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 17: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 18: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 19: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 20: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 21: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 22: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 23: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 24: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 25: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 26: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 27: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 28: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 29: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 30: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 31: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 32: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 33: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 34: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 35: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 36: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 37: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 38: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 39: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 40: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 41: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 42: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 43: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 44: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 45: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 46: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 47: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 48: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 49: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 50: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 51: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 52: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 53: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 54: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 55: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 56: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 57: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 58: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 59: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 60: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 61: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 62: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 63: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 64: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 65: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 66: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 67: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 68: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 69: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 70: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 71: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 72: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 73: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 74: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 75: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 76: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 77: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 78: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 79: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 80: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 81: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 82: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 83: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 84: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 85: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 86: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 87: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 88: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 89: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 90: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 91: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 92: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 93: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09] 2026-08-15 00:00:46.257602: Inverter 0: Type SK Sunsynk 2026-08-15 00:00:46.257710: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 00:00:46.257958: Reserve min: 7%, battery_min: 7% 2026-08-15 00:00:46.258044: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 00:00:46.258389: Inverter 0 SoC: 1.66kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1678W, current battery voltage 51.2V, grid power -54W, load power 1735W, PV Power 0W 2026-08-15 00:00:46.258695: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:00:46.258808: Inverter 0 scheduled charge enable is False 2026-08-15 00:00:46.258843: Inverter 0 charge windows currently [] 2026-08-15 00:00:46.258873: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 00:00:46.259015: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:00:46.259050: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:00:46.259114: Inverter 0 scheduled discharge enable is False 2026-08-15 00:00:46.259271: Inverter 0 idle time is 08-15 15:55:00-08-15 23:59:00 2026-08-15 00:00:46.259309: Inverter 0 discharge windows currently [] 2026-08-15 00:00:46.259332: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:00:46.259355: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:00:46.259372: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:00:46.307370: Inverter 0 Charge window will be: 2026-08-15 07:00:00+01:00 - 2026-08-15 07:30:00+01:00 - current SoC 10%, target 9% 2026-08-15 00:00:46.307511: Inverter 0 disabled charge window while waiting for schedule (now 08-15 00:00:00 target set_window_minutes 30 charge start time 08-15 07:00:00) original inverter start time 08-17 00:00:00 2026-08-15 00:00:46.307583: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:00:46.307858: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:00:46.307966: Inverter 0 set new demand (idle) start time to 00:00:00 was 15:55:00 2026-08-15 00:00:51.314741: Inverter 0 write_and_poll_value: Wrote 00:00:00 to idle_start_time, successfully now 00:00:00 2026-08-15 00:00:51.314900: No export window planned 2026-08-15 00:00:51.315116: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 00:00:51.315161: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:00:51.315388: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:00:51.315628: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 00:00:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 00:00:51.315717: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 00:00:51.315789: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 00:00:51.315900: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:00:51.315944: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:00:51.315968: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:00:51.315993: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:00:51.316014: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:00:51.316033: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:00:51.316060: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:00:51.316107: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:00:51.316132: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:00:51.316152: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:00:51.316171: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:00:51.316194: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:00:51.316213: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:00:51.316240: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:00:51.316281: Inverter 0 count register writes 0 2026-08-15 00:00:51.336937: Total inverter register writes now 815 2026-08-15 00:00:51.369028: Error: Completed run status Demand with Errors reported (check log) 2026-08-15 00:00:51.375626: Saved current settings to /config/predbat_config.json 2026-08-15 00:00:51.400357: Starting comparison of tariffs 2026-08-15 00:00:51.400472: Compare tariff current starting SoC: 4.71 kWh 2026-08-15 00:00:51.400512: Compare Tariff: Current Tariff 2026-08-15 00:00:51.400626: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 00:00:51.400724: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 00:00:51.400888: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 00:00:51.401477: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 00:00:51.401618: Predbat mode is set to Control charge & discharge 2026-08-15 00:00:51.597118: Found 21602 load_today datapoints going back 27 days 2026-08-15 00:00:51.597284: Using load_power data to fill gaps in load_today data 2026-08-15 00:00:52.519699: Processing 721 30-minute periods for power integration 2026-08-15 00:00:52.713460: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 00:00:52.713599: Car charging hold False, threshold 6.0kWh 2026-08-15 00:00:52.713663: Current data so far today: load 0.0kWh, import 0.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 00:00:52.731993: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 00:00:52.732348: Standing charge is set to 49.98p 2026-08-15 00:00:52.760572: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 00:00:52.760722: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 00:00:52.761059: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 0.8 minutes 2026-08-15 00:00:52.761695: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 0.5 minutes 2026-08-15 00:00:52.766022: Loaded 47 datapoints of futurerate analysis 2026-08-15 00:00:52.879050: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 00:00:52.949951: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 00:00:52.950564: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 00:00:52.995793: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 00:00:52.996115: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 00:00:52.997565: High export rate found rates in range 99p to -99p 2026-08-15 00:00:53.072635: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 00:00:53.073093: Car 0 charging is not planned as it is not plugged in 2026-08-15 00:00:53.086366: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 00:00:53.156051: Using weighted-bucket historical load forecast over 14 days 2026-08-15 00:00:53.199857: Using existing rate import data 2026-08-15 00:00:53.199978: Using existing rate export data 2026-08-15 00:00:53.208259: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 00:00:53.208548: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 00:00:53.213057: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 00:00:53.213567: Rate thresholds (for charge/export) are import 43.32p (0p), export -0.1p (0p) 2026-08-15 00:00:53.225549: Running scenario for tariff: Current Tariff 2026-08-15 00:00:53.225743: Recompute is saving previous plan... 2026-08-15 00:00:53.228731: Best charge window [ 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0% ] 2026-08-15 00:00:53.228806: Best export window [ ] 2026-08-15 00:00:53.229630: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:00:53.232693: Load divergence over 8.0 hours mean 454.63W, min 290.4W, max 1000.8W, std dev 83.58W, divergence 9.19% 2026-08-15 00:00:53.250528: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:00:53.250633: LoadML is_calculating False 2026-08-15 00:00:53.250719: Creating pool of 12 processes to match your CPU count 2026-08-15 00:00:53.344767: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-15 00:00:53.347554: Optimise levels pass started at 2026-08-15 00:00:53 2026-08-15 00:00:53.347619: Optimise all windows, total charge 94 export 1 2026-08-15 00:00:54.738435: >> Region optimisation pass width 960 gives best_metric 630.97p, best_cost 635.89p, best_cycle 48.46kWh, best_import 38.48kWh 2026-08-15 00:00:55.697104: >> Region optimisation pass width 480 gives best_metric 628.87p, best_cost 636.57p, best_cycle 47.15kWh, best_import 38.39kWh 2026-08-15 00:00:56.763223: >> Region optimisation pass width 240 gives best_metric 628.29p, best_cost 636.57p, best_cycle 47.15kWh, best_import 38.39kWh 2026-08-15 00:00:58.167086: >> Region optimisation pass width 120 gives best_metric 628.29p, best_cost 636.57p, best_cycle 47.15kWh, best_import 38.39kWh 2026-08-15 00:00:58.167482: Calculated end_record as 08-17 00:00:00 based on best_price 16.34p, next_charge_start 08-15 11:30:00, max_windows 94 2026-08-15 00:00:58.167550: Optimise levels pass ended at 2026-08-15 00:00:58, duration 4.8 seconds tried 378 combinations 2026-08-15 00:00:58.167611: Set best_price_charge_level 17.6p, best_price_export_level 0p, best_price_charge 16.34p, best_cost_export 0p, best_metric 628.29p, best_keep 0kWh, best_cycle 47.15kWh, best_carbon 0kg, best_import 38.39kWh 2026-08-15 00:00:58.185556: Starting detailed optimisation end_record 08-17 00:00:00, best_price_charge 16.34p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7.5, 7.5, 7.5, 6.75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]kWh and export limits []kWh 2026-08-15 00:01:09.483224: Tweak plan optimisation started metric 626.01p, cost 634.05p 2026-08-15 00:01:09.816410: Tweak optimisation finished metric 626.01p, cost 634.05p, metric_keep 0kWh, cycle 46.65kWh, carbon 0kg, import 38.35kWh, changed 8 window(s) 2026-08-15 00:01:09.837746: Swap charge optimisation started metric 626.01p, cost 634.05p, min_improvement_swap 0.1p 2026-08-15 00:01:21.228349: Swap charge optimisation finished metric 626.01p, cost 634.05p 2026-08-15 00:01:21.423799: Pruned 3 dead plan slot(s) in 17 trial(s), nominal metric 619.17p -> 619.17p, plan now metric 626.66p, cost 634.05p, cycle 46.65kWh, import 38.35kWh 2026-08-15 00:01:21.436219: Raw charge windows [ 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 7%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 7%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 47%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0% ] reserve 1.12 2026-08-15 00:01:21.436875: Unclipped charge windows [ 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 7%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 7%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 14:00:00 - 16-08 15:00:00 @ 14.17p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 47% ] reserve 1.12 2026-08-15 00:01:21.437310: Unfiltered charge windows [ 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 7%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 7%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 14:00:00 - 16-08 15:00:00 @ 14.17p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 47% ] reserve 1.12 2026-08-15 00:01:21.437612: Filtered charge windows [ 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 7%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 7%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 14:00:00 - 16-08 15:00:00 @ 14.17p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 47% ] reserve 1.12 2026-08-15 00:01:21.477419: Previous plan best metric is 789.08 (cost 971.84) and new plan best metric is 626.01 (cost 634.05) 2026-08-15 00:01:21.477617: New plan metric is significantly better from previous plan, using new plan 2026-08-15 00:01:21.477678: Plan valid is now true after recompute was False 2026-08-15 00:01:21.513266: Best charging limit SoC's [1.12, 1.5, 16.0, 1.12, 4.0, 16.0, 16.0, 7.5]kWh, export []kWh gives import battery 29.62kWh, house 8.73kWh, export 0.0kWh, metric 634.05p, metric10 682.33p 2026-08-15 00:01:21.528268: Plan calculation took 28.30 seconds 2026-08-15 00:01:21.558095: predict compare end_record 08-16 00:00:00, final soc 7.47kWh, metric 469.66p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:20:00, load 22.67kWh, PV 0.0kWh 2026-08-15 00:01:21.572903: Scenario complete for tariff: Current Tariff, cost 469.66p, metric 440.1p 2026-08-15 00:01:21.573086: Compare, best tariff: igo_fixed metric 240.38p 2026-08-15 00:01:21.902067: Compare tariff igo_fixed starting SoC: 1.12 kWh 2026-08-15 00:01:21.902160: Compare Tariff: Intelligent GO 2026-08-15 00:01:21.902334: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 00:01:21.902465: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 00:01:21.902741: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 00:01:21.903397: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 00:01:21.903593: Predbat mode is set to Control charge & discharge 2026-08-15 00:01:22.093751: Found 21602 load_today datapoints going back 27 days 2026-08-15 00:01:22.093891: Using load_power data to fill gaps in load_today data 2026-08-15 00:01:22.870871: Processing 721 30-minute periods for power integration 2026-08-15 00:01:23.068023: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 00:01:23.068155: Car charging hold False, threshold 6.0kWh 2026-08-15 00:01:23.068197: Current data so far today: load 0.0kWh, import 0.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 00:01:23.086828: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 00:01:23.087398: Standing charge is set to 49.98p 2026-08-15 00:01:23.116215: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 00:01:23.116323: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 00:01:23.116534: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 1.3 minutes 2026-08-15 00:01:23.116940: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 1.0 minutes 2026-08-15 00:01:23.119980: Loaded 47 datapoints of futurerate analysis 2026-08-15 00:01:23.211453: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 00:01:23.264124: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 00:01:23.264606: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 00:01:23.307754: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 00:01:23.307869: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 00:01:23.309199: High export rate found rates in range 99p to -99p 2026-08-15 00:01:23.385182: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 00:01:23.385324: Car 0 charging is not planned as it is not plugged in 2026-08-15 00:01:23.397136: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 00:01:23.454089: Using weighted-bucket historical load forecast over 14 days 2026-08-15 00:01:23.490780: Octopus: Download Octopus rates from https://api.octopus.energy/v1/products/INTELLI-FIX-12M-26-06-13/electricity-tariffs/E-1R-INTELLI-FIX-12M-26-06-13-G/standard-unit-rates/ 2026-08-15 00:01:24.416939: Using existing rate export data 2026-08-15 00:01:24.447022: Rate min forward looking: now 8.0p at end of forecast 8.0p 2026-08-15 00:01:24.447371: Import rates: min 8.0p, max 33.75p, average 27.31p 2026-08-15 00:01:24.452199: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 00:01:24.452274: Rate thresholds (for charge/export) are import 33.25p (0p), export -0.1p (0p) 2026-08-15 00:01:24.453257: Compare rate import is different, minute 0 changed from 28.4655 to 8.0 2026-08-15 00:01:24.453349: Running scenario for tariff: Intelligent GO 2026-08-15 00:01:24.453501: Recompute is saving previous plan... 2026-08-15 00:01:24.454433: Best charge window [ 15-08 00:00:00 - 15-08 00:30:00 @ 8.0p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 8.0p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 8.0p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 8.0p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 8.0p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 8.0p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 8.0p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 8.0p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 8.0p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 8.0p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 8.0p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 8.0p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 8.0p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 8.0p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 8.0p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 8.0p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 8.0p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 8.0p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 8.0p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 8.0p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 8.0p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 8.0p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 8.0p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 8.0p 0% ] 2026-08-15 00:01:24.454481: Best export window [ ] 2026-08-15 00:01:24.455303: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:01:24.458556: Load divergence over 8.0 hours mean 454.63W, min 290.4W, max 1000.8W, std dev 83.58W, divergence 9.19% 2026-08-15 00:01:24.477214: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:01:24.477306: LoadML is_calculating False 2026-08-15 00:01:24.477373: Creating pool of 12 processes to match your CPU count 2026-08-15 00:01:24.554353: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-15 00:01:24.555232: Optimise levels pass started at 2026-08-15 00:01:24 2026-08-15 00:01:24.555281: Optimise all windows, total charge 24 export 1 2026-08-15 00:01:25.084094: >> Region optimisation pass width 960 gives best_metric 400.67p, best_cost 403.63p, best_cycle 55.48kWh, best_import 42.5kWh 2026-08-15 00:01:25.228787: >> Region optimisation pass width 480 gives best_metric 400.67p, best_cost 403.63p, best_cycle 55.48kWh, best_import 42.5kWh 2026-08-15 00:01:25.867196: >> Region optimisation pass width 240 gives best_metric 400.67p, best_cost 403.63p, best_cycle 55.48kWh, best_import 42.5kWh 2026-08-15 00:01:26.422175: >> Region optimisation pass width 120 gives best_metric 400.67p, best_cost 403.63p, best_cycle 55.48kWh, best_import 42.5kWh 2026-08-15 00:01:26.422417: Calculated end_record as 08-17 00:00:00 based on best_price 8.0p, next_charge_start 08-15 00:00:00, max_windows 24 2026-08-15 00:01:26.422483: Optimise levels pass ended at 2026-08-15 00:01:26, duration 1.9 seconds tried 82 combinations 2026-08-15 00:01:26.422547: Set best_price_charge_level 8.6p, best_price_export_level 0p, best_price_charge 8.0p, best_cost_export 0p, best_metric 400.67p, best_keep 0kWh, best_cycle 55.48kWh, best_carbon 0kg, best_import 42.5kWh 2026-08-15 00:01:26.442555: Starting detailed optimisation end_record 08-17 00:00:00, best_price_charge 8.0p, best_price_export 0p. lowest_price_charge 8.0p with charge limits [16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 0.0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 14.0, 14.0, 14.0, 0]kWh and export limits []kWh 2026-08-15 00:01:31.955485: Tweak plan optimisation started metric 400.67p, cost 403.63p 2026-08-15 00:01:32.300506: Tweak optimisation finished metric 400.67p, cost 403.63p, metric_keep 0kWh, cycle 55.48kWh, carbon 0kg, import 42.5kWh, changed 8 window(s) 2026-08-15 00:01:32.321562: Swap charge optimisation started metric 400.67p, cost 403.63p, min_improvement_swap 0.1p 2026-08-15 00:01:33.756602: Swap charge optimisation finished metric 400.67p, cost 403.63p 2026-08-15 00:01:33.914225: Pruned 3 dead plan slot(s) in 16 trial(s), nominal metric 395.47p -> 395.47p, plan now metric 409.02p, cost 403.63p, cycle 55.48kWh, import 42.5kWh 2026-08-15 00:01:33.923183: Raw charge windows [ 15-08 00:00:00 - 15-08 00:30:00 @ 8.0p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 8.0p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 8.0p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 8.0p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 8.0p 100%, 15-08 02:30:00 - 15-08 03:00:00 @ 8.0p 100%, 15-08 03:00:00 - 15-08 03:30:00 @ 8.0p 100%, 15-08 03:30:00 - 15-08 04:00:00 @ 8.0p 100%, 15-08 04:00:00 - 15-08 04:30:00 @ 8.0p 100%, 15-08 04:30:00 - 15-08 05:00:00 @ 8.0p 100%, 15-08 05:00:00 - 15-08 05:30:00 @ 8.0p 100%, 15-08 23:30:00 - 16-08 00:00:00 @ 8.0p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 8.0p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 8.0p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 8.0p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 8.0p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 8.0p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 8.0p 100%, 16-08 03:00:00 - 16-08 03:30:00 @ 8.0p 100%, 16-08 03:30:00 - 16-08 04:00:00 @ 8.0p 100%, 16-08 04:00:00 - 16-08 04:30:00 @ 8.0p 88%, 16-08 04:30:00 - 16-08 05:00:00 @ 8.0p 88%, 16-08 05:00:00 - 16-08 05:30:00 @ 8.0p 88%, 16-08 23:30:00 - 17-08 00:00:00 @ 8.0p 0% ] reserve 1.12 2026-08-15 00:01:33.923464: Unclipped charge windows [ 15-08 02:00:00 - 15-08 05:30:00 @ 8.0p 100%, 16-08 02:30:00 - 16-08 04:00:00 @ 8.0p 100%, 16-08 04:00:00 - 16-08 05:30:00 @ 8.0p 88% ] reserve 1.12 2026-08-15 00:01:33.923651: Unfiltered charge windows [ 15-08 02:00:00 - 15-08 05:30:00 @ 8.0p 100%, 16-08 02:30:00 - 16-08 04:00:00 @ 8.0p 100%, 16-08 04:00:00 - 16-08 05:30:00 @ 8.0p 88% ] reserve 1.12 2026-08-15 00:01:33.923836: Filtered charge windows [ 15-08 02:00:00 - 15-08 05:30:00 @ 8.0p 100%, 16-08 02:30:00 - 16-08 04:00:00 @ 8.0p 100%, 16-08 04:00:00 - 16-08 05:30:00 @ 8.0p 88% ] reserve 1.12 2026-08-15 00:01:33.955600: Previous plan best metric is 1263.09 (cost 1264.97) and new plan best metric is 400.67 (cost 403.63) 2026-08-15 00:01:33.955784: New plan metric is significantly better from previous plan, using new plan 2026-08-15 00:01:33.955830: Plan valid is now true after recompute was False 2026-08-15 00:01:33.984718: Best charging limit SoC's [16.0, 16.0, 14.0]kWh, export []kWh gives import battery 34.64kWh, house 7.85kWh, export 0.0kWh, metric 403.63p, metric10 493.45p 2026-08-15 00:01:33.999589: Plan calculation took 9.55 seconds 2026-08-15 00:01:34.034357: predict compare end_record 08-16 00:00:00, final soc 1.12kWh, metric 262.01p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:00:00, load 22.67kWh, PV 0.0kWh 2026-08-15 00:01:34.054533: Scenario complete for tariff: Intelligent GO, cost 262.01p, metric 270.76p 2026-08-15 00:01:34.054675: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 00:02:11.548903: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:02:11.549281: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:02:11.549348: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:02:11.549663: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:02:11.549719: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:02:11.549749: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:02:11.549791: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:04:11.771497: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:04:11.771865: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:04:11.771941: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:04:11.772158: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:04:11.772193: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:04:11.772235: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:04:11.772249: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:05:00.897626: --------------- PredBat - update at 2026-08-15 00:05:00+01:00 with clock skew 0 minutes, minutes now 5 2026-08-15 00:05:00.898634: Saved current settings to /config/predbat_config.json 2026-08-15 00:05:00.898766: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 5.0 minutes 2026-08-15 00:05:00.898888: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 00:05:00.898986: Autoupdate: Currently up to date 2026-08-15 00:05:00.918467: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 00:05:00.918595: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 00:05:00.918786: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 00:05:00.919344: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 00:05:00.919471: Predbat mode is set to Control charge & discharge 2026-08-15 00:05:01.091704: Found 21602 load_today datapoints going back 27 days 2026-08-15 00:05:01.091853: Using load_power data to fill gaps in load_today data 2026-08-15 00:05:01.860990: Processing 721 30-minute periods for power integration 2026-08-15 00:05:02.026022: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 00:05:02.026152: Car charging hold False, threshold 6.0kWh 2026-08-15 00:05:02.026192: Current data so far today: load 0.15kWh, import 0.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 00:05:02.043416: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 00:05:02.043759: Standing charge is set to 49.98p 2026-08-15 00:05:02.074771: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 00:05:02.074893: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 00:05:02.075134: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 5.0 minutes 2026-08-15 00:05:02.075648: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 4.7 minutes 2026-08-15 00:05:02.079391: Loaded 47 datapoints of futurerate analysis 2026-08-15 00:05:02.201360: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 00:05:02.274671: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 00:05:02.275233: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 00:05:02.325397: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 00:05:02.325542: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 00:05:02.326910: High export rate found rates in range 99p to -99p 2026-08-15 00:05:02.422739: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 00:05:02.422922: Car 0 charging is not planned as it is not plugged in 2026-08-15 00:05:02.437241: Battery level now 1.66kWh, -1hr ago 3.35kWh, at midnight 1.66kWh, battery value change in the last hour -20.06p, change today 0.0p, rate_forward 11.83p 2026-08-15 00:05:02.437648: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.7kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 00:05:02.488736: Today's energy total net 0.0kWh, import 0.0kWh, export 0.0kWh, cost 49.98p, import 0.0p, export 0.0p, carbon 0.0kg 2026-08-15 00:05:02.488871: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 00:05:02.565083: Using weighted-bucket historical load forecast over 14 days 2026-08-15 00:05:02.585196: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 00:05:02.585293: Today's predicted so far 0.05kWh with 0.0kWh car/iBoost excluded, 0kWh import ignored, and 0.05kWh forecast extra. 2026-08-15 00:05:02.585321: Today's actual load so far 0.15kWh with 0.0kWh car/iBoost excluded, and 0kWh import ignored. 2026-08-15 00:05:02.627194: Inverter 0: Type SK Sunsynk 2026-08-15 00:05:02.627296: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 00:05:02.627517: Reserve min: 7%, battery_min: 7% 2026-08-15 00:05:02.627625: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 00:05:02.627916: Inverter 0 SoC: 1.66kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1670W, current battery voltage 51.2V, grid power -54W, load power 1727W, PV Power 0W 2026-08-15 00:05:02.628086: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:05:02.628186: Inverter 0 scheduled charge enable is False 2026-08-15 00:05:02.628226: Inverter 0 charge windows currently [] 2026-08-15 00:05:02.628254: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 00:05:02.628370: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:05:02.628407: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:05:02.628444: Inverter 0 scheduled discharge enable is False 2026-08-15 00:05:02.628575: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:05:02.628635: Inverter 0 discharge windows currently [] 2026-08-15 00:05:02.628660: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:05:02.628688: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:05:02.628706: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:05:02.691049: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 00:05:02.691202: Plan was last updated on 2026-08-15 00:00:00+01:00 and is now 5.0 minutes old 2026-08-15 00:05:02.691522: Best charge window [ 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:00:00 @ 29.2p 100% ] 2026-08-15 00:05:02.691567: Best export window [ ] 2026-08-15 00:05:02.692797: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:05:02.698183: Load divergence over 8.0 hours mean 459.16W, min 269.4W, max 1041.6W, std dev 94.76W, divergence 10.32% 2026-08-15 00:05:02.714892: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:05:02.715014: LoadML is_calculating False 2026-08-15 00:05:02.715074: Creating pool of 12 processes to match your CPU count 2026-08-15 00:05:02.820225: predict base end_record 08-17 00:05:00, final soc 1.12kWh, metric 1125.7p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:20:00, load 38.61kWh, PV 0.0kWh 2026-08-15 00:05:02.952250: Battery has 0.25 hours left - now at 1.66kWh 2026-08-15 00:05:03.003144: predict base10 end_record 08-17 00:05:00, final soc 1.12kWh, metric 1172.82p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:20:00, load 40.44kWh, PV 0.0kWh 2026-08-15 00:05:03.084882: predict best10 end_record 08-17 00:05:00, final soc 15.94kWh, metric 1238.44p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:20:00, load 40.44kWh, PV 0.0kWh 2026-08-15 00:05:03.173985: predict best end_record 08-17 00:05:00, final soc 15.94kWh, metric 1195.26p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:20:00, load 38.61kWh, PV 0.0kWh 2026-08-15 00:05:03.174087: Saving plan best values to HA entities 2026-08-15 00:05:03.351674: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 00:05:03.357839: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 00:05:03.363586: Best charging limit SoC's [1.5, 16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 46.16kWh, house 9.95kWh, export 0.0kWh, metric 1195.26p, metric10 1238.44p 2026-08-15 00:05:03.446748: Marginal costs baseline metric (no standing charge): 1095.2979 2026-08-15 00:05:03.777539: Marginal energy costs matrix computed: min=16.53 max=27.75 2026-08-15 00:05:03.881842: Rate array import [{'start': 5, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 28.5p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 2885, 'rate': 'expensive', 'range': '(27.8p - 32.9p)'}] export [{'start': 5, 'end': 2885, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 00:05:03.882750: - Your estimated bill for today is £5.96 and tomorrow is £5.50 2026-08-15 00:05:03.882814: - Import rates are expensive (24.6p - 28.5p) for the next 6 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 00:05:03.882838: - The battery is currently at 10% and is in eco mode for the next 6 hours. 2026-08-15 00:05:03.882882: - For the next 48 hours there will be no solar generation. 2026-08-15 00:05:03.882902: - You will run out of battery in 15 minutes. 2026-08-15 00:05:03.882919: - Your next charge slot will be in 6 hours where import rates will be cheap (22.7p). 2026-08-15 00:05:03.882939: 2026-08-15 00:05:03.961623: Plan calculation took 1.27 seconds 2026-08-15 00:05:03.965384: No high rate period found 2026-08-15 00:05:04.023322: Import threshold used for optimisation was 8.0p 2026-08-15 00:05:04.087870: Low import rate windows [0: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 1: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 2: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 3: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 4: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 5: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 6: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 7: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 8: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 9: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 10: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 11: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 12: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 13: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 14: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 15: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 16: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 17: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 18: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 19: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 20: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 21: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 22: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 23: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 24: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 25: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 26: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 27: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 28: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 29: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 30: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 31: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 32: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 33: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 34: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 35: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 36: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 37: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 38: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 39: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 40: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 41: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 42: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 43: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 44: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 45: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 46: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 47: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 48: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 49: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 50: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 51: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 52: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 53: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 54: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 55: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 56: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 57: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 58: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 59: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 60: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 61: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 62: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 63: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 64: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 65: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 66: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 67: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 68: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 69: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 70: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 71: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 72: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 73: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 74: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 75: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 76: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 77: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 78: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 79: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 80: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 81: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 82: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 83: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 84: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 85: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 86: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 87: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 88: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 89: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 90: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 91: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 92: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 93: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 94: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47] 2026-08-15 00:05:04.097747: Inverter 0 Charge window will be: 2026-08-15 07:00:00+01:00 - 2026-08-15 07:30:00+01:00 - current SoC 10%, target 9% 2026-08-15 00:05:04.097905: Inverter 0 disabled charge window while waiting for schedule (now 08-15 00:05:00 target set_window_minutes 30 charge start time 08-15 07:00:00) original inverter start time 08-17 00:00:00 2026-08-15 00:05:04.098049: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:05:04.098323: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:05:04.098416: No export window planned 2026-08-15 00:05:04.098531: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 00:05:04.098567: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:05:04.098726: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:05:04.098908: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 00:05:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 00:05:04.098973: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 00:05:04.099039: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 00:05:04.099140: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:05:04.099185: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:05:04.099218: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:05:04.099251: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:05:04.099277: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:05:04.099306: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:05:04.099331: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:05:04.099412: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:05:04.099451: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:05:04.099477: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:05:04.099503: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:05:04.099526: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:05:04.099571: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:05:04.099598: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:05:04.099663: Inverter 0 count register writes 0 2026-08-15 00:05:04.116931: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-15 00:05:04.122214: Total inverter register writes now 815 2026-08-15 00:05:04.154409: Info: Completed run status Demand 2026-08-15 00:05:04.449101: Info: record_status Demand 2026-08-15 00:05:04.460240: Saved current settings to /config/predbat_config.json 2026-08-15 00:05:04.460580: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 00:05:41.573659: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:05:41.573924: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:05:41.573974: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:05:41.574169: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:05:41.574231: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:05:41.574252: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:05:41.574270: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:07:41.794404: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:07:41.794705: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:07:41.794799: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:07:41.795027: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:07:41.795114: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:07:41.795160: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:07:41.795200: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:08:52.310887: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-15 00:08:53.188468: Processing 1297 30-minute periods for power integration 2026-08-15 00:08:53.276711: ML Component: Car charging hold False, car energy reported load False 2026-08-15 00:08:53.358130: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 00:08:53.452291: ML Temperature data points: 47516 2026-08-15 00:08:53.734046: ML Component: Fetched 7776 load data points, 27.0 days of history 2026-08-15 00:08:53.771221: ML Component: Data fetch completed, load data age 56.0 days, 16266 data points 2026-08-15 00:08:53.771359: ML Component: No training needed, model age is 1.02 hours 2026-08-15 00:08:53.771424: ML Component: Generating predictions load data age 56.0 days, 16266 data points 2026-08-15 00:08:53.909246: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0994 max_dow {0: 0.09899687486626207, 1: 0.10616562486607581, 2: 0.12051249983031302, 3: 0.1227374996352941, 4: 0.1701437503574416, 5: 0.10630000064577906, 6: 0.11264999961592256} 2026-08-15 00:08:54.428597: ML Component: Generated 576 predictions (total 41.86 kWh over 48h) 2026-08-15 00:08:54.470538: ML Component: Prediction cycle completed 2026-08-15 00:08:54.586339: ML Component: Saved 16266 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-15 00:09:42.005498: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:09:42.005951: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:09:42.006014: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:09:42.006191: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:09:42.006233: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:09:42.006254: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:09:42.006271: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:10:00.100299: --------------- PredBat - update at 2026-08-15 00:10:00+01:00 with clock skew 0 minutes, minutes now 10 2026-08-15 00:10:00.101179: Saved current settings to /config/predbat_config.json 2026-08-15 00:10:00.101335: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 10.0 minutes 2026-08-15 00:10:00.101457: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 00:10:00.101570: Autoupdate: Currently up to date 2026-08-15 00:10:00.122078: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 00:10:00.122213: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 00:10:00.122388: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 00:10:00.122938: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 00:10:00.123062: Predbat mode is set to Control charge & discharge 2026-08-15 00:10:00.325652: Found 21602 load_today datapoints going back 28 days 2026-08-15 00:10:00.325802: Using load_power data to fill gaps in load_today data 2026-08-15 00:10:01.052760: Processing 721 30-minute periods for power integration 2026-08-15 00:10:01.213380: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 00:10:01.213505: Car charging hold False, threshold 6.0kWh 2026-08-15 00:10:01.213539: Current data so far today: load 0.0kWh, import 0.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 00:10:01.228318: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 00:10:01.228659: Standing charge is set to 49.98p 2026-08-15 00:10:01.254418: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 00:10:01.254527: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 00:10:01.254748: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 10.0 minutes 2026-08-15 00:10:01.255172: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 9.7 minutes 2026-08-15 00:10:01.258791: Loaded 47 datapoints of futurerate analysis 2026-08-15 00:10:01.370332: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 00:10:01.419164: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 00:10:01.419790: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 00:10:01.453406: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 00:10:01.453734: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 00:10:01.454837: High export rate found rates in range 99p to -99p 2026-08-15 00:10:01.514265: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 00:10:01.514385: Car 0 charging is not planned as it is not plugged in 2026-08-15 00:10:01.529052: Battery level now 1.66kWh, -1hr ago 3.05kWh, at midnight 1.66kWh, battery value change in the last hour -16.46p, change today 0.0p, rate_forward 11.83p 2026-08-15 00:10:01.529521: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 00:10:01.575653: Today's energy total net 0.0kWh, import 0.0kWh, export 0.0kWh, cost 49.98p, import 0.0p, export 0.0p, carbon 0.0kg 2026-08-15 00:10:01.575757: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 00:10:01.636845: Using weighted-bucket historical load forecast over 14 days 2026-08-15 00:10:01.656796: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 00:10:01.656896: Today's predicted so far 0.11kWh with 0.0kWh car/iBoost excluded, 0kWh import ignored, and 0.11kWh forecast extra. 2026-08-15 00:10:01.656928: Today's actual load so far 0.15kWh with 0.0kWh car/iBoost excluded, and 0kWh import ignored. 2026-08-15 00:10:01.693694: Inverter 0: Type SK Sunsynk 2026-08-15 00:10:01.693787: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 00:10:01.693977: Reserve min: 7%, battery_min: 7% 2026-08-15 00:10:01.694055: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 00:10:01.694321: Inverter 0 SoC: 1.43kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4477W, current battery voltage 51.2V, grid power -6589W, load power 1593W, PV Power 0W 2026-08-15 00:10:01.694476: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:10:01.694562: Inverter 0 scheduled charge enable is False 2026-08-15 00:10:01.694607: Inverter 0 charge windows currently [] 2026-08-15 00:10:01.694634: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 00:10:01.694744: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:10:01.694780: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:10:01.694815: Inverter 0 scheduled discharge enable is False 2026-08-15 00:10:01.694937: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:10:01.694974: Inverter 0 discharge windows currently [] 2026-08-15 00:10:01.694996: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:10:01.695014: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:10:01.695031: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:10:01.755318: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 00:10:01.755437: Plan was last updated on 2026-08-15 00:00:00+01:00 and is now 10.0 minutes old 2026-08-15 00:10:01.755787: Best charge window [ 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:00:00 @ 29.2p 100% ] 2026-08-15 00:10:01.755836: Best export window [ ] 2026-08-15 00:10:01.756684: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:10:01.759447: Load divergence over 8.0 hours mean 456.02W, min 268.2W, max 1026.0W, std dev 93.95W, divergence 10.3% 2026-08-15 00:10:01.775385: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:10:01.775496: LoadML is_calculating False 2026-08-15 00:10:01.775556: Creating pool of 12 processes to match your CPU count 2026-08-15 00:10:01.903989: predict base end_record 08-17 00:10:00, final soc 1.12kWh, metric 1129.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:20:00, load 38.39kWh, PV 0.0kWh 2026-08-15 00:10:02.023942: Battery has 0.17 hours left - now at 1.43kWh 2026-08-15 00:10:02.066296: predict base10 end_record 08-17 00:10:00, final soc 1.12kWh, metric 1176.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:20:00, load 40.22kWh, PV 0.0kWh 2026-08-15 00:10:02.136924: predict best10 end_record 08-17 00:10:00, final soc 15.87kWh, metric 1240.56p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:20:00, load 40.22kWh, PV 0.0kWh 2026-08-15 00:10:02.210756: predict best end_record 08-17 00:10:00, final soc 15.87kWh, metric 1197.6p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:20:00, load 38.39kWh, PV 0.0kWh 2026-08-15 00:10:02.210851: Saving plan best values to HA entities 2026-08-15 00:10:02.372798: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-15 00:10:02.379012: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 00:10:02.384424: Best charging limit SoC's [1.5, 16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 46.18kWh, house 10.01kWh, export 0.0kWh, metric 1197.6p, metric10 1240.56p 2026-08-15 00:10:02.457265: Marginal costs baseline metric (no standing charge): 1097.635 2026-08-15 00:10:02.703922: Marginal energy costs matrix computed: min=16.4 max=27.68 2026-08-15 00:10:02.786729: Rate array import [{'start': 10, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 28.5p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2400, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 2400, 'end': 2460, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 2460, 'end': 2580, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 2580, 'end': 2890, 'rate': 'expensive', 'range': '(27.8p - 32.9p)'}] export [{'start': 10, 'end': 2890, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 00:10:02.787450: - Your estimated bill for today is £5.97 and tomorrow is £5.50 2026-08-15 00:10:02.787516: - Import rates are expensive (24.6p - 28.5p) for the next 6 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 00:10:02.787542: - The battery is currently at 9% and is in eco mode for the next 6 and three quarters hours. 2026-08-15 00:10:02.787560: - For the next 48 hours there will be no solar generation. 2026-08-15 00:10:02.787578: - You will run out of battery in 10 minutes. 2026-08-15 00:10:02.787613: - Your next charge slot will be in 6 and three quarters hours where import rates will be cheap (22.7p). 2026-08-15 00:10:02.787632: 2026-08-15 00:10:02.858280: Plan calculation took 1.10 seconds 2026-08-15 00:10:02.861043: No high rate period found 2026-08-15 00:10:02.907777: Import threshold used for optimisation was 8.0p 2026-08-15 00:10:02.956983: Low import rate windows [0: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 1: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 2: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 3: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 4: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 5: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 6: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 7: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 8: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 9: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 10: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 11: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 12: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 13: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 14: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 15: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 16: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 17: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 18: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 19: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 20: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 21: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 22: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 23: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 24: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 25: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 26: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 27: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 28: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 29: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 30: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 31: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 32: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 33: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 34: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 35: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 36: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 37: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 38: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 39: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 40: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 41: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 42: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 43: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 44: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 45: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 46: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 47: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 48: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 49: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 50: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 51: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 52: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 53: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 54: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 55: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 56: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 57: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 58: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 59: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 60: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 61: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 62: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 63: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 64: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 65: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 66: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 67: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 68: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 69: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 70: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 71: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 72: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 73: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 74: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 75: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 76: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 77: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 78: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 79: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 80: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 81: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 82: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 83: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 84: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 85: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 86: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 87: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 88: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 89: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 90: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 91: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 92: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 93: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 94: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47] 2026-08-15 00:10:02.963801: Inverter 0 Charge window will be: 2026-08-15 07:00:00+01:00 - 2026-08-15 07:30:00+01:00 - current SoC 9%, target 9% 2026-08-15 00:10:02.963934: Inverter 0 disabled charge window while waiting for schedule (now 08-15 00:10:00 target set_window_minutes 30 charge start time 08-15 07:00:00) original inverter start time 08-17 00:00:00 2026-08-15 00:10:02.964054: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:10:02.964346: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:10:02.964439: No export window planned 2026-08-15 00:10:02.964554: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 00:10:02.964638: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:10:02.964778: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:10:02.965053: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 00:10:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 00:10:02.965140: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 00:10:02.965246: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 00:10:02.965358: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:10:02.965393: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:10:02.965425: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:10:02.965450: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:10:02.965475: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:10:02.965498: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:10:02.965522: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:10:02.965605: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:10:02.965639: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:10:02.965667: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:10:02.965694: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:10:02.965718: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:10:02.965742: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:10:02.965765: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:10:02.965786: Inverter 0 count register writes 0 2026-08-15 00:10:02.981470: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-15 00:10:02.981636: Recompute is saving previous plan... 2026-08-15 00:10:02.984187: Best charge window [ 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 0% ] 2026-08-15 00:10:02.984254: Best export window [ ] 2026-08-15 00:10:02.984936: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:10:02.987469: Load divergence over 8.0 hours mean 456.02W, min 268.2W, max 1026.0W, std dev 93.95W, divergence 10.3% 2026-08-15 00:10:03.002195: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:10:03.002279: LoadML is_calculating False 2026-08-15 00:10:03.002331: Creating pool of 12 processes to match your CPU count 2026-08-15 00:10:03.082061: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-15 00:10:03.084378: Optimise levels pass started at 2026-08-15 00:10:03 2026-08-15 00:10:03.084441: Optimise all windows, total charge 94 export 1 2026-08-15 00:10:04.144498: >> Region optimisation pass width 960 gives best_metric 756.91p, best_cost 763.13p, best_cycle 44.06kWh, best_import 41.26kWh 2026-08-15 00:10:04.556959: >> Region optimisation pass width 480 gives best_metric 756.91p, best_cost 763.13p, best_cycle 44.06kWh, best_import 41.26kWh 2026-08-15 00:10:05.105840: >> Region optimisation pass width 240 gives best_metric 756.91p, best_cost 763.13p, best_cycle 44.06kWh, best_import 41.26kWh 2026-08-15 00:10:06.253452: >> Region optimisation pass width 120 gives best_metric 756.91p, best_cost 763.13p, best_cycle 44.06kWh, best_import 41.26kWh 2026-08-15 00:10:06.254079: Calculated end_record as 08-16 11:30:00 based on best_price 16.34p, next_charge_start 08-15 11:30:00, max_windows 70 2026-08-15 00:10:06.254162: Optimise levels pass ended at 2026-08-15 00:10:06, duration 3.2 seconds tried 328 combinations 2026-08-15 00:10:06.254229: Set best_price_charge_level 17.6p, best_price_export_level 0p, best_price_charge 16.34p, best_cost_export 0p, best_metric 756.91p, best_keep 0kWh, best_cycle 44.06kWh, best_carbon 0kg, best_import 41.26kWh 2026-08-15 00:10:06.276224: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 16.34p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-15 00:10:10.666975: Tweak plan optimisation started metric 607.89p, cost 615.87p 2026-08-15 00:10:10.901765: Tweak optimisation finished metric 607.89p, cost 615.87p, metric_keep 0kWh, cycle 30.84kWh, carbon 0kg, import 31.39kWh, changed 8 window(s) 2026-08-15 00:10:10.922148: Swap charge optimisation started metric 607.89p, cost 615.87p, min_improvement_swap 0.1p 2026-08-15 00:10:17.935422: Swap charge optimisation finished metric 607.89p, cost 615.87p 2026-08-15 00:10:18.044215: Pruned 2 dead plan slot(s) in 11 trial(s), nominal metric 602.63p -> 602.64p, plan now metric 607.91p, cost 615.88p, cycle 30.08kWh, import 31.33kWh 2026-08-15 00:10:18.054279: Raw charge windows [ 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 100% ] reserve 1.12 2026-08-15 00:10:18.054867: Unclipped charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] reserve 1.12 2026-08-15 00:10:18.055155: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] reserve 1.12 2026-08-15 00:10:18.055385: Filtered charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] reserve 1.12 2026-08-15 00:10:18.086686: Previous plan best metric is 1028.87 (cost 1148.05) and new plan best metric is 607.89 (cost 615.87) 2026-08-15 00:10:18.086860: New plan metric is significantly better from previous plan, using new plan 2026-08-15 00:10:18.086903: Plan valid is now true after recompute was False 2026-08-15 00:10:18.110270: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 842.17p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:20:00, load 29.5kWh, PV 0.0kWh 2026-08-15 00:10:18.200909: Battery has 0.17 hours left - now at 1.43kWh 2026-08-15 00:10:18.239212: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 877.85p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:20:00, load 30.9kWh, PV 0.0kWh 2026-08-15 00:10:18.307563: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 701.03p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:20:00, load 30.9kWh, PV 0.0kWh 2026-08-15 00:10:18.375728: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 665.87p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:20:00, load 29.5kWh, PV 0.0kWh 2026-08-15 00:10:18.375810: Saving plan best values to HA entities 2026-08-15 00:10:18.511194: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-15 00:10:18.516108: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 00:10:18.520808: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 20.69kWh, house 10.64kWh, export 0.0kWh, metric 665.87p, metric10 701.03p 2026-08-15 00:10:18.585246: Marginal costs baseline metric (no standing charge): 615.8821 2026-08-15 00:10:18.813914: Marginal energy costs matrix computed: min=16.4 max=27.68 2026-08-15 00:10:18.876644: Rate array import [{'start': 10, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 28.5p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2130, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 10, 'end': 2130, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 00:10:18.877248: - Your estimated bill for today is £5.97 and tomorrow is £5.50 2026-08-15 00:10:18.878451: - Import rates are expensive (24.6p - 28.5p) for the next 6 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 00:10:18.878475: - The battery is currently at 9% and is in eco mode for the next 11 hours. 2026-08-15 00:10:18.878490: - For the next 48 hours there will be no solar generation. 2026-08-15 00:10:18.878520: - You will run out of battery in 10 minutes. 2026-08-15 00:10:18.878536: - Your next charge slot will be in 11 hours where import rates will be cheap (15.5p). 2026-08-15 00:10:18.878554: 2026-08-15 00:10:18.934131: Plan calculation took 15.95 seconds 2026-08-15 00:10:18.934467: Inverter 0: Type SK Sunsynk 2026-08-15 00:10:18.934508: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 00:10:18.934720: Reserve min: 7%, battery_min: 7% 2026-08-15 00:10:18.934792: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 00:10:18.935077: Inverter 0 SoC: 1.43kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4477W, current battery voltage 51.2V, grid power -6589W, load power 1593W, PV Power 0W 2026-08-15 00:10:18.935278: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:10:18.935385: Inverter 0 scheduled charge enable is False 2026-08-15 00:10:18.935435: Inverter 0 charge windows currently [] 2026-08-15 00:10:18.935489: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 00:10:18.935656: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:10:18.935694: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:10:18.935733: Inverter 0 scheduled discharge enable is False 2026-08-15 00:10:18.935893: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:10:18.935930: Inverter 0 discharge windows currently [] 2026-08-15 00:10:18.935951: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:10:18.935986: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:10:18.936017: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:10:18.981596: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-15 00:10:18.981739: Inverter 0 disabled charge window while waiting for schedule (now 08-15 00:10:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 00:10:18.981834: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:10:18.982073: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:10:18.982151: No export window planned 2026-08-15 00:10:18.982276: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 00:10:18.982316: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:10:18.982506: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:10:18.982697: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 00:10:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 00:10:18.982756: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 00:10:18.982824: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 00:10:18.982966: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:10:18.983013: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:10:18.983044: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:10:18.983096: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:10:18.983150: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:10:18.983228: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:10:18.983274: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:10:18.983374: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:10:18.983416: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:10:18.983458: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:10:18.983498: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:10:18.983533: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:10:18.983576: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:10:18.983649: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:10:18.983684: Inverter 0 count register writes 0 2026-08-15 00:10:19.002831: Total inverter register writes now 815 2026-08-15 00:10:19.033467: Info: Completed run status Demand 2026-08-15 00:10:19.040636: Info: record_status Demand 2026-08-15 00:10:19.047461: Saved current settings to /config/predbat_config.json 2026-08-15 00:10:19.047725: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 00:10:57.145135: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:10:57.145376: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:10:57.145419: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:10:57.145574: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:10:57.145660: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:10:57.145690: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:10:57.145708: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:12:57.366228: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:12:57.366464: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:12:57.366506: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:12:57.366705: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:12:57.366746: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:12:57.366767: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:12:57.366784: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:15:00.593330: --------------- PredBat - update at 2026-08-15 00:15:00+01:00 with clock skew 0 minutes, minutes now 15 2026-08-15 00:15:00.594145: Saved current settings to /config/predbat_config.json 2026-08-15 00:15:00.594296: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 15.0 minutes 2026-08-15 00:15:00.594436: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 00:15:00.594528: Autoupdate: Currently up to date 2026-08-15 00:15:00.613680: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 00:15:00.613799: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 00:15:00.613984: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 00:15:00.614506: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 00:15:00.614643: Predbat mode is set to Control charge & discharge 2026-08-15 00:15:00.802712: Found 21602 load_today datapoints going back 28 days 2026-08-15 00:15:00.802854: Using load_power data to fill gaps in load_today data 2026-08-15 00:15:01.609412: Processing 721 30-minute periods for power integration 2026-08-15 00:15:01.769767: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 00:15:01.769892: Car charging hold False, threshold 6.0kWh 2026-08-15 00:15:01.769925: Current data so far today: load 0.0kWh, import 0.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 00:15:01.784725: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 00:15:01.785099: Standing charge is set to 49.98p 2026-08-15 00:15:01.812196: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 00:15:01.812289: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 00:15:01.812505: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 15.0 minutes 2026-08-15 00:15:01.812851: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 14.7 minutes 2026-08-15 00:15:01.815290: Loaded 47 datapoints of futurerate analysis 2026-08-15 00:15:01.885074: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 00:15:01.943484: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 00:15:01.943997: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 00:15:01.986869: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 00:15:01.987006: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 00:15:01.988167: High export rate found rates in range 99p to -99p 2026-08-15 00:15:02.062683: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 00:15:02.062828: Car 0 charging is not planned as it is not plugged in 2026-08-15 00:15:02.076325: Battery level now 1.43kWh, -1hr ago 3.05kWh, at midnight 1.66kWh, battery value change in the last hour -19.11p, change today -2.65p, rate_forward 11.83p 2026-08-15 00:15:02.076708: Last hour: net energy 0.0kWh, import 0.0kWh, export 0.0kWh, car 0kWh, load 1.2kWh, net cost 0.0p, import 0.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 00:15:02.121688: Today's energy total net 0.0kWh, import 0.0kWh, export 0.0kWh, cost 49.98p, import 0.0p, export 0.0p, carbon 0.0kg 2026-08-15 00:15:02.121813: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 00:15:02.191933: Using weighted-bucket historical load forecast over 14 days 2026-08-15 00:15:02.213510: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 00:15:02.213625: Today's predicted so far 0.18kWh with 0.0kWh car/iBoost excluded, 0kWh import ignored, and 0.18kWh forecast extra. 2026-08-15 00:15:02.213659: Today's actual load so far 0.15kWh with 0.0kWh car/iBoost excluded, and 0kWh import ignored. 2026-08-15 00:15:02.251406: Inverter 0: Type SK Sunsynk 2026-08-15 00:15:02.251519: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 00:15:02.251768: Reserve min: 7%, battery_min: 7% 2026-08-15 00:15:02.251860: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 00:15:02.252188: Inverter 0 SoC: 1.64kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power -4480W, current battery voltage 51.2V, grid power -6548W, load power 1552W, PV Power 0W 2026-08-15 00:15:02.252410: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:15:02.252525: Inverter 0 scheduled charge enable is False 2026-08-15 00:15:02.252641: Inverter 0 charge windows currently [] 2026-08-15 00:15:02.252706: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 00:15:02.252920: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:15:02.253003: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:15:02.253067: Inverter 0 scheduled discharge enable is False 2026-08-15 00:15:02.253270: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:15:02.253316: Inverter 0 discharge windows currently [] 2026-08-15 00:15:02.253340: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:15:02.253363: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:15:02.253398: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:15:02.319693: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 00:15:02.319808: Plan was last updated on 2026-08-15 00:10:00+01:00 and is now 5.0 minutes old 2026-08-15 00:15:02.320160: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 00:15:02.320213: Best export window [ ] 2026-08-15 00:15:02.321040: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:15:02.323491: Load divergence over 8.0 hours mean 452.72W, min 226.2W, max 892.2W, std dev 92.62W, divergence 10.23% 2026-08-15 00:15:02.339775: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:15:02.339900: LoadML is_calculating False 2026-08-15 00:15:02.339986: Creating pool of 12 processes to match your CPU count 2026-08-15 00:15:02.461679: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 834.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 29.46kWh, PV 0.0kWh 2026-08-15 00:15:02.585909: Battery has 0.33 hours left - now at 1.64kWh 2026-08-15 00:15:02.632099: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 869.97p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:30:00, load 30.87kWh, PV 0.0kWh 2026-08-15 00:15:02.711198: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 698.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:30:00, load 30.87kWh, PV 0.0kWh 2026-08-15 00:15:02.786413: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 664.24p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:35:00, load 29.46kWh, PV 0.0kWh 2026-08-15 00:15:02.786505: Saving plan best values to HA entities 2026-08-15 00:15:02.942696: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-15 00:15:02.949153: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 00:15:02.954290: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.21kWh, house 10.31kWh, export 0.0kWh, metric 664.24p, metric10 698.29p 2026-08-15 00:15:03.015843: Marginal costs baseline metric (no standing charge): 614.2576 2026-08-15 00:15:03.244612: Marginal energy costs matrix computed: min=16.26 max=27.58 2026-08-15 00:15:03.317949: Rate array import [{'start': 15, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 28.5p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2135, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 15, 'end': 2135, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 00:15:03.318521: - Your estimated bill for today is £5.87 and tomorrow is £5.53 2026-08-15 00:15:03.318571: - Import rates are expensive (24.6p - 28.5p) for the next 6 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 00:15:03.318596: - The battery is currently at 10% and is in eco mode for the next 11 hours. 2026-08-15 00:15:03.318622: - For the next 48 hours there will be no solar generation. 2026-08-15 00:15:03.318636: - You will run out of battery in 20 minutes. 2026-08-15 00:15:03.318652: - Your next charge slot will be in 11 hours where import rates will be cheap (15.5p). 2026-08-15 00:15:03.318673: 2026-08-15 00:15:03.370012: Plan calculation took 1.05 seconds 2026-08-15 00:15:03.372646: No high rate period found 2026-08-15 00:15:03.418473: Import threshold used for optimisation was 22.73p 2026-08-15 00:15:03.464442: Low import rate windows [0: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 1: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 2: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 3: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 4: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 5: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 6: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 7: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 8: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 9: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 10: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 11: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 12: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 13: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 14: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 15: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 16: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 17: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 18: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 19: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 20: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 21: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 22: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 23: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 24: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 25: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 26: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 27: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 28: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 29: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 30: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 31: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 32: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 33: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 34: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 35: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 36: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 37: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 38: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 39: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 40: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 41: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 42: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 43: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 44: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 45: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 46: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 47: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 48: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 49: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 50: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 51: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 52: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 53: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 54: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 55: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 56: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 57: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 58: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 59: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 60: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 61: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 62: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 63: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 64: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 65: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 66: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 67: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 68: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 69: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 70: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 71: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 72: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 73: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 74: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 75: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 76: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 77: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 78: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 79: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 80: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 81: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 82: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 83: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 84: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 85: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 86: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 87: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 88: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 89: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 90: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 91: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 92: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 93: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 94: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47] 2026-08-15 00:15:03.471465: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-15 00:15:03.471635: Inverter 0 disabled charge window while waiting for schedule (now 08-15 00:15:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 00:15:03.471775: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:15:03.472051: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:15:03.472164: No export window planned 2026-08-15 00:15:03.472324: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 00:15:03.472369: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:15:03.472533: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:15:03.472754: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 00:15:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 00:15:03.472831: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 00:15:03.472977: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 00:15:03.473121: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:15:03.473188: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:15:03.473241: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:15:03.473287: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:15:03.473343: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:15:03.473388: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:15:03.473439: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:15:03.473528: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:15:03.473586: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:15:03.473612: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:15:03.473647: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:15:03.473688: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:15:03.473733: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:15:03.473767: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:15:03.473800: Inverter 0 count register writes 0 2026-08-15 00:15:03.488761: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-15 00:15:03.493988: Total inverter register writes now 815 2026-08-15 00:15:03.530086: Info: Completed run status Demand 2026-08-15 00:15:03.536434: Info: record_status Demand 2026-08-15 00:15:03.542099: Saved current settings to /config/predbat_config.json 2026-08-15 00:15:03.542377: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 00:15:41.644437: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:15:41.644779: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:15:41.644842: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:15:41.645054: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:15:41.645154: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:15:41.645187: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:15:41.645205: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:17:41.871687: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:17:41.871954: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:17:41.872000: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:17:41.872144: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:17:41.872201: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:17:41.872222: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:17:41.872267: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:19:42.100076: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:19:42.100292: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:19:42.100325: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:19:42.100469: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:19:42.100502: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:19:42.100519: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:19:42.100533: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:20:00.191062: --------------- PredBat - update at 2026-08-15 00:20:00+01:00 with clock skew 0 minutes, minutes now 20 2026-08-15 00:20:00.191834: Saved current settings to /config/predbat_config.json 2026-08-15 00:20:00.191967: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 20.0 minutes 2026-08-15 00:20:00.192115: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 00:20:00.192244: Autoupdate: Currently up to date 2026-08-15 00:20:00.211837: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 00:20:00.212000: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 00:20:00.212283: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 00:20:00.212916: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 00:20:00.213063: Predbat mode is set to Control charge & discharge 2026-08-15 00:20:00.402185: Found 21602 load_today datapoints going back 28 days 2026-08-15 00:20:00.402340: Using load_power data to fill gaps in load_today data 2026-08-15 00:20:01.201986: Processing 721 30-minute periods for power integration 2026-08-15 00:20:01.402247: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 00:20:01.402377: Car charging hold False, threshold 6.0kWh 2026-08-15 00:20:01.402423: Current data so far today: load 0.45kWh, import 0.5kWh, export 0.0kWh, PV 0kWh 2026-08-15 00:20:01.417935: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 00:20:01.418354: Standing charge is set to 49.98p 2026-08-15 00:20:01.441835: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 00:20:01.441952: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 00:20:01.442210: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 20.0 minutes 2026-08-15 00:20:01.442656: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 19.6 minutes 2026-08-15 00:20:01.445678: Loaded 47 datapoints of futurerate analysis 2026-08-15 00:20:01.531198: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 00:20:01.586199: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 00:20:01.586587: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 00:20:01.619925: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 00:20:01.620015: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 00:20:01.620924: High export rate found rates in range 99p to -99p 2026-08-15 00:20:01.694845: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 00:20:01.694969: Car 0 charging is not planned as it is not plugged in 2026-08-15 00:20:01.706553: Battery level now 1.64kWh, -1hr ago 2.79kWh, at midnight 1.66kWh, battery value change in the last hour -13.62p, change today -0.19p, rate_forward 11.83p 2026-08-15 00:20:01.706919: Last hour: net energy 0.5kWh, import 0.5kWh, export 0.0kWh, car 0kWh, load 1.5kWh, net cost 14.23p, import 14.23p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 00:20:01.754330: Today's energy total net 0.5kWh, import 0.5kWh, export 0.0kWh, cost 64.22p, import 14.23p, export 0.0p, carbon 0.0kg 2026-08-15 00:20:01.754442: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 00:20:01.816618: Using weighted-bucket historical load forecast over 14 days 2026-08-15 00:20:01.833722: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 00:20:01.833803: Today's predicted so far 0.25kWh with 0.0kWh car/iBoost excluded, 0.3kWh import ignored, and 0.25kWh forecast extra. 2026-08-15 00:20:01.833830: Today's actual load so far 0.39kWh with 0.0kWh car/iBoost excluded, and 0.3kWh import ignored. 2026-08-15 00:20:01.869259: Inverter 0: Type SK Sunsynk 2026-08-15 00:20:01.869358: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 00:20:01.869602: Reserve min: 7%, battery_min: 7% 2026-08-15 00:20:01.869693: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 00:20:01.869996: Inverter 0 SoC: 1.64kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1723W, current battery voltage 51.2V, grid power -54W, load power 1762W, PV Power 0W 2026-08-15 00:20:01.870180: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:20:01.870272: Inverter 0 scheduled charge enable is False 2026-08-15 00:20:01.870301: Inverter 0 charge windows currently [] 2026-08-15 00:20:01.870327: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 00:20:01.870433: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:20:01.870468: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:20:01.870503: Inverter 0 scheduled discharge enable is False 2026-08-15 00:20:01.870649: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:20:01.870690: Inverter 0 discharge windows currently [] 2026-08-15 00:20:01.870714: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:20:01.870733: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:20:01.870758: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:20:01.930390: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 00:20:01.930498: Plan was last updated on 2026-08-15 00:10:00+01:00 and is now 10.0 minutes old 2026-08-15 00:20:01.930872: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 00:20:01.930925: Best export window [ ] 2026-08-15 00:20:01.931777: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:20:01.935045: Load divergence over 8.0 hours mean 451.46W, min 278.4W, max 766.8W, std dev 72.01W, divergence 7.98% 2026-08-15 00:20:01.958564: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:20:01.958696: LoadML is_calculating False 2026-08-15 00:20:01.958774: Creating pool of 12 processes to match your CPU count 2026-08-15 00:20:02.086410: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 847.46p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 29.91kWh, PV 0.0kWh 2026-08-15 00:20:02.234591: Battery has 0.33 hours left - now at 1.64kWh 2026-08-15 00:20:02.279583: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 883.01p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 31.31kWh, PV 0.0kWh 2026-08-15 00:20:02.366127: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 716.56p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 31.31kWh, PV 0.0kWh 2026-08-15 00:20:02.449635: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 683.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 29.91kWh, PV 0.0kWh 2026-08-15 00:20:02.449723: Saving plan best values to HA entities 2026-08-15 00:20:02.645490: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 00:20:02.652372: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 00:20:02.659492: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.73kWh, house 10.2kWh, export 0.0kWh, metric 683.42p, metric10 716.56p 2026-08-15 00:20:02.768035: Marginal costs baseline metric (no standing charge): 633.4352 2026-08-15 00:20:03.057253: Marginal energy costs matrix computed: min=16.12 max=27.49 2026-08-15 00:20:03.137137: Rate array import [{'start': 20, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 28.5p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2140, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 20, 'end': 2140, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 00:20:03.137901: - Your estimated bill for today is £5.98 and tomorrow is £5.54 2026-08-15 00:20:03.137949: - Import rates are expensive (24.6p - 28.5p) for the next 6 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 00:20:03.137971: - The battery is currently at 10% and is in eco mode for the next 11 hours. 2026-08-15 00:20:03.137989: - For the next 48 hours there will be no solar generation. 2026-08-15 00:20:03.138006: - You will run out of battery in 20 minutes. 2026-08-15 00:20:03.138043: - Your next charge slot will be in 11 hours where import rates will be cheap (15.5p). 2026-08-15 00:20:03.138061: 2026-08-15 00:20:03.191881: Plan calculation took 1.26 seconds 2026-08-15 00:20:03.195860: No high rate period found 2026-08-15 00:20:03.243295: Import threshold used for optimisation was 22.73p 2026-08-15 00:20:03.293655: Low import rate windows [0: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 1: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 2: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 3: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 4: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 5: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 6: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 7: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 8: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 9: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 10: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 11: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 12: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 13: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 14: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 15: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 16: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 17: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 18: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 19: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 20: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 21: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 22: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 23: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 24: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 25: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 26: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 27: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 28: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 29: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 30: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 31: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 32: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 33: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 34: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 35: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 36: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 37: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 38: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 39: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 40: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 41: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 42: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 43: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 44: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 45: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 46: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 47: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 48: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 49: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 50: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 51: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 52: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 53: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 54: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 55: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 56: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 57: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 58: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 59: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 60: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 61: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 62: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 63: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 64: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 65: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 66: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 67: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 68: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 69: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 70: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 71: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 72: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 73: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 74: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 75: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 76: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 77: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 78: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 79: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 80: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 81: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 82: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 83: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 84: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 85: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 86: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 87: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 88: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 89: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 90: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 91: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 92: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 93: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 94: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47] 2026-08-15 00:20:03.299446: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-15 00:20:03.299569: Inverter 0 disabled charge window while waiting for schedule (now 08-15 00:20:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 00:20:03.299668: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:20:03.299895: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:20:03.299970: No export window planned 2026-08-15 00:20:03.300073: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 00:20:03.300103: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:20:03.300218: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:20:03.300366: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 00:20:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 00:20:03.300417: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 00:20:03.300475: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 00:20:03.300564: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:20:03.300603: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:20:03.300627: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:20:03.300647: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:20:03.300667: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:20:03.300690: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:20:03.300710: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:20:03.300764: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:20:03.300794: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:20:03.300814: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:20:03.300837: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:20:03.300856: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:20:03.300882: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:20:03.300902: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:20:03.300921: Inverter 0 count register writes 0 2026-08-15 00:20:03.314669: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-15 00:20:03.314837: Recompute is saving previous plan... 2026-08-15 00:20:03.317390: Best charge window [ 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 0% ] 2026-08-15 00:20:03.317450: Best export window [ ] 2026-08-15 00:20:03.318119: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:20:03.320671: Load divergence over 8.0 hours mean 451.46W, min 278.4W, max 766.8W, std dev 72.01W, divergence 7.98% 2026-08-15 00:20:03.335599: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:20:03.335693: LoadML is_calculating False 2026-08-15 00:20:03.335747: Creating pool of 12 processes to match your CPU count 2026-08-15 00:20:03.416143: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-15 00:20:03.418466: Optimise levels pass started at 2026-08-15 00:20:03 2026-08-15 00:20:03.418536: Optimise all windows, total charge 94 export 1 2026-08-15 00:20:04.483928: >> Region optimisation pass width 960 gives best_metric 762.77p, best_cost 768.85p, best_cycle 44.73kWh, best_import 41.09kWh 2026-08-15 00:20:04.875082: >> Region optimisation pass width 480 gives best_metric 762.77p, best_cost 768.85p, best_cycle 44.73kWh, best_import 41.09kWh 2026-08-15 00:20:05.424802: >> Region optimisation pass width 240 gives best_metric 762.77p, best_cost 768.85p, best_cycle 44.73kWh, best_import 41.09kWh 2026-08-15 00:20:06.553457: >> Region optimisation pass width 120 gives best_metric 762.77p, best_cost 768.85p, best_cycle 44.73kWh, best_import 41.09kWh 2026-08-15 00:20:06.553891: Calculated end_record as 08-16 11:30:00 based on best_price 16.34p, next_charge_start 08-15 11:30:00, max_windows 70 2026-08-15 00:20:06.553968: Optimise levels pass ended at 2026-08-15 00:20:06, duration 3.1 seconds tried 328 combinations 2026-08-15 00:20:06.554032: Set best_price_charge_level 17.6p, best_price_export_level 0p, best_price_charge 16.34p, best_cost_export 0p, best_metric 762.77p, best_keep 0kWh, best_cycle 44.73kWh, best_carbon 0kg, best_import 41.09kWh 2026-08-15 00:20:06.575996: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 16.34p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-15 00:20:10.897049: Tweak plan optimisation started metric 609.43p, cost 617.42p 2026-08-15 00:20:11.133941: Tweak optimisation finished metric 609.43p, cost 617.42p, metric_keep 0kWh, cycle 30.28kWh, carbon 0kg, import 30.89kWh, changed 8 window(s) 2026-08-15 00:20:11.150916: Swap charge optimisation started metric 609.43p, cost 617.42p, min_improvement_swap 0.1p 2026-08-15 00:20:17.730222: Swap charge optimisation finished metric 609.43p, cost 617.42p 2026-08-15 00:20:17.883858: Pruned 1 dead plan slot(s) in 10 trial(s), nominal metric 604.18p -> 604.18p, plan now metric 609.45p, cost 617.42p, cycle 30.28kWh, import 30.89kWh 2026-08-15 00:20:17.900507: Raw charge windows [ 15-08 00:00:00 - 15-08 00:30:00 @ 28.47p 0%, 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 100% ] reserve 1.12 2026-08-15 00:20:17.901667: Unclipped charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] reserve 1.12 2026-08-15 00:20:17.902262: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] reserve 1.12 2026-08-15 00:20:17.902511: Filtered charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] reserve 1.12 2026-08-15 00:20:17.955779: Previous plan best metric is 609.44 (cost 617.44) and new plan best metric is 609.43 (cost 617.42) 2026-08-15 00:20:17.956759: New plan is a cost-neutral improvement but less fragmented (4 vs 5 segments), using new plan 2026-08-15 00:20:17.957290: Plan valid is now true after recompute was False 2026-08-15 00:20:17.986730: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 844.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 29.71kWh, PV 0.0kWh 2026-08-15 00:20:18.138752: Battery has 0.33 hours left - now at 1.64kWh 2026-08-15 00:20:18.180410: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 879.73p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 31.1kWh, PV 0.0kWh 2026-08-15 00:20:18.254620: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 702.55p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 31.1kWh, PV 0.0kWh 2026-08-15 00:20:18.338309: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 667.41p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:40:00, load 29.71kWh, PV 0.0kWh 2026-08-15 00:20:18.338413: Saving plan best values to HA entities 2026-08-15 00:20:18.481104: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 00:20:18.486427: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 00:20:18.491814: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 20.69kWh, house 10.2kWh, export 0.0kWh, metric 667.41p, metric10 702.55p 2026-08-15 00:20:18.563972: Marginal costs baseline metric (no standing charge): 617.4238 2026-08-15 00:20:18.798278: Marginal energy costs matrix computed: min=16.12 max=27.49 2026-08-15 00:20:18.876507: Rate array import [{'start': 20, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 28.5p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2130, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 20, 'end': 2130, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 00:20:18.877403: - Your estimated bill for today is £5.98 and tomorrow is £5.54 2026-08-15 00:20:18.877464: - Import rates are expensive (24.6p - 28.5p) for the next 6 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 00:20:18.877488: - The battery is currently at 10% and is in eco mode for the next 11 hours. 2026-08-15 00:20:18.877530: - For the next 48 hours there will be no solar generation. 2026-08-15 00:20:18.877587: - You will run out of battery in 20 minutes. 2026-08-15 00:20:18.877615: - Your next charge slot will be in 11 hours where import rates will be cheap (15.5p). 2026-08-15 00:20:18.877657: 2026-08-15 00:20:18.943733: Plan calculation took 15.63 seconds 2026-08-15 00:20:18.944136: Inverter 0: Type SK Sunsynk 2026-08-15 00:20:18.944184: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 00:20:18.944411: Reserve min: 7%, battery_min: 7% 2026-08-15 00:20:18.944495: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 00:20:18.944821: Inverter 0 SoC: 1.98kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 1723W, current battery voltage 51.2V, grid power -55W, load power 1765W, PV Power 0W 2026-08-15 00:20:18.945091: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:20:18.945206: Inverter 0 scheduled charge enable is False 2026-08-15 00:20:18.945250: Inverter 0 charge windows currently [] 2026-08-15 00:20:18.945281: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 00:20:18.945389: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:20:18.945425: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:20:18.945462: Inverter 0 scheduled discharge enable is False 2026-08-15 00:20:18.945619: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:20:18.945661: Inverter 0 discharge windows currently [] 2026-08-15 00:20:18.945683: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:20:18.945701: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:20:18.945723: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:20:19.000214: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-15 00:20:19.000366: Inverter 0 disabled charge window while waiting for schedule (now 08-15 00:20:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 00:20:19.000438: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:20:19.000771: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:20:19.000909: No export window planned 2026-08-15 00:20:19.001182: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 00:20:19.001241: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:20:19.001496: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:20:19.002109: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 00:20:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 00:20:19.002192: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 00:20:19.002282: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 00:20:19.002437: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:20:19.002523: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:20:19.002691: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:20:19.002737: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:20:19.002771: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:20:19.002803: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:20:19.002829: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:20:19.002903: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:20:19.002935: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:20:19.002962: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:20:19.002993: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:20:19.003018: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:20:19.003041: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:20:19.003063: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:20:19.003084: Inverter 0 count register writes 0 2026-08-15 00:20:19.023217: Total inverter register writes now 815 2026-08-15 00:20:19.051932: Info: Completed run status Demand 2026-08-15 00:20:19.059128: Info: record_status Demand 2026-08-15 00:20:19.066809: Saved current settings to /config/predbat_config.json 2026-08-15 00:20:19.067111: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 00:20:57.177432: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:20:57.177655: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:20:57.177692: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:20:57.177867: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:20:57.177908: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:20:57.177927: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:20:57.177941: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:22:57.412910: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:22:57.413197: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:22:57.413254: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:22:57.413383: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:22:57.413427: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:22:57.413444: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:22:57.413458: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:25:00.625554: --------------- PredBat - update at 2026-08-15 00:25:00+01:00 with clock skew 0 minutes, minutes now 25 2026-08-15 00:25:00.626268: Saved current settings to /config/predbat_config.json 2026-08-15 00:25:00.626366: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 25.0 minutes 2026-08-15 00:25:00.626512: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 00:25:00.626594: Autoupdate: Currently up to date 2026-08-15 00:25:00.644092: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 00:25:00.644194: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 00:25:00.644331: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 00:25:00.644873: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 00:25:00.644995: Predbat mode is set to Control charge & discharge 2026-08-15 00:25:00.809127: Found 21602 load_today datapoints going back 28 days 2026-08-15 00:25:00.809285: Using load_power data to fill gaps in load_today data 2026-08-15 00:25:01.534106: Processing 721 30-minute periods for power integration 2026-08-15 00:25:01.716510: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 00:25:01.716668: Car charging hold False, threshold 6.0kWh 2026-08-15 00:25:01.716716: Current data so far today: load 0.6kWh, import 0.5kWh, export 0.0kWh, PV 0kWh 2026-08-15 00:25:01.733157: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 00:25:01.733542: Standing charge is set to 49.98p 2026-08-15 00:25:01.755806: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 00:25:01.755897: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 00:25:01.756131: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 25.0 minutes 2026-08-15 00:25:01.756480: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 24.7 minutes 2026-08-15 00:25:01.758993: Loaded 47 datapoints of futurerate analysis 2026-08-15 00:25:01.827593: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 00:25:01.877371: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 00:25:01.877786: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 00:25:01.913060: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 00:25:01.913164: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 00:25:01.914094: High export rate found rates in range 99p to -99p 2026-08-15 00:25:01.979824: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 00:25:01.979923: Car 0 charging is not planned as it is not plugged in 2026-08-15 00:25:01.992369: Battery level now 1.64kWh, -1hr ago 2.79kWh, at midnight 1.66kWh, battery value change in the last hour -13.62p, change today -0.19p, rate_forward 11.83p 2026-08-15 00:25:01.992780: Last hour: net energy 0.5kWh, import 0.5kWh, export 0.0kWh, car 0kWh, load 1.5kWh, net cost 14.23p, import 14.23p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 00:25:02.032046: Today's energy total net 0.5kWh, import 0.5kWh, export 0.0kWh, cost 64.22p, import 14.23p, export 0.0p, carbon 0.0kg 2026-08-15 00:25:02.032147: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 00:25:02.089769: Using weighted-bucket historical load forecast over 14 days 2026-08-15 00:25:02.107018: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 00:25:02.107088: Today's predicted so far 0.33kWh with 0.0kWh car/iBoost excluded, 0.3kWh import ignored, and 0.33kWh forecast extra. 2026-08-15 00:25:02.107114: Today's actual load so far 0.5kWh with 0.0kWh car/iBoost excluded, and 0.3kWh import ignored. 2026-08-15 00:25:02.140105: Inverter 0: Type SK Sunsynk 2026-08-15 00:25:02.140193: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 00:25:02.140370: Reserve min: 7%, battery_min: 7% 2026-08-15 00:25:02.140444: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 00:25:02.140718: Inverter 0 SoC: 1.98kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 1695W, current battery voltage 51.2V, grid power -54W, load power 1746W, PV Power 0W 2026-08-15 00:25:02.140877: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:25:02.141001: Inverter 0 scheduled charge enable is False 2026-08-15 00:25:02.141043: Inverter 0 charge windows currently [] 2026-08-15 00:25:02.141071: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 00:25:02.141204: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:25:02.141241: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:25:02.141276: Inverter 0 scheduled discharge enable is False 2026-08-15 00:25:02.141403: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:25:02.141439: Inverter 0 discharge windows currently [] 2026-08-15 00:25:02.141461: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:25:02.141483: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:25:02.141501: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:25:02.196922: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 00:25:02.197061: Plan was last updated on 2026-08-15 00:20:00+01:00 and is now 5.0 minutes old 2026-08-15 00:25:02.197298: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 00:25:02.197343: Best export window [ ] 2026-08-15 00:25:02.198038: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:25:02.200641: Load divergence over 8.0 hours mean 449.97W, min 312.6W, max 960.0W, std dev 81.7W, divergence 9.08% 2026-08-15 00:25:02.216405: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:25:02.216492: LoadML is_calculating False 2026-08-15 00:25:02.216583: Creating pool of 12 processes to match your CPU count 2026-08-15 00:25:02.327745: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 834.43p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 29.84kWh, PV 0.0kWh 2026-08-15 00:25:02.457096: Battery has 0.58 hours left - now at 1.98kWh 2026-08-15 00:25:02.506461: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 869.79p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 31.23kWh, PV 0.0kWh 2026-08-15 00:25:02.579369: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 697.79p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 31.23kWh, PV 0.0kWh 2026-08-15 00:25:02.658159: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 663.63p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 29.84kWh, PV 0.0kWh 2026-08-15 00:25:02.658242: Saving plan best values to HA entities 2026-08-15 00:25:02.816599: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 00:25:02.821307: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 00:25:02.826019: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.2kWh, house 9.78kWh, export 0.0kWh, metric 663.63p, metric10 697.79p 2026-08-15 00:25:02.890843: Marginal costs baseline metric (no standing charge): 613.6469 2026-08-15 00:25:03.136398: Marginal energy costs matrix computed: min=15.99 max=27.41 2026-08-15 00:25:03.206178: Rate array import [{'start': 25, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 28.5p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2135, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 25, 'end': 2135, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 00:25:03.206782: - Your estimated bill for today is £5.86 and tomorrow is £5.55 2026-08-15 00:25:03.206821: - Import rates are expensive (24.6p - 28.5p) for the next 6 and a half hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 00:25:03.206840: - The battery is currently at 12% and is in eco mode for the next 11 hours. 2026-08-15 00:25:03.206855: - For the next 48 hours there will be no solar generation. 2026-08-15 00:25:03.206869: - You will run out of battery in 35 minutes. 2026-08-15 00:25:03.206886: - Your next charge slot will be in 11 hours where import rates will be cheap (15.5p). 2026-08-15 00:25:03.206900: 2026-08-15 00:25:03.259367: Plan calculation took 1.06 seconds 2026-08-15 00:25:03.262676: No high rate period found 2026-08-15 00:25:03.315130: Import threshold used for optimisation was 22.73p 2026-08-15 00:25:03.365935: Low import rate windows [0: 08-15 00:00:00 - 08-15 00:30:00 @ 28.47, 1: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 2: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 3: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 4: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 5: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 6: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 7: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 8: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 9: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 10: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 11: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 12: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 13: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 14: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 15: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 16: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 17: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 18: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 19: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 20: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 21: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 22: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 23: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 24: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 25: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 26: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 27: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 28: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 29: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 30: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 31: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 32: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 33: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 34: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 35: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 36: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 37: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 38: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 39: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 40: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 41: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 42: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 43: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 44: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 45: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 46: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 47: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 48: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 49: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 50: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 51: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 52: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 53: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 54: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 55: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 56: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 57: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 58: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 59: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 60: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 61: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 62: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 63: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 64: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 65: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 66: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 67: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 68: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 69: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 70: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 71: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 72: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 73: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 74: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 75: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 76: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 77: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 78: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 79: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 80: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 81: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 82: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 83: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 84: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 85: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 86: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 87: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 88: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 89: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 90: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 91: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 92: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 93: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 94: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47] 2026-08-15 00:25:03.372468: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-15 00:25:03.372616: Inverter 0 disabled charge window while waiting for schedule (now 08-15 00:25:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 00:25:03.372733: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:25:03.373063: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:25:03.373164: No export window planned 2026-08-15 00:25:03.373285: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 00:25:03.373344: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:25:03.373487: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:25:03.373689: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 00:25:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 00:25:03.373775: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 00:25:03.373839: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 00:25:03.373930: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:25:03.373974: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:25:03.374010: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:25:03.374036: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:25:03.374060: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:25:03.374087: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:25:03.374111: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:25:03.374169: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:25:03.374204: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:25:03.374229: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:25:03.374252: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:25:03.374275: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:25:03.374298: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:25:03.374321: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:25:03.374341: Inverter 0 count register writes 0 2026-08-15 00:25:03.389775: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-15 00:25:03.395415: Total inverter register writes now 815 2026-08-15 00:25:03.427790: Info: Completed run status Demand 2026-08-15 00:25:03.433861: Info: record_status Demand 2026-08-15 00:25:03.440820: Saved current settings to /config/predbat_config.json 2026-08-15 00:25:03.441275: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 00:25:41.551984: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:25:41.552298: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:25:41.552353: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:25:41.552498: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:25:41.552559: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:25:41.552583: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:25:41.552601: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:27:41.769654: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:27:41.769924: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:27:41.769968: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:27:41.770101: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:27:41.770140: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:27:41.770160: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:27:41.770178: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:29:41.984839: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:29:41.985162: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:29:41.985254: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:29:41.985389: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:29:41.985428: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:29:41.985450: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:29:41.985485: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:30:00.082638: --------------- PredBat - update at 2026-08-15 00:30:00+01:00 with clock skew 0 minutes, minutes now 30 2026-08-15 00:30:00.083359: Saved current settings to /config/predbat_config.json 2026-08-15 00:30:00.083500: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 30.0 minutes 2026-08-15 00:30:00.083611: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 00:30:00.083696: Autoupdate: Currently up to date 2026-08-15 00:30:00.106164: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 00:30:00.106275: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 00:30:00.106413: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 00:30:00.106853: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 00:30:00.106959: Predbat mode is set to Control charge & discharge 2026-08-15 00:30:00.286800: Found 21602 load_today datapoints going back 28 days 2026-08-15 00:30:00.286937: Using load_power data to fill gaps in load_today data 2026-08-15 00:30:01.027022: Processing 721 30-minute periods for power integration 2026-08-15 00:30:01.212356: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 00:30:01.212524: Car charging hold False, threshold 6.0kWh 2026-08-15 00:30:01.212577: Current data so far today: load 0.75kWh, import 1.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 00:30:01.229082: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 00:30:01.229436: Standing charge is set to 49.98p 2026-08-15 00:30:01.258005: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 00:30:01.258116: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 00:30:01.258321: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 30.0 minutes 2026-08-15 00:30:01.258741: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 29.6 minutes 2026-08-15 00:30:01.261871: Loaded 47 datapoints of futurerate analysis 2026-08-15 00:30:01.361360: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 00:30:01.423389: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 00:30:01.423915: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 00:30:01.468606: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 00:30:01.468738: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 00:30:01.469925: High export rate found rates in range 99p to -99p 2026-08-15 00:30:01.547362: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 00:30:01.547699: Car 0 charging is not planned as it is not plugged in 2026-08-15 00:30:01.565845: Battery level now 1.98kWh, -1hr ago 2.52kWh, at midnight 1.66kWh, battery value change in the last hour -6.43p, change today 3.78p, rate_forward 11.83p 2026-08-15 00:30:01.566416: Last hour: net energy 1.0kWh, import 1.0kWh, export 0.0kWh, car 0kWh, load 1.5kWh, net cost 28.47p, import 28.47p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 00:30:01.626776: Today's energy total net 1.0kWh, import 1.0kWh, export 0.0kWh, cost 78.45p, import 28.47p, export 0.0p, carbon 0.0kg 2026-08-15 00:30:01.626899: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 00:30:01.694451: Using weighted-bucket historical load forecast over 14 days 2026-08-15 00:30:01.720600: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 00:30:01.720916: Today's predicted so far 0.46kWh with 0.0kWh car/iBoost excluded, 0.46kWh import ignored, and 0.46kWh forecast extra. 2026-08-15 00:30:01.721168: Today's actual load so far 0.8kWh with 0.0kWh car/iBoost excluded, and 0.46kWh import ignored. 2026-08-15 00:30:01.758424: Inverter 0: Type SK Sunsynk 2026-08-15 00:30:01.758526: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 00:30:01.758700: Reserve min: 7%, battery_min: 7% 2026-08-15 00:30:01.758769: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 00:30:01.759025: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 675W, current battery voltage 51.2V, grid power -56W, load power 728W, PV Power 0W 2026-08-15 00:30:01.759163: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:30:01.759240: Inverter 0 scheduled charge enable is False 2026-08-15 00:30:01.759264: Inverter 0 charge windows currently [] 2026-08-15 00:30:01.759285: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 00:30:01.759372: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:30:01.759402: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:30:01.759451: Inverter 0 scheduled discharge enable is False 2026-08-15 00:30:01.759584: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:30:01.759617: Inverter 0 discharge windows currently [] 2026-08-15 00:30:01.759636: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:30:01.759651: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:30:01.759665: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:30:01.838222: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 00:30:01.838393: Plan was last updated on 2026-08-15 00:20:00+01:00 and is now 10.0 minutes old 2026-08-15 00:30:01.838753: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 00:30:01.838816: Best export window [ ] 2026-08-15 00:30:01.839660: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:30:01.842980: Load divergence over 8.0 hours mean 450.24W, min 290.4W, max 1000.8W, std dev 84.45W, divergence 9.38% 2026-08-15 00:30:01.862214: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:30:01.862338: LoadML is_calculating False 2026-08-15 00:30:01.862407: Creating pool of 12 processes to match your CPU count 2026-08-15 00:30:01.994141: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 851.09p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 29.91kWh, PV 0.0kWh 2026-08-15 00:30:02.165636: Battery has 0.42 hours left - now at 1.76kWh 2026-08-15 00:30:02.220934: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 886.24p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 31.3kWh, PV 0.0kWh 2026-08-15 00:30:02.318841: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 719.84p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 31.3kWh, PV 0.0kWh 2026-08-15 00:30:02.428581: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 687.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 29.91kWh, PV 0.0kWh 2026-08-15 00:30:02.428718: Saving plan best values to HA entities 2026-08-15 00:30:02.651876: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 00:30:02.659029: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 00:30:02.665641: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.7kWh, house 9.82kWh, export 0.0kWh, metric 687.27p, metric10 719.84p 2026-08-15 00:30:02.756032: Marginal costs baseline metric (no standing charge): 637.2827 2026-08-15 00:30:03.154546: Marginal energy costs matrix computed: min=15.85 max=27.38 2026-08-15 00:30:03.262178: Rate array import [{'start': 30, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2140, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 30, 'end': 2140, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 00:30:03.263042: - Your estimated bill for today is £6.02 and tomorrow is £5.51 2026-08-15 00:30:03.263106: - Import rates are expensive (24.6p - 27.6p) for the next 6 and a half hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 00:30:03.263130: - The battery is currently at 11% and is in eco mode for the next 11 hours. 2026-08-15 00:30:03.263149: - For the next 48 hours there will be no solar generation. 2026-08-15 00:30:03.263166: - You will run out of battery in 25 minutes. 2026-08-15 00:30:03.263191: - Your next charge slot will be in 11 hours where import rates will be cheap (15.5p). 2026-08-15 00:30:03.263226: 2026-08-15 00:30:03.329339: Plan calculation took 1.49 seconds 2026-08-15 00:30:03.331887: No high rate period found 2026-08-15 00:30:03.392387: Import threshold used for optimisation was 22.73p 2026-08-15 00:30:03.457048: Low import rate windows [0: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 1: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 2: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 3: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 4: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 5: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 6: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 7: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 8: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 9: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 10: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 11: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 12: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 13: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 14: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 15: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 16: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 17: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 18: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 19: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 20: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 21: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 22: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 23: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 24: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 25: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 26: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 27: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 28: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 29: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 30: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 31: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 32: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 33: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 34: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 35: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 36: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 37: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 38: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 39: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 40: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 41: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 42: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 43: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 44: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 45: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 46: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 47: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 48: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 49: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 50: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 51: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 52: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 53: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 54: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 55: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 56: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 57: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 58: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 59: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 60: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 61: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 62: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 63: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 64: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 65: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 66: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 67: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 68: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 69: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 70: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 71: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 72: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 73: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 74: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 75: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 76: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 77: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 78: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 79: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 80: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 81: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 82: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 83: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 84: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 85: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 86: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 87: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 88: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 89: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 90: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 91: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 92: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 93: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47] 2026-08-15 00:30:03.464078: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-15 00:30:03.464208: Inverter 0 disabled charge window while waiting for schedule (now 08-15 00:30:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 00:30:03.464307: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:30:03.464555: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:30:03.464635: No export window planned 2026-08-15 00:30:03.464738: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 00:30:03.464767: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:30:03.464879: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:30:03.465120: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 00:30:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 00:30:03.465184: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 00:30:03.465237: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 00:30:03.465316: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:30:03.465353: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:30:03.465378: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:30:03.465401: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:30:03.465421: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:30:03.465445: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:30:03.465482: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:30:03.465541: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:30:03.465572: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:30:03.465592: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:30:03.465615: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:30:03.465636: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:30:03.465678: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:30:03.465699: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:30:03.465720: Inverter 0 count register writes 0 2026-08-15 00:30:03.482120: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-15 00:30:03.482355: Recompute is saving previous plan... 2026-08-15 00:30:03.485677: Best charge window [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 0% ] 2026-08-15 00:30:03.485769: Best export window [ ] 2026-08-15 00:30:03.486693: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:30:03.489941: Load divergence over 8.0 hours mean 450.24W, min 290.4W, max 1000.8W, std dev 84.45W, divergence 9.38% 2026-08-15 00:30:03.510639: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:30:03.510788: LoadML is_calculating False 2026-08-15 00:30:03.510862: Creating pool of 12 processes to match your CPU count 2026-08-15 00:30:03.609385: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-15 00:30:03.612115: Optimise levels pass started at 2026-08-15 00:30:03 2026-08-15 00:30:03.612196: Optimise all windows, total charge 94 export 1 2026-08-15 00:30:05.053353: >> Region optimisation pass width 960 gives best_metric 769.92p, best_cost 776.64p, best_cycle 45.29kWh, best_import 40.95kWh 2026-08-15 00:30:05.585143: >> Region optimisation pass width 480 gives best_metric 769.92p, best_cost 776.64p, best_cycle 45.29kWh, best_import 40.95kWh 2026-08-15 00:30:06.233761: >> Region optimisation pass width 240 gives best_metric 769.92p, best_cost 776.64p, best_cycle 45.29kWh, best_import 40.95kWh 2026-08-15 00:30:07.962522: >> Region optimisation pass width 120 gives best_metric 769.64p, best_cost 778.18p, best_cycle 46.02kWh, best_import 41.01kWh 2026-08-15 00:30:07.963093: Calculated end_record as 08-16 11:30:00 based on best_price 16.34p, next_charge_start 08-15 11:30:00, max_windows 69 2026-08-15 00:30:07.963235: Optimise levels pass ended at 2026-08-15 00:30:07, duration 4.4 seconds tried 365 combinations 2026-08-15 00:30:07.963531: Set best_price_charge_level 17.6p, best_price_export_level 0p, best_price_charge 16.34p, best_cost_export 0p, best_metric 769.64p, best_keep 0kWh, best_cycle 46.02kWh, best_carbon 0kg, best_import 41.01kWh 2026-08-15 00:30:07.984924: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 16.34p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-15 00:30:12.992640: Tweak plan optimisation started metric 613.12p, cost 621.19p 2026-08-15 00:30:13.266210: Tweak optimisation finished metric 613.12p, cost 621.19p, metric_keep 0kWh, cycle 31.16kWh, carbon 0kg, import 30.55kWh, changed 8 window(s) 2026-08-15 00:30:13.286666: Swap charge optimisation started metric 613.12p, cost 621.19p, min_improvement_swap 0.1p 2026-08-15 00:30:20.915964: Swap charge optimisation finished metric 613.12p, cost 621.19p 2026-08-15 00:30:21.065497: Pruned 1 dead plan slot(s) in 12 trial(s), nominal metric 607.95p -> 607.95p, plan now metric 613.12p, cost 621.19p, cycle 31.16kWh, import 30.55kWh 2026-08-15 00:30:21.078564: Raw charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 100% ] reserve 1.12 2026-08-15 00:30:21.079936: Unclipped charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] reserve 1.12 2026-08-15 00:30:21.080524: Unfiltered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] reserve 1.12 2026-08-15 00:30:21.080836: Filtered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] reserve 1.12 2026-08-15 00:30:21.121794: Previous plan best metric is 613.36 (cost 621.43) and new plan best metric is 613.12 (cost 621.19) 2026-08-15 00:30:21.122001: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-15 00:30:21.122195: Plan valid is now true after recompute was False 2026-08-15 00:30:21.151391: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 848.11p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 29.72kWh, PV 0.0kWh 2026-08-15 00:30:21.242715: Battery has 0.42 hours left - now at 1.76kWh 2026-08-15 00:30:21.280856: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 883.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 31.1kWh, PV 0.0kWh 2026-08-15 00:30:21.354606: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 705.99p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 31.1kWh, PV 0.0kWh 2026-08-15 00:30:21.435375: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 671.41p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:55:00, load 29.72kWh, PV 0.0kWh 2026-08-15 00:30:21.435484: Saving plan best values to HA entities 2026-08-15 00:30:21.579625: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 00:30:21.585201: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 00:30:21.591002: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 20.68kWh, house 9.82kWh, export 0.0kWh, metric 671.41p, metric10 705.99p 2026-08-15 00:30:21.665759: Marginal costs baseline metric (no standing charge): 621.4259 2026-08-15 00:30:21.954184: Marginal energy costs matrix computed: min=15.85 max=27.38 2026-08-15 00:30:22.031500: Rate array import [{'start': 30, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2130, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 30, 'end': 2130, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 00:30:22.032200: - Your estimated bill for today is £6.02 and tomorrow is £5.51 2026-08-15 00:30:22.032244: - Import rates are expensive (24.6p - 27.6p) for the next 6 and a half hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 00:30:22.032266: - The battery is currently at 11% and is in eco mode for the next 11 hours. 2026-08-15 00:30:22.032284: - For the next 48 hours there will be no solar generation. 2026-08-15 00:30:22.032301: - You will run out of battery in 25 minutes. 2026-08-15 00:30:22.032319: - Your next charge slot will be in 11 hours where import rates will be cheap (15.5p). 2026-08-15 00:30:22.032336: 2026-08-15 00:30:22.089415: Plan calculation took 18.61 seconds 2026-08-15 00:30:22.089793: Inverter 0: Type SK Sunsynk 2026-08-15 00:30:22.089842: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 00:30:22.090071: Reserve min: 7%, battery_min: 7% 2026-08-15 00:30:22.090154: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 00:30:22.090492: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 675W, current battery voltage 51.2V, grid power -56W, load power 728W, PV Power 0W 2026-08-15 00:30:22.090736: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:30:22.090847: Inverter 0 scheduled charge enable is False 2026-08-15 00:30:22.090887: Inverter 0 charge windows currently [] 2026-08-15 00:30:22.090918: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 00:30:22.091030: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:30:22.091091: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:30:22.091130: Inverter 0 scheduled discharge enable is False 2026-08-15 00:30:22.091262: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:30:22.091301: Inverter 0 discharge windows currently [] 2026-08-15 00:30:22.091324: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:30:22.091342: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:30:22.091359: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:30:22.140751: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-15 00:30:22.140881: Inverter 0 disabled charge window while waiting for schedule (now 08-15 00:30:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 00:30:22.140942: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:30:22.141152: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:30:22.141221: No export window planned 2026-08-15 00:30:22.141313: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 00:30:22.141343: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:30:22.141452: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:30:22.141630: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 00:30:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 00:30:22.141671: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 00:30:22.141714: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 00:30:22.141789: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:30:22.141820: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:30:22.141842: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:30:22.141867: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:30:22.141890: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:30:22.141921: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:30:22.141942: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:30:22.141990: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:30:22.142018: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:30:22.142038: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:30:22.142060: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:30:22.142079: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:30:22.142102: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:30:22.142121: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:30:22.142143: Inverter 0 count register writes 0 2026-08-15 00:30:22.160070: Total inverter register writes now 815 2026-08-15 00:30:22.189122: Info: Completed run status Demand 2026-08-15 00:30:22.194955: Info: record_status Demand 2026-08-15 00:30:22.201046: Saved current settings to /config/predbat_config.json 2026-08-15 00:30:22.201378: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 00:30:57.303013: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:30:57.303369: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:30:57.303423: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:30:57.303739: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:30:57.303809: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:30:57.303854: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:30:57.303890: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:33:11.528193: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:33:11.528470: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:33:11.528559: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:33:11.528815: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:33:11.528910: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:33:11.528965: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:33:11.529002: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:35:00.719810: --------------- PredBat - update at 2026-08-15 00:35:00+01:00 with clock skew 0 minutes, minutes now 35 2026-08-15 00:35:00.720765: Saved current settings to /config/predbat_config.json 2026-08-15 00:35:00.721071: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 35.0 minutes 2026-08-15 00:35:00.721263: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 00:35:00.721363: Autoupdate: Currently up to date 2026-08-15 00:35:00.740752: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 00:35:00.740884: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 00:35:00.741139: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 00:35:00.741685: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 00:35:00.741805: Predbat mode is set to Control charge & discharge 2026-08-15 00:35:00.942453: Found 21602 load_today datapoints going back 28 days 2026-08-15 00:35:00.942602: Using load_power data to fill gaps in load_today data 2026-08-15 00:35:01.767967: Processing 721 30-minute periods for power integration 2026-08-15 00:35:01.962963: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 00:35:01.963140: Car charging hold False, threshold 6.0kWh 2026-08-15 00:35:01.963185: Current data so far today: load 0.9kWh, import 1.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 00:35:01.979644: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 00:35:01.980026: Standing charge is set to 49.98p 2026-08-15 00:35:02.006939: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 00:35:02.007042: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 00:35:02.007312: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 35.0 minutes 2026-08-15 00:35:02.007814: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 34.7 minutes 2026-08-15 00:35:02.011191: Loaded 47 datapoints of futurerate analysis 2026-08-15 00:35:02.087206: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 00:35:02.137408: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 00:35:02.137875: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 00:35:02.171659: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 00:35:02.171759: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 00:35:02.172726: High export rate found rates in range 99p to -99p 2026-08-15 00:35:02.236448: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 00:35:02.236581: Car 0 charging is not planned as it is not plugged in 2026-08-15 00:35:02.248596: Battery level now 1.76kWh, -1hr ago 2.52kWh, at midnight 1.66kWh, battery value change in the last hour -8.99p, change today 1.23p, rate_forward 11.83p 2026-08-15 00:35:02.248987: Last hour: net energy 1.0kWh, import 1.0kWh, export 0.0kWh, car 0kWh, load 1.5kWh, net cost 28.47p, import 28.47p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 00:35:02.299830: Today's energy total net 1.0kWh, import 1.0kWh, export 0.0kWh, cost 78.45p, import 28.47p, export 0.0p, carbon 0.0kg 2026-08-15 00:35:02.299956: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 00:35:02.369658: Using weighted-bucket historical load forecast over 14 days 2026-08-15 00:35:02.391031: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 00:35:02.391136: Today's predicted so far 0.56kWh with 0.0kWh car/iBoost excluded, 0.42kWh import ignored, and 0.56kWh forecast extra. 2026-08-15 00:35:02.391168: Today's actual load so far 0.95kWh with 0.0kWh car/iBoost excluded, and 0.42kWh import ignored. 2026-08-15 00:35:02.428037: Inverter 0: Type SK Sunsynk 2026-08-15 00:35:02.428132: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 00:35:02.428314: Reserve min: 7%, battery_min: 7% 2026-08-15 00:35:02.428384: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 00:35:02.428670: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 1699W, current battery voltage 51.2V, grid power -54W, load power 1766W, PV Power 0W 2026-08-15 00:35:02.428837: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:35:02.428931: Inverter 0 scheduled charge enable is False 2026-08-15 00:35:02.429013: Inverter 0 charge windows currently [] 2026-08-15 00:35:02.429069: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 00:35:02.429191: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:35:02.429228: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:35:02.429265: Inverter 0 scheduled discharge enable is False 2026-08-15 00:35:02.429436: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:35:02.429497: Inverter 0 discharge windows currently [] 2026-08-15 00:35:02.429523: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:35:02.429548: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:35:02.429580: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:35:02.494240: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 00:35:02.494350: Plan was last updated on 2026-08-15 00:30:00+01:00 and is now 5.0 minutes old 2026-08-15 00:35:02.494643: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 00:35:02.494713: Best export window [ ] 2026-08-15 00:35:02.495485: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:35:02.498702: Load divergence over 8.0 hours mean 450.34W, min 269.4W, max 1041.6W, std dev 93.24W, divergence 10.35% 2026-08-15 00:35:02.517656: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:35:02.517783: LoadML is_calculating False 2026-08-15 00:35:02.517849: Creating pool of 12 processes to match your CPU count 2026-08-15 00:35:02.640133: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 846.03p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 29.85kWh, PV 0.0kWh 2026-08-15 00:35:02.758026: Battery has 0.42 hours left - now at 1.76kWh 2026-08-15 00:35:02.805082: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 880.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 31.23kWh, PV 0.0kWh 2026-08-15 00:35:02.879112: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 709.64p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 31.23kWh, PV 0.0kWh 2026-08-15 00:35:02.955113: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 676.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 29.85kWh, PV 0.0kWh 2026-08-15 00:35:02.955189: Saving plan best values to HA entities 2026-08-15 00:35:03.099700: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-15 00:35:03.104453: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 00:35:03.109051: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.21kWh, house 9.69kWh, export 0.0kWh, metric 676.38p, metric10 709.64p 2026-08-15 00:35:03.178058: Marginal costs baseline metric (no standing charge): 626.3964 2026-08-15 00:35:03.407645: Marginal energy costs matrix computed: min=15.8 max=27.35 2026-08-15 00:35:03.494034: Rate array import [{'start': 35, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2135, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 35, 'end': 2135, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 00:35:03.494958: - Your estimated bill for today is £6.00 and tomorrow is £5.49 2026-08-15 00:35:03.495018: - Import rates are expensive (24.6p - 27.6p) for the next 6 and a half hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 00:35:03.495053: - The battery is currently at 11% and is in eco mode for the next 10 hours. 2026-08-15 00:35:03.495088: - For the next 48 hours there will be no solar generation. 2026-08-15 00:35:03.495118: - You will run out of battery in 25 minutes. 2026-08-15 00:35:03.495136: - Your next charge slot will be in 10 hours where import rates will be cheap (15.5p). 2026-08-15 00:35:03.495158: 2026-08-15 00:35:03.555017: Plan calculation took 1.06 seconds 2026-08-15 00:35:03.557662: No high rate period found 2026-08-15 00:35:03.618130: Import threshold used for optimisation was 27.18p 2026-08-15 00:35:03.667167: Low import rate windows [0: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 1: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 2: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 3: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 4: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 5: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 6: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 7: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 8: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 9: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 10: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 11: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 12: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 13: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 14: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 15: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 16: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 17: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 18: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 19: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 20: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 21: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 22: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 23: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 24: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 25: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 26: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 27: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 28: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 29: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 30: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 31: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 32: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 33: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 34: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 35: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 36: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 37: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 38: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 39: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 40: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 41: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 42: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 43: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 44: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 45: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 46: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 47: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 48: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 49: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 50: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 51: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 52: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 53: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 54: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 55: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 56: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 57: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 58: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 59: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 60: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 61: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 62: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 63: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 64: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 65: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 66: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 67: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 68: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 69: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 70: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 71: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 72: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 73: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 74: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 75: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 76: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 77: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 78: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 79: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 80: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 81: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 82: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 83: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 84: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 85: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 86: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 87: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 88: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 89: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 90: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 91: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 92: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 93: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 94: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18] 2026-08-15 00:35:03.674784: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-15 00:35:03.674951: Inverter 0 disabled charge window while waiting for schedule (now 08-15 00:35:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 00:35:03.675114: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:35:03.675475: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:35:03.675603: No export window planned 2026-08-15 00:35:03.675775: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 00:35:03.675820: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:35:03.676037: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:35:03.676286: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 00:35:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 00:35:03.676368: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 00:35:03.676473: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 00:35:03.676620: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:35:03.676695: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:35:03.676741: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:35:03.676785: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:35:03.676838: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:35:03.676884: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:35:03.676940: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:35:03.677111: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:35:03.677190: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:35:03.677252: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:35:03.677287: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:35:03.677326: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:35:03.677380: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:35:03.677408: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:35:03.677476: Inverter 0 count register writes 0 2026-08-15 00:35:03.694318: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-15 00:35:03.699929: Total inverter register writes now 815 2026-08-15 00:35:03.735261: Info: Completed run status Demand 2026-08-15 00:35:03.740838: Info: record_status Demand 2026-08-15 00:35:03.746646: Saved current settings to /config/predbat_config.json 2026-08-15 00:35:03.746982: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 00:35:41.851463: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:35:41.851750: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:35:41.851898: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:35:41.852123: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:35:41.852203: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:35:41.852239: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:35:41.852268: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:37:42.072181: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:37:42.072591: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:37:42.072656: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:37:42.072818: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:37:42.072860: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:37:42.072881: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:37:42.072899: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:38:56.270891: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-15 00:38:57.353634: Processing 1345 30-minute periods for power integration 2026-08-15 00:38:57.463631: ML Component: Car charging hold False, car energy reported load False 2026-08-15 00:38:57.569622: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 00:38:57.687727: ML Temperature data points: 48926 2026-08-15 00:38:57.951269: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-15 00:38:57.985109: ML Component: Data fetch completed, load data age 56.0 days, 16272 data points 2026-08-15 00:38:57.985569: ML Component: No training needed, model age is 1.52 hours 2026-08-15 00:38:57.985665: ML Component: Generating predictions load data age 56.0 days, 16272 data points 2026-08-15 00:38:58.106270: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.1464 max_dow {0: 0.09899687486626207, 1: 0.10616562486607581, 2: 0.12051249983031302, 3: 0.1227374996352941, 4: 0.1701437503574416, 5: 0.10630000064577906, 6: 0.11264999961592256} 2026-08-15 00:38:58.695183: ML Component: Generated 576 predictions (total 41.68 kWh over 48h) 2026-08-15 00:38:58.729220: ML Component: Prediction cycle completed 2026-08-15 00:38:58.829352: ML Component: Saved 16272 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-15 00:39:56.756795: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:39:56.757091: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:39:56.757158: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:39:56.757335: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:39:56.757416: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:39:56.757440: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:39:56.757461: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:40:00.831679: --------------- PredBat - update at 2026-08-15 00:40:00+01:00 with clock skew 0 minutes, minutes now 40 2026-08-15 00:40:00.832467: Saved current settings to /config/predbat_config.json 2026-08-15 00:40:00.832611: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 40.0 minutes 2026-08-15 00:40:00.832736: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 00:40:00.832814: Autoupdate: Currently up to date 2026-08-15 00:40:00.854048: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 00:40:00.854224: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 00:40:00.854404: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 00:40:00.854923: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 00:40:00.855041: Predbat mode is set to Control charge & discharge 2026-08-15 00:40:01.064284: Found 21602 load_today datapoints going back 28 days 2026-08-15 00:40:01.064430: Using load_power data to fill gaps in load_today data 2026-08-15 00:40:01.827697: Processing 721 30-minute periods for power integration 2026-08-15 00:40:02.023302: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 00:40:02.023472: Car charging hold False, threshold 6.0kWh 2026-08-15 00:40:02.023531: Current data so far today: load 0.9kWh, import 1.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 00:40:02.039424: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 00:40:02.039808: Standing charge is set to 49.98p 2026-08-15 00:40:02.067106: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 00:40:02.067226: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 00:40:02.067452: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 40.0 minutes 2026-08-15 00:40:02.067840: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 39.7 minutes 2026-08-15 00:40:02.071117: Loaded 47 datapoints of futurerate analysis 2026-08-15 00:40:02.159287: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 00:40:02.220214: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 00:40:02.220595: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 00:40:02.264862: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 00:40:02.265022: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 00:40:02.266263: High export rate found rates in range 99p to -99p 2026-08-15 00:40:02.343158: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 00:40:02.343323: Car 0 charging is not planned as it is not plugged in 2026-08-15 00:40:02.356038: Battery level now 1.76kWh, -1hr ago 2.24kWh, at midnight 1.66kWh, battery value change in the last hour -5.68p, change today 1.23p, rate_forward 11.83p 2026-08-15 00:40:02.356423: Last hour: net energy 1.0kWh, import 1.0kWh, export 0.0kWh, car 0kWh, load 1.35kWh, net cost 28.47p, import 28.47p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 00:40:02.402129: Today's energy total net 1.0kWh, import 1.0kWh, export 0.0kWh, cost 78.45p, import 28.47p, export 0.0p, carbon 0.0kg 2026-08-15 00:40:02.402250: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 00:40:02.473099: Using weighted-bucket historical load forecast over 14 days 2026-08-15 00:40:02.494452: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 00:40:02.494535: Today's predicted so far 0.6kWh with 0.0kWh car/iBoost excluded, 0.54kWh import ignored, and 0.6kWh forecast extra. 2026-08-15 00:40:02.494567: Today's actual load so far 0.93kWh with 0.0kWh car/iBoost excluded, and 0.54kWh import ignored. 2026-08-15 00:40:02.538282: Inverter 0: Type SK Sunsynk 2026-08-15 00:40:02.538382: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 00:40:02.538662: Reserve min: 7%, battery_min: 7% 2026-08-15 00:40:02.538753: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 00:40:02.539090: Inverter 0 SoC: 1.68kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 600W, current battery voltage 51.2V, grid power -55W, load power 656W, PV Power 0W 2026-08-15 00:40:02.539306: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:40:02.539442: Inverter 0 scheduled charge enable is False 2026-08-15 00:40:02.539489: Inverter 0 charge windows currently [] 2026-08-15 00:40:02.539518: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 00:40:02.539640: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:40:02.539691: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:40:02.539748: Inverter 0 scheduled discharge enable is False 2026-08-15 00:40:02.539914: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:40:02.539957: Inverter 0 discharge windows currently [] 2026-08-15 00:40:02.539985: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:40:02.540021: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:40:02.540056: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:40:02.597638: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 00:40:02.597755: Plan was last updated on 2026-08-15 00:30:00+01:00 and is now 10.0 minutes old 2026-08-15 00:40:02.598116: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 00:40:02.598172: Best export window [ ] 2026-08-15 00:40:02.598868: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:40:02.601717: Load divergence over 8.0 hours mean 450.31W, min 268.2W, max 1026.0W, std dev 92.75W, divergence 10.3% 2026-08-15 00:40:02.622258: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:40:02.622401: LoadML is_calculating False 2026-08-15 00:40:02.622473: Creating pool of 12 processes to match your CPU count 2026-08-15 00:40:02.733344: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 847.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 29.88kWh, PV 0.0kWh 2026-08-15 00:40:02.860189: Battery has 0.33 hours left - now at 1.68kWh 2026-08-15 00:40:02.910754: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 882.44p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 31.26kWh, PV 0.0kWh 2026-08-15 00:40:02.984670: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 716.28p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 31.26kWh, PV 0.0kWh 2026-08-15 00:40:03.064988: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 684.01p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 29.88kWh, PV 0.0kWh 2026-08-15 00:40:03.065102: Saving plan best values to HA entities 2026-08-15 00:40:03.221407: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 00:40:03.227209: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 00:40:03.232590: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.72kWh, house 9.7kWh, export 0.0kWh, metric 684.01p, metric10 716.28p 2026-08-15 00:40:03.302729: Marginal costs baseline metric (no standing charge): 634.0293 2026-08-15 00:40:03.596913: Marginal energy costs matrix computed: min=15.75 max=27.3 2026-08-15 00:40:03.669872: Rate array import [{'start': 40, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2140, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 40, 'end': 2140, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 00:40:03.670484: - Your estimated bill for today is £5.99 and tomorrow is £5.51 2026-08-15 00:40:03.670522: - Import rates are expensive (24.6p - 27.6p) for the next 6 and a quarter hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 00:40:03.670541: - The battery is currently at 11% and is in eco mode for the next 10 hours. 2026-08-15 00:40:03.670555: - For the next 48 hours there will be no solar generation. 2026-08-15 00:40:03.670569: - You will run out of battery in 20 minutes. 2026-08-15 00:40:03.670583: - Your next charge slot will be in 10 hours where import rates will be cheap (15.5p). 2026-08-15 00:40:03.670597: 2026-08-15 00:40:03.726103: Plan calculation took 1.13 seconds 2026-08-15 00:40:03.729013: No high rate period found 2026-08-15 00:40:03.776701: Import threshold used for optimisation was 27.18p 2026-08-15 00:40:03.831945: Low import rate windows [0: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 1: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 2: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 3: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 4: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 5: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 6: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 7: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 8: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 9: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 10: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 11: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 12: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 13: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 14: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 15: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 16: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 17: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 18: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 19: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 20: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 21: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 22: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 23: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 24: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 25: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 26: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 27: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 28: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 29: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 30: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 31: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 32: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 33: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 34: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 35: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 36: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 37: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 38: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 39: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 40: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 41: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 42: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 43: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 44: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 45: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 46: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 47: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 48: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 49: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 50: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 51: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 52: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 53: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 54: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 55: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 56: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 57: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 58: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 59: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 60: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 61: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 62: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 63: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 64: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 65: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 66: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 67: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 68: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 69: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 70: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 71: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 72: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 73: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 74: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 75: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 76: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 77: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 78: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 79: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 80: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 81: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 82: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 83: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 84: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 85: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 86: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 87: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 88: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 89: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 90: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 91: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 92: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 93: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 94: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18] 2026-08-15 00:40:03.838421: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-15 00:40:03.838553: Inverter 0 disabled charge window while waiting for schedule (now 08-15 00:40:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 00:40:03.838701: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:40:03.839026: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:40:03.839129: No export window planned 2026-08-15 00:40:03.839258: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 00:40:03.839303: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:40:03.839461: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:40:03.839669: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 00:40:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 00:40:03.839752: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 00:40:03.839814: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 00:40:03.839902: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:40:03.839945: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:40:03.839972: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:40:03.839996: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:40:03.840050: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:40:03.840095: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:40:03.840123: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:40:03.840187: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:40:03.840216: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:40:03.840240: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:40:03.840270: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:40:03.840294: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:40:03.840320: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:40:03.840347: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:40:03.840368: Inverter 0 count register writes 0 2026-08-15 00:40:03.855297: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-15 00:40:03.855452: Recompute is saving previous plan... 2026-08-15 00:40:03.858073: Best charge window [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 0%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 0% ] 2026-08-15 00:40:03.858137: Best export window [ ] 2026-08-15 00:40:03.858801: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:40:03.861345: Load divergence over 8.0 hours mean 450.31W, min 268.2W, max 1026.0W, std dev 92.75W, divergence 10.3% 2026-08-15 00:40:03.875915: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:40:03.875993: LoadML is_calculating False 2026-08-15 00:40:03.876043: Creating pool of 12 processes to match your CPU count 2026-08-15 00:40:03.958365: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-15 00:40:03.959995: Optimise levels pass started at 2026-08-15 00:40:03 2026-08-15 00:40:03.960044: Optimise all windows, total charge 94 export 1 2026-08-15 00:40:05.034618: >> Region optimisation pass width 960 gives best_metric 769.13p, best_cost 774.18p, best_cycle 45.32kWh, best_import 40.87kWh 2026-08-15 00:40:05.460303: >> Region optimisation pass width 480 gives best_metric 769.13p, best_cost 774.18p, best_cycle 45.32kWh, best_import 40.87kWh 2026-08-15 00:40:06.034890: >> Region optimisation pass width 240 gives best_metric 769.13p, best_cost 774.18p, best_cycle 45.32kWh, best_import 40.87kWh 2026-08-15 00:40:07.642917: >> Region optimisation pass width 120 gives best_metric 768.74p, best_cost 775.5p, best_cycle 46.05kWh, best_import 40.92kWh 2026-08-15 00:40:07.643550: Calculated end_record as 08-16 11:30:00 based on best_price 16.34p, next_charge_start 08-15 11:30:00, max_windows 69 2026-08-15 00:40:07.643666: Optimise levels pass ended at 2026-08-15 00:40:07, duration 3.7 seconds tried 371 combinations 2026-08-15 00:40:07.643768: Set best_price_charge_level 17.6p, best_price_export_level 0p, best_price_charge 16.34p, best_cost_export 0p, best_metric 768.74p, best_keep 0kWh, best_cycle 46.05kWh, best_carbon 0kg, best_import 40.92kWh 2026-08-15 00:40:07.665411: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 16.34p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-15 00:40:12.776864: Tweak plan optimisation started metric 609.9p, cost 618.02p 2026-08-15 00:40:13.079337: Tweak optimisation finished metric 609.9p, cost 618.02p, metric_keep 0kWh, cycle 31.08kWh, carbon 0kg, import 30.44kWh, changed 8 window(s) 2026-08-15 00:40:13.104542: Swap charge optimisation started metric 609.9p, cost 618.02p, min_improvement_swap 0.1p 2026-08-15 00:40:21.277804: Swap charge optimisation finished metric 609.9p, cost 618.02p 2026-08-15 00:40:21.400444: Pruned 2 dead plan slot(s) in 12 trial(s), nominal metric 604.78p -> 604.79p, plan now metric 609.92p, cost 618.03p, cycle 30.32kWh, import 30.39kWh 2026-08-15 00:40:21.410816: Raw charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 100%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 100% ] reserve 1.12 2026-08-15 00:40:21.411412: Unclipped charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 01:00:00 @ 28.01p 100% ] reserve 1.12 2026-08-15 00:40:21.411706: Unfiltered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 01:00:00 @ 28.01p 100% ] reserve 1.12 2026-08-15 00:40:21.411938: Filtered charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 01:00:00 @ 28.01p 100% ] reserve 1.12 2026-08-15 00:40:21.448117: Previous plan best metric is 610.05 (cost 618.16) and new plan best metric is 609.9 (cost 618.02) 2026-08-15 00:40:21.448342: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-15 00:40:21.448503: Plan valid is now true after recompute was False 2026-08-15 00:40:21.473456: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 844.55p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 29.68kWh, PV 0.0kWh 2026-08-15 00:40:21.574623: Battery has 0.33 hours left - now at 1.68kWh 2026-08-15 00:40:21.620181: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 879.3p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 31.05kWh, PV 0.0kWh 2026-08-15 00:40:21.695897: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 702.41p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 31.05kWh, PV 0.0kWh 2026-08-15 00:40:21.778573: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 668.14p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 29.68kWh, PV 0.0kWh 2026-08-15 00:40:21.778654: Saving plan best values to HA entities 2026-08-15 00:40:21.930029: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 00:40:21.935487: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 00:40:21.941746: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 20.69kWh, house 9.7kWh, export 0.0kWh, metric 668.14p, metric10 702.41p 2026-08-15 00:40:22.014073: Marginal costs baseline metric (no standing charge): 618.1554 2026-08-15 00:40:22.318496: Marginal energy costs matrix computed: min=15.75 max=27.3 2026-08-15 00:40:22.448847: Rate array import [{'start': 40, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2130, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 40, 'end': 2130, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 00:40:22.451712: - Your estimated bill for today is £5.99 and tomorrow is £5.51 2026-08-15 00:40:22.451840: - Import rates are expensive (24.6p - 27.6p) for the next 6 and a quarter hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 00:40:22.451871: - The battery is currently at 11% and is in eco mode for the next 10 hours. 2026-08-15 00:40:22.451891: - For the next 48 hours there will be no solar generation. 2026-08-15 00:40:22.451908: - You will run out of battery in 20 minutes. 2026-08-15 00:40:22.451925: - Your next charge slot will be in 10 hours where import rates will be cheap (15.5p). 2026-08-15 00:40:22.451947: 2026-08-15 00:40:22.519079: Plan calculation took 18.66 seconds 2026-08-15 00:40:22.519487: Inverter 0: Type SK Sunsynk 2026-08-15 00:40:22.519556: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 00:40:22.519801: Reserve min: 7%, battery_min: 7% 2026-08-15 00:40:22.519883: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 00:40:22.520197: Inverter 0 SoC: 1.54kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 604W, current battery voltage 51.2V, grid power -55W, load power 657W, PV Power 0W 2026-08-15 00:40:22.520471: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:40:22.520591: Inverter 0 scheduled charge enable is False 2026-08-15 00:40:22.520650: Inverter 0 charge windows currently [] 2026-08-15 00:40:22.520684: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 00:40:22.520814: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:40:22.520852: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:40:22.520889: Inverter 0 scheduled discharge enable is False 2026-08-15 00:40:22.521053: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:40:22.521099: Inverter 0 discharge windows currently [] 2026-08-15 00:40:22.521123: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:40:22.521143: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:40:22.521160: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:40:22.593175: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-15 00:40:22.593304: Inverter 0 disabled charge window while waiting for schedule (now 08-15 00:40:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 00:40:22.593364: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:40:22.593560: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:40:22.593631: No export window planned 2026-08-15 00:40:22.593721: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 00:40:22.593751: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:40:22.593887: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:40:22.594048: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 00:40:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 00:40:22.594094: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 00:40:22.594135: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 00:40:22.594232: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:40:22.594281: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:40:22.594304: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:40:22.594330: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:40:22.594352: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:40:22.594372: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:40:22.594404: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:40:22.594455: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:40:22.594484: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:40:22.594505: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:40:22.594524: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:40:22.594563: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:40:22.594584: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:40:22.594603: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:40:22.594621: Inverter 0 count register writes 0 2026-08-15 00:40:22.619268: Total inverter register writes now 815 2026-08-15 00:40:22.656882: Info: Completed run status Demand 2026-08-15 00:40:22.663495: Info: record_status Demand 2026-08-15 00:40:22.670559: Saved current settings to /config/predbat_config.json 2026-08-15 00:40:22.670861: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 00:40:56.775092: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:40:56.775362: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:40:56.775424: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:40:56.775566: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:40:56.775628: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:40:56.775650: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:40:56.775668: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:42:56.994963: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:42:56.995238: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:42:56.995282: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:42:56.995531: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:42:56.995574: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:42:56.995596: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:42:56.995613: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:44:57.205906: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:44:57.206149: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:44:57.206193: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:44:57.206321: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:44:57.206406: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:44:57.206430: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:44:57.206455: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:45:00.283012: --------------- PredBat - update at 2026-08-15 00:45:00+01:00 with clock skew 0 minutes, minutes now 45 2026-08-15 00:45:00.283915: Saved current settings to /config/predbat_config.json 2026-08-15 00:45:00.284081: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 45.0 minutes 2026-08-15 00:45:00.284198: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 00:45:00.284277: Autoupdate: Currently up to date 2026-08-15 00:45:00.306380: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 00:45:00.306502: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 00:45:00.306645: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 00:45:00.307106: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 00:45:00.307251: Predbat mode is set to Control charge & discharge 2026-08-15 00:45:00.513415: Found 21602 load_today datapoints going back 28 days 2026-08-15 00:45:00.513617: Using load_power data to fill gaps in load_today data 2026-08-15 00:45:01.285297: Processing 721 30-minute periods for power integration 2026-08-15 00:45:01.481598: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 00:45:01.481740: Car charging hold False, threshold 6.0kWh 2026-08-15 00:45:01.481782: Current data so far today: load 1.0kWh, import 1.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 00:45:01.497893: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 00:45:01.498264: Standing charge is set to 49.98p 2026-08-15 00:45:01.525691: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 00:45:01.525810: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 00:45:01.526061: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 45.0 minutes 2026-08-15 00:45:01.526544: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 44.6 minutes 2026-08-15 00:45:01.529703: Loaded 47 datapoints of futurerate analysis 2026-08-15 00:45:01.616673: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 00:45:01.676942: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 00:45:01.677519: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 00:45:01.719705: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 00:45:01.719816: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 00:45:01.720920: High export rate found rates in range 99p to -99p 2026-08-15 00:45:01.796260: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 00:45:01.796401: Car 0 charging is not planned as it is not plugged in 2026-08-15 00:45:01.809003: Battery level now 1.68kWh, -1hr ago 2.24kWh, at midnight 1.66kWh, battery value change in the last hour -6.62p, change today 0.28p, rate_forward 11.83p 2026-08-15 00:45:01.809433: Last hour: net energy 1.0kWh, import 1.0kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 28.47p, import 28.47p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 00:45:01.854211: Today's energy total net 1.0kWh, import 1.0kWh, export 0.0kWh, cost 78.45p, import 28.47p, export 0.0p, carbon 0.0kg 2026-08-15 00:45:01.854338: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 00:45:01.925903: Using weighted-bucket historical load forecast over 14 days 2026-08-15 00:45:01.947399: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 00:45:01.947471: Today's predicted so far 0.63kWh with 0.0kWh car/iBoost excluded, 0.57kWh import ignored, and 0.63kWh forecast extra. 2026-08-15 00:45:01.947503: Today's actual load so far 0.97kWh with 0.0kWh car/iBoost excluded, and 0.57kWh import ignored. 2026-08-15 00:45:01.983272: Inverter 0: Type SK Sunsynk 2026-08-15 00:45:01.983375: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 00:45:01.983557: Reserve min: 7%, battery_min: 7% 2026-08-15 00:45:01.983628: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 00:45:01.983888: Inverter 0 SoC: 1.54kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 557W, current battery voltage 51.2V, grid power -56W, load power 595W, PV Power 0W 2026-08-15 00:45:01.984044: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:45:01.984133: Inverter 0 scheduled charge enable is False 2026-08-15 00:45:01.984168: Inverter 0 charge windows currently [] 2026-08-15 00:45:01.984194: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 00:45:01.984303: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:45:01.984339: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:45:01.984389: Inverter 0 scheduled discharge enable is False 2026-08-15 00:45:01.984524: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:45:01.984561: Inverter 0 discharge windows currently [] 2026-08-15 00:45:01.984584: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:45:01.984602: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:45:01.984620: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:45:02.037886: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 00:45:02.037997: Plan was last updated on 2026-08-15 00:40:00+01:00 and is now 5.0 minutes old 2026-08-15 00:45:02.038283: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 00:45:02.038333: Best export window [ ] 2026-08-15 00:45:02.039187: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:45:02.042345: Load divergence over 8.0 hours mean 450.2W, min 226.2W, max 892.2W, std dev 91.86W, divergence 10.2% 2026-08-15 00:45:02.061410: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:45:02.061716: LoadML is_calculating False 2026-08-15 00:45:02.061793: Creating pool of 12 processes to match your CPU count 2026-08-15 00:45:02.177875: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 847.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 29.8kWh, PV 0.0kWh 2026-08-15 00:45:02.302350: Battery has 0.25 hours left - now at 1.54kWh 2026-08-15 00:45:02.350578: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 882.17p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 31.17kWh, PV 0.0kWh 2026-08-15 00:45:02.439615: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 710.45p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 31.17kWh, PV 0.0kWh 2026-08-15 00:45:02.529294: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 677.2p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 29.8kWh, PV 0.0kWh 2026-08-15 00:45:02.529401: Saving plan best values to HA entities 2026-08-15 00:45:02.680157: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-15 00:45:02.685853: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 00:45:02.691162: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.21kWh, house 9.74kWh, export 0.0kWh, metric 677.2p, metric10 710.45p 2026-08-15 00:45:02.762430: Marginal costs baseline metric (no standing charge): 627.2181 2026-08-15 00:45:03.047553: Marginal energy costs matrix computed: min=15.7 max=27.23 2026-08-15 00:45:03.128682: Rate array import [{'start': 45, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2135, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 45, 'end': 2135, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 00:45:03.129571: - Your estimated bill for today is £6.00 and tomorrow is £5.53 2026-08-15 00:45:03.129635: - Import rates are expensive (24.6p - 27.6p) for the next 6 and a quarter hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 00:45:03.129678: - The battery is currently at 10% and is in eco mode for the next 10 hours. 2026-08-15 00:45:03.129714: - For the next 48 hours there will be no solar generation. 2026-08-15 00:45:03.129753: - You will run out of battery in 15 minutes. 2026-08-15 00:45:03.129788: - Your next charge slot will be in 10 hours where import rates will be cheap (15.5p). 2026-08-15 00:45:03.129821: 2026-08-15 00:45:03.185373: Plan calculation took 1.15 seconds 2026-08-15 00:45:03.188569: No high rate period found 2026-08-15 00:45:03.234848: Import threshold used for optimisation was 27.18p 2026-08-15 00:45:03.280419: Low import rate windows [0: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 1: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 2: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 3: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 4: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 5: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 6: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 7: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 8: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 9: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 10: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 11: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 12: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 13: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 14: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 15: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 16: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 17: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 18: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 19: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 20: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 21: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 22: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 23: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 24: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 25: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 26: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 27: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 28: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 29: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 30: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 31: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 32: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 33: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 34: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 35: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 36: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 37: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 38: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 39: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 40: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 41: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 42: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 43: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 44: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 45: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 46: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 47: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 48: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 49: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 50: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 51: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 52: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 53: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 54: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 55: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 56: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 57: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 58: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 59: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 60: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 61: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 62: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 63: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 64: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 65: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 66: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 67: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 68: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 69: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 70: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 71: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 72: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 73: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 74: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 75: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 76: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 77: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 78: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 79: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 80: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 81: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 82: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 83: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 84: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 85: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 86: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 87: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 88: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 89: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 90: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 91: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 92: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 93: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 94: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18] 2026-08-15 00:45:03.286006: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-15 00:45:03.286112: Inverter 0 disabled charge window while waiting for schedule (now 08-15 00:45:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 00:45:03.286212: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:45:03.286466: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:45:03.286545: No export window planned 2026-08-15 00:45:03.286638: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 00:45:03.286668: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:45:03.286800: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:45:03.286980: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 00:45:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 00:45:03.287033: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 00:45:03.287085: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 00:45:03.287183: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:45:03.287215: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:45:03.287237: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:45:03.287258: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:45:03.287277: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:45:03.287302: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:45:03.287321: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:45:03.287383: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:45:03.287416: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:45:03.287437: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:45:03.287458: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:45:03.287477: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:45:03.287495: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:45:03.287515: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:45:03.287531: Inverter 0 count register writes 0 2026-08-15 00:45:03.300684: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-15 00:45:03.305219: Total inverter register writes now 815 2026-08-15 00:45:03.333658: Info: Completed run status Demand 2026-08-15 00:45:03.339342: Info: record_status Demand 2026-08-15 00:45:03.345281: Saved current settings to /config/predbat_config.json 2026-08-15 00:45:03.345589: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 00:45:42.448111: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:45:42.448382: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:45:42.448428: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:45:42.448604: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:45:42.448650: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:45:42.448672: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:45:42.448690: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:47:56.673818: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:47:56.674082: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:47:56.674123: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:47:56.674297: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:47:56.674367: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:47:56.674391: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:47:56.674410: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:49:56.887149: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:49:56.887432: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:49:56.887468: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:49:56.887641: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:49:56.887699: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:49:56.887730: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:49:56.887744: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:50:00.967040: --------------- PredBat - update at 2026-08-15 00:50:00+01:00 with clock skew 0 minutes, minutes now 50 2026-08-15 00:50:00.968249: Saved current settings to /config/predbat_config.json 2026-08-15 00:50:00.968439: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 50.0 minutes 2026-08-15 00:50:00.968563: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 00:50:00.968669: Autoupdate: Currently up to date 2026-08-15 00:50:00.987831: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 00:50:00.987964: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 00:50:00.988128: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 00:50:00.988668: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 00:50:00.988790: Predbat mode is set to Control charge & discharge 2026-08-15 00:50:01.194273: Found 21602 load_today datapoints going back 28 days 2026-08-15 00:50:01.194441: Using load_power data to fill gaps in load_today data 2026-08-15 00:50:01.897154: Processing 721 30-minute periods for power integration 2026-08-15 00:50:02.051085: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 00:50:02.051763: Car charging hold False, threshold 6.0kWh 2026-08-15 00:50:02.051907: Current data so far today: load 1.25kWh, import 1.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 00:50:02.064980: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 00:50:02.065356: Standing charge is set to 49.98p 2026-08-15 00:50:02.089928: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 00:50:02.089999: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 00:50:02.090182: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 50.0 minutes 2026-08-15 00:50:02.090559: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 49.7 minutes 2026-08-15 00:50:02.093210: Loaded 47 datapoints of futurerate analysis 2026-08-15 00:50:02.163189: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 00:50:02.211264: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 00:50:02.211671: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 00:50:02.245908: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 00:50:02.246015: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 00:50:02.247413: High export rate found rates in range 99p to -99p 2026-08-15 00:50:02.311403: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 00:50:02.311537: Car 0 charging is not planned as it is not plugged in 2026-08-15 00:50:02.322614: Battery level now 1.54kWh, -1hr ago 1.94kWh, at midnight 1.66kWh, battery value change in the last hour -4.83p, change today -1.42p, rate_forward 11.83p 2026-08-15 00:50:02.322899: Last hour: net energy 1.0kWh, import 1.0kWh, export 0.0kWh, car 0kWh, load 1.4kWh, net cost 28.47p, import 28.47p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 00:50:02.365001: Today's energy total net 1.0kWh, import 1.0kWh, export 0.0kWh, cost 78.45p, import 28.47p, export 0.0p, carbon 0.0kg 2026-08-15 00:50:02.365106: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 00:50:02.427464: Using weighted-bucket historical load forecast over 14 days 2026-08-15 00:50:02.445535: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 00:50:02.445620: Today's predicted so far 0.69kWh with 0.0kWh car/iBoost excluded, 0.59kWh import ignored, and 0.69kWh forecast extra. 2026-08-15 00:50:02.445648: Today's actual load so far 1.16kWh with 0.0kWh car/iBoost excluded, and 0.59kWh import ignored. 2026-08-15 00:50:02.479372: Inverter 0: Type SK Sunsynk 2026-08-15 00:50:02.479455: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 00:50:02.479621: Reserve min: 7%, battery_min: 7% 2026-08-15 00:50:02.479690: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 00:50:02.479923: Inverter 0 SoC: 1.42kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4484W, current battery voltage 51.2V, grid power -6589W, load power 1591W, PV Power 0W 2026-08-15 00:50:02.480061: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:50:02.480130: Inverter 0 scheduled charge enable is False 2026-08-15 00:50:02.480160: Inverter 0 charge windows currently [] 2026-08-15 00:50:02.480182: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 00:50:02.480268: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:50:02.480297: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:50:02.480325: Inverter 0 scheduled discharge enable is False 2026-08-15 00:50:02.480447: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:50:02.480478: Inverter 0 discharge windows currently [] 2026-08-15 00:50:02.480497: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:50:02.480512: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:50:02.480526: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:50:02.530694: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 00:50:02.530791: Plan was last updated on 2026-08-15 00:40:00+01:00 and is now 10.0 minutes old 2026-08-15 00:50:02.531042: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 00:50:02.531078: Best export window [ ] 2026-08-15 00:50:02.531691: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:50:02.534271: Load divergence over 8.0 hours mean 446.5W, min 278.4W, max 766.8W, std dev 71.42W, divergence 8.0% 2026-08-15 00:50:02.549531: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:50:02.549626: LoadML is_calculating False 2026-08-15 00:50:02.549681: Creating pool of 12 processes to match your CPU count 2026-08-15 00:50:02.650995: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 849.17p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 30.04kWh, PV 0.0kWh 2026-08-15 00:50:02.758413: Battery has 0.17 hours left - now at 1.42kWh 2026-08-15 00:50:02.799778: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 883.87p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 31.41kWh, PV 0.0kWh 2026-08-15 00:50:02.878357: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 717.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 31.41kWh, PV 0.0kWh 2026-08-15 00:50:02.969425: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 685.12p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 30.04kWh, PV 0.0kWh 2026-08-15 00:50:02.969541: Saving plan best values to HA entities 2026-08-15 00:50:03.116089: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-15 00:50:03.121609: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 00:50:03.126695: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.73kWh, house 9.74kWh, export 0.0kWh, metric 685.12p, metric10 717.42p 2026-08-15 00:50:03.193575: Marginal costs baseline metric (no standing charge): 635.1358 2026-08-15 00:50:03.431741: Marginal energy costs matrix computed: min=15.65 max=27.18 2026-08-15 00:50:03.502598: Rate array import [{'start': 50, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2140, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 50, 'end': 2140, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 00:50:03.503252: - Your estimated bill for today is £5.99 and tomorrow is £5.54 2026-08-15 00:50:03.503310: - Import rates are expensive (24.6p - 27.6p) for the next 6 and a quarter hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 00:50:03.503359: - The battery is currently at 9% and is in eco mode for the next 10 hours. 2026-08-15 00:50:03.503731: - For the next 48 hours there will be no solar generation. 2026-08-15 00:50:03.503798: - You will run out of battery in 10 minutes. 2026-08-15 00:50:03.503816: - Your next charge slot will be in 10 hours where import rates will be cheap (15.5p). 2026-08-15 00:50:03.503830: 2026-08-15 00:50:03.555052: Plan calculation took 1.02 seconds 2026-08-15 00:50:03.557629: No high rate period found 2026-08-15 00:50:03.606347: Import threshold used for optimisation was 27.18p 2026-08-15 00:50:03.656076: Low import rate windows [0: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 1: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 2: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 3: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 4: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 5: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 6: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 7: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 8: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 9: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 10: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 11: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 12: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 13: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 14: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 15: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 16: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 17: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 18: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 19: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 20: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 21: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 22: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 23: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 24: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 25: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 26: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 27: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 28: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 29: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 30: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 31: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 32: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 33: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 34: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 35: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 36: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 37: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 38: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 39: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 40: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 41: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 42: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 43: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 44: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 45: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 46: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 47: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 48: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 49: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 50: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 51: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 52: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 53: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 54: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 55: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 56: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 57: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 58: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 59: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 60: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 61: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 62: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 63: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 64: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 65: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 66: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 67: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 68: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 69: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 70: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 71: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 72: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 73: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 74: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 75: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 76: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 77: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 78: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 79: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 80: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 81: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 82: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 83: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 84: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 85: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 86: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 87: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 88: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 89: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 90: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 91: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 92: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 93: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 94: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18] 2026-08-15 00:50:03.662827: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-15 00:50:03.662961: Inverter 0 disabled charge window while waiting for schedule (now 08-15 00:50:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 00:50:03.663072: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:50:03.663387: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:50:03.663488: No export window planned 2026-08-15 00:50:03.663616: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 00:50:03.663667: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:50:03.663808: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:50:03.663996: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 00:50:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 00:50:03.664061: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 00:50:03.664121: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 00:50:03.664231: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:50:03.664273: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:50:03.664301: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:50:03.664327: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:50:03.664379: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:50:03.664404: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:50:03.664429: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:50:03.664494: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:50:03.664524: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:50:03.664549: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:50:03.664573: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:50:03.664596: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:50:03.664619: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:50:03.664642: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:50:03.664664: Inverter 0 count register writes 0 2026-08-15 00:50:03.680247: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-15 00:50:03.680471: Recompute is saving previous plan... 2026-08-15 00:50:03.683651: Best charge window [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 0%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 0% ] 2026-08-15 00:50:03.683727: Best export window [ ] 2026-08-15 00:50:03.684527: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:50:03.687718: Load divergence over 8.0 hours mean 446.5W, min 278.4W, max 766.8W, std dev 71.42W, divergence 8.0% 2026-08-15 00:50:03.706417: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:50:03.706525: LoadML is_calculating False 2026-08-15 00:50:03.706592: Creating pool of 12 processes to match your CPU count 2026-08-15 00:50:03.793435: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-15 00:50:03.795705: Optimise levels pass started at 2026-08-15 00:50:03 2026-08-15 00:50:03.795773: Optimise all windows, total charge 94 export 1 2026-08-15 00:50:04.817303: >> Region optimisation pass width 960 gives best_metric 773.77p, best_cost 778.65p, best_cycle 45.27kWh, best_import 41.1kWh 2026-08-15 00:50:05.231530: >> Region optimisation pass width 480 gives best_metric 773.77p, best_cost 778.65p, best_cycle 45.27kWh, best_import 41.1kWh 2026-08-15 00:50:05.795464: >> Region optimisation pass width 240 gives best_metric 773.77p, best_cost 778.65p, best_cycle 45.27kWh, best_import 41.1kWh 2026-08-15 00:50:06.884142: >> Region optimisation pass width 120 gives best_metric 773.77p, best_cost 778.65p, best_cycle 45.27kWh, best_import 41.1kWh 2026-08-15 00:50:06.884565: Calculated end_record as 08-16 11:30:00 based on best_price 16.34p, next_charge_start 08-15 11:30:00, max_windows 69 2026-08-15 00:50:06.884644: Optimise levels pass ended at 2026-08-15 00:50:06, duration 3.1 seconds tried 321 combinations 2026-08-15 00:50:06.884717: Set best_price_charge_level 17.6p, best_price_export_level 0p, best_price_charge 16.34p, best_cost_export 0p, best_metric 773.77p, best_keep 0kWh, best_cycle 45.27kWh, best_carbon 0kg, best_import 41.1kWh 2026-08-15 00:50:06.905517: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 16.34p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-15 00:50:11.157498: Tweak plan optimisation started metric 611.0p, cost 619.12p 2026-08-15 00:50:11.393674: Tweak optimisation finished metric 611.0p, cost 619.12p, metric_keep 0kWh, cycle 30.06kWh, carbon 0kg, import 30.43kWh, changed 8 window(s) 2026-08-15 00:50:11.414759: Swap charge optimisation started metric 611.0p, cost 619.12p, min_improvement_swap 0.1p 2026-08-15 00:50:17.715427: Swap charge optimisation finished metric 611.0p, cost 619.12p 2026-08-15 00:50:17.818018: Pruned 1 dead plan slot(s) in 10 trial(s), nominal metric 605.88p -> 605.88p, plan now metric 611.02p, cost 619.12p, cycle 30.06kWh, import 30.43kWh 2026-08-15 00:50:17.828103: Raw charge windows [ 15-08 00:30:00 - 15-08 01:00:00 @ 27.18p 0%, 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 100%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 100% ] reserve 1.12 2026-08-15 00:50:17.828697: Unclipped charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 01:00:00 @ 28.01p 100% ] reserve 1.12 2026-08-15 00:50:17.828997: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 01:00:00 @ 28.01p 100% ] reserve 1.12 2026-08-15 00:50:17.829226: Filtered charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 01:00:00 @ 28.01p 100% ] reserve 1.12 2026-08-15 00:50:17.860482: Previous plan best metric is 611.0 (cost 619.12) and new plan best metric is 611.0 (cost 619.12) 2026-08-15 00:50:17.860651: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-15 00:50:17.860828: Plan valid is now true after recompute was False 2026-08-15 00:50:17.885255: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 846.04p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 29.84kWh, PV 0.0kWh 2026-08-15 00:50:17.985235: Battery has 0.17 hours left - now at 1.42kWh 2026-08-15 00:50:18.029788: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 880.59p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 31.2kWh, PV 0.0kWh 2026-08-15 00:50:18.101527: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 703.4p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 31.2kWh, PV 0.0kWh 2026-08-15 00:50:18.177810: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 669.11p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:00:00, load 29.84kWh, PV 0.0kWh 2026-08-15 00:50:18.177896: Saving plan best values to HA entities 2026-08-15 00:50:18.314038: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-15 00:50:18.320077: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 00:50:18.325568: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 20.69kWh, house 9.74kWh, export 0.0kWh, metric 669.11p, metric10 703.4p 2026-08-15 00:50:18.384157: Marginal costs baseline metric (no standing charge): 619.1244 2026-08-15 00:50:18.616663: Marginal energy costs matrix computed: min=15.65 max=27.18 2026-08-15 00:50:18.678457: Rate array import [{'start': 50, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2130, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 50, 'end': 2130, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 00:50:18.679131: - Your estimated bill for today is £5.99 and tomorrow is £5.54 2026-08-15 00:50:18.679181: - Import rates are expensive (24.6p - 27.6p) for the next 6 and a quarter hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 00:50:18.679238: - The battery is currently at 9% and is in eco mode for the next 10 hours. 2026-08-15 00:50:18.679270: - For the next 48 hours there will be no solar generation. 2026-08-15 00:50:18.679298: - You will run out of battery in 10 minutes. 2026-08-15 00:50:18.679324: - Your next charge slot will be in 10 hours where import rates will be cheap (15.5p). 2026-08-15 00:50:18.679373: 2026-08-15 00:50:18.728821: Plan calculation took 15.05 seconds 2026-08-15 00:50:18.729262: Inverter 0: Type SK Sunsynk 2026-08-15 00:50:18.729313: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 00:50:18.729552: Reserve min: 7%, battery_min: 7% 2026-08-15 00:50:18.729638: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 00:50:18.729965: Inverter 0 SoC: 1.42kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4484W, current battery voltage 51.2V, grid power -6589W, load power 1591W, PV Power 0W 2026-08-15 00:50:18.730192: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:50:18.730310: Inverter 0 scheduled charge enable is False 2026-08-15 00:50:18.730363: Inverter 0 charge windows currently [] 2026-08-15 00:50:18.730398: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 00:50:18.730541: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:50:18.730577: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:50:18.730614: Inverter 0 scheduled discharge enable is False 2026-08-15 00:50:18.730777: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:50:18.730812: Inverter 0 discharge windows currently [] 2026-08-15 00:50:18.730833: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:50:18.730867: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:50:18.730897: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:50:18.775077: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-15 00:50:18.775205: Inverter 0 disabled charge window while waiting for schedule (now 08-15 00:50:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 00:50:18.775272: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:50:18.775500: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:50:18.775612: No export window planned 2026-08-15 00:50:18.775766: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 00:50:18.775833: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:50:18.775993: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:50:18.776167: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 00:50:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 00:50:18.776217: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 00:50:18.776301: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 00:50:18.776432: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:50:18.776480: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:50:18.776518: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:50:18.776588: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:50:18.776646: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:50:18.776700: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:50:18.776741: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:50:18.776833: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:50:18.776881: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:50:18.776929: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:50:18.777003: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:50:18.777054: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:50:18.777098: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:50:18.777176: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:50:18.777220: Inverter 0 count register writes 0 2026-08-15 00:50:18.795649: Total inverter register writes now 815 2026-08-15 00:50:18.826616: Info: Completed run status Demand 2026-08-15 00:50:18.833580: Info: record_status Demand 2026-08-15 00:50:18.840389: Saved current settings to /config/predbat_config.json 2026-08-15 00:50:18.840726: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 00:50:56.944914: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:50:56.945211: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:50:56.945261: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:50:56.945494: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:50:56.945533: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:50:56.945554: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:50:56.945577: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:52:57.163833: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:52:57.164040: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:52:57.164074: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:52:57.164204: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:52:57.164275: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:52:57.164292: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:52:57.164307: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:54:57.373150: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:54:57.373546: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:54:57.373610: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:54:57.373795: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:54:57.373837: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:54:57.373898: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:54:57.373939: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:55:00.446418: --------------- PredBat - update at 2026-08-15 00:55:00+01:00 with clock skew 0 minutes, minutes now 55 2026-08-15 00:55:00.447293: Saved current settings to /config/predbat_config.json 2026-08-15 00:55:00.447477: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 55.0 minutes 2026-08-15 00:55:00.447627: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 00:55:00.447760: Autoupdate: Currently up to date 2026-08-15 00:55:00.471154: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 00:55:00.471442: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 00:55:00.471666: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 00:55:00.472203: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 00:55:00.472321: Predbat mode is set to Control charge & discharge 2026-08-15 00:55:00.688777: Found 21602 load_today datapoints going back 28 days 2026-08-15 00:55:00.689004: Using load_power data to fill gaps in load_today data 2026-08-15 00:55:01.568409: Processing 721 30-minute periods for power integration 2026-08-15 00:55:01.769416: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 00:55:01.769563: Car charging hold False, threshold 6.0kWh 2026-08-15 00:55:01.769611: Current data so far today: load 1.4kWh, import 1.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 00:55:01.785719: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 00:55:01.786132: Standing charge is set to 49.98p 2026-08-15 00:55:01.813135: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 00:55:01.813266: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 00:55:01.813555: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 55.0 minutes 2026-08-15 00:55:01.814148: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 54.7 minutes 2026-08-15 00:55:01.817734: Loaded 47 datapoints of futurerate analysis 2026-08-15 00:55:01.907358: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 00:55:01.970033: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 00:55:01.970445: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 00:55:02.012857: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 00:55:02.013019: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 00:55:02.014257: High export rate found rates in range 99p to -99p 2026-08-15 00:55:02.089567: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 00:55:02.089692: Car 0 charging is not planned as it is not plugged in 2026-08-15 00:55:02.102210: Battery level now 1.42kWh, -1hr ago 1.8kWh, at midnight 1.66kWh, battery value change in the last hour -4.54p, change today -2.84p, rate_forward 11.83p 2026-08-15 00:55:02.102603: Last hour: net energy 1.0kWh, import 1.0kWh, export 0.0kWh, car 0kWh, load 1.4kWh, net cost 28.47p, import 28.47p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 00:55:02.150462: Today's energy total net 1.0kWh, import 1.0kWh, export 0.0kWh, cost 78.45p, import 28.47p, export 0.0p, carbon 0.0kg 2026-08-15 00:55:02.150640: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 00:55:02.211599: Using weighted-bucket historical load forecast over 14 days 2026-08-15 00:55:02.229764: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 00:55:02.229861: Today's predicted so far 0.74kWh with 0.0kWh car/iBoost excluded, 0.61kWh import ignored, and 0.74kWh forecast extra. 2026-08-15 00:55:02.229886: Today's actual load so far 1.32kWh with 0.0kWh car/iBoost excluded, and 0.61kWh import ignored. 2026-08-15 00:55:02.261870: Inverter 0: Type SK Sunsynk 2026-08-15 00:55:02.261945: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 00:55:02.262097: Reserve min: 7%, battery_min: 7% 2026-08-15 00:55:02.262150: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 00:55:02.262375: Inverter 0 SoC: 1.42kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4484W, current battery voltage 51.2V, grid power -6600W, load power 1605W, PV Power 0W 2026-08-15 00:55:02.262508: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:55:02.262582: Inverter 0 scheduled charge enable is False 2026-08-15 00:55:02.262605: Inverter 0 charge windows currently [] 2026-08-15 00:55:02.262626: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 00:55:02.262718: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:55:02.262748: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:55:02.262778: Inverter 0 scheduled discharge enable is False 2026-08-15 00:55:02.262879: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:55:02.262909: Inverter 0 discharge windows currently [] 2026-08-15 00:55:02.262927: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:55:02.262941: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:55:02.262957: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:55:02.313414: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 00:55:02.313526: Plan was last updated on 2026-08-15 00:50:00+01:00 and is now 5.0 minutes old 2026-08-15 00:55:02.313797: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 00:55:02.313839: Best export window [ ] 2026-08-15 00:55:02.314689: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 00:55:02.318213: Load divergence over 8.0 hours mean 444.03W, min 312.6W, max 960.0W, std dev 82.76W, divergence 9.32% 2026-08-15 00:55:02.336739: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 00:55:02.336853: LoadML is_calculating False 2026-08-15 00:55:02.336985: Creating pool of 12 processes to match your CPU count 2026-08-15 00:55:02.445504: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 845.64p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 30.01kWh, PV 0.0kWh 2026-08-15 00:55:02.565013: Battery has 0.17 hours left - now at 1.42kWh 2026-08-15 00:55:02.610622: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 880.17p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 31.37kWh, PV 0.0kWh 2026-08-15 00:55:02.689763: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 708.17p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 31.37kWh, PV 0.0kWh 2026-08-15 00:55:02.768061: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 674.84p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:05:00, load 30.01kWh, PV 0.0kWh 2026-08-15 00:55:02.768155: Saving plan best values to HA entities 2026-08-15 00:55:02.921515: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 00:55:02.927203: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 00:55:02.933111: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.2kWh, house 9.67kWh, export 0.0kWh, metric 674.84p, metric10 708.17p 2026-08-15 00:55:03.009832: Marginal costs baseline metric (no standing charge): 624.8569 2026-08-15 00:55:03.325861: Marginal energy costs matrix computed: min=15.6 max=27.13 2026-08-15 00:55:03.400822: Rate array import [{'start': 55, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2135, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 55, 'end': 2135, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 00:55:03.401906: - Your estimated bill for today is £5.97 and tomorrow is £5.55 2026-08-15 00:55:03.401953: - Import rates are expensive (24.6p - 27.6p) for the next 6 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 00:55:03.401972: - The battery is currently at 9% and is in eco mode for the next 10 hours. 2026-08-15 00:55:03.401987: - For the next 48 hours there will be no solar generation. 2026-08-15 00:55:03.402000: - You will run out of battery in 10 minutes. 2026-08-15 00:55:03.402013: - Your next charge slot will be in 10 hours where import rates will be cheap (15.5p). 2026-08-15 00:55:03.402027: 2026-08-15 00:55:03.451955: Plan calculation took 1.14 seconds 2026-08-15 00:55:03.455235: No high rate period found 2026-08-15 00:55:03.502239: Import threshold used for optimisation was 22.73p 2026-08-15 00:55:03.547976: Low import rate windows [0: 08-15 00:30:00 - 08-15 01:00:00 @ 27.18, 1: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 2: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 3: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 4: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 5: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 6: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 7: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 8: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 9: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 10: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 11: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 12: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 13: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 14: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 15: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 16: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 17: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 18: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 19: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 20: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 21: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 22: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 23: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 24: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 25: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 26: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 27: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 28: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 29: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 30: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 31: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 32: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 33: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 34: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 35: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 36: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 37: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 38: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 39: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 40: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 41: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 42: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 43: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 44: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 45: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 46: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 47: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 48: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 49: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 50: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 51: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 52: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 53: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 54: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 55: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 56: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 57: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 58: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 59: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 60: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 61: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 62: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 63: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 64: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 65: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 66: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 67: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 68: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 69: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 70: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 71: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 72: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 73: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 74: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 75: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 76: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 77: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 78: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 79: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 80: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 81: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 82: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 83: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 84: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 85: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 86: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 87: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 88: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 89: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 90: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 91: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 92: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 93: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 94: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18] 2026-08-15 00:55:03.555436: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-15 00:55:03.555587: Inverter 0 disabled charge window while waiting for schedule (now 08-15 00:55:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 00:55:03.555706: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:55:03.556009: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:55:03.556100: No export window planned 2026-08-15 00:55:03.556213: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 00:55:03.556274: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 00:55:03.556438: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 00:55:03.556634: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 00:55:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 00:55:03.556724: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 00:55:03.556788: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 00:55:03.556876: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:55:03.556936: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:55:03.556999: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:55:03.557034: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:55:03.557069: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:55:03.557098: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:55:03.557126: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 00:55:03.557192: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:55:03.557228: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:55:03.557254: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:55:03.557278: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:55:03.557322: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:55:03.557351: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:55:03.557375: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 00:55:03.557396: Inverter 0 count register writes 0 2026-08-15 00:55:03.573366: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-15 00:55:03.577816: Total inverter register writes now 815 2026-08-15 00:55:03.608870: Info: Completed run status Demand 2026-08-15 00:55:03.614417: Info: record_status Demand 2026-08-15 00:55:03.621247: Saved current settings to /config/predbat_config.json 2026-08-15 00:55:03.621532: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 00:55:41.727166: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:55:41.727396: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:55:41.727436: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:55:41.727602: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:55:41.727664: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:55:41.727710: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:55:41.727724: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:57:14.378637: TemperatureAPI: Using coordinates latitude 53.4, longitude -2.2 2026-08-15 00:57:14.554086: TemperatureAPI: Successfully fetched temperature data from Open-Meteo API 2026-08-15 00:57:41.927680: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:57:41.927913: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:57:41.927955: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:57:41.928127: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:57:41.928177: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:57:41.928198: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:57:41.928215: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 00:58:25.755181: Info: HAHistory: Pruning history data started. 2026-08-15 00:58:25.757598: Info: HAHistory: Pruning history data completed. 2026-08-15 00:59:42.147183: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 00:59:42.147446: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 00:59:42.147491: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 00:59:42.147624: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 00:59:42.147663: Note: Inverter does not support discharge freeze - disabled 2026-08-15 00:59:42.147684: Note: Inverter does not support charge freeze - disabled 2026-08-15 00:59:42.147701: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:00:00.244940: --------------- PredBat - update at 2026-08-15 01:00:00+01:00 with clock skew 0 minutes, minutes now 60 2026-08-15 01:00:00.245849: Saved current settings to /config/predbat_config.json 2026-08-15 01:00:00.245981: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 60.0 minutes 2026-08-15 01:00:00.246083: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 01:00:00.246205: Autoupdate: Currently up to date 2026-08-15 01:00:00.271411: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 01:00:00.271605: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 01:00:00.271786: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 01:00:00.272350: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 01:00:00.272523: Predbat mode is set to Control charge & discharge 2026-08-15 01:00:00.504732: Found 21602 load_today datapoints going back 27 days 2026-08-15 01:00:00.504901: Using load_power data to fill gaps in load_today data 2026-08-15 01:00:01.314705: Processing 721 30-minute periods for power integration 2026-08-15 01:00:01.540218: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 01:00:01.540385: Car charging hold False, threshold 6.0kWh 2026-08-15 01:00:01.540437: Current data so far today: load 1.25kWh, import 1.6kWh, export 0.0kWh, PV 0kWh 2026-08-15 01:00:01.556992: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 01:00:01.557905: Standing charge is set to 49.98p 2026-08-15 01:00:01.585318: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 01:00:01.585426: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 01:00:01.585625: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 60.0 minutes 2026-08-15 01:00:01.586001: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 59.6 minutes 2026-08-15 01:00:01.589706: Loaded 47 datapoints of futurerate analysis 2026-08-15 01:00:01.682199: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 01:00:01.734620: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 01:00:01.735057: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 01:00:01.788125: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 01:00:01.788327: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 01:00:01.790511: High export rate found rates in range 99p to -99p 2026-08-15 01:00:01.855452: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 01:00:01.855588: Car 0 charging is not planned as it is not plugged in 2026-08-15 01:00:01.867226: Battery level now 1.42kWh, -1hr ago 1.66kWh, at midnight 1.66kWh, battery value change in the last hour -2.84p, change today -2.84p, rate_forward 11.83p 2026-08-15 01:00:01.867549: Last hour: net energy 1.6kWh, import 1.6kWh, export 0.0kWh, car 0kWh, load 1.25kWh, net cost 44.88p, import 44.88p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 01:00:01.912867: Today's energy total net 1.6kWh, import 1.6kWh, export 0.0kWh, cost 94.89p, import 44.9p, export 0.0p, carbon 0.0kg 2026-08-15 01:00:01.913178: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 01:00:01.973755: Using weighted-bucket historical load forecast over 14 days 2026-08-15 01:00:01.994848: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 01:00:01.994930: Today's predicted so far 0.88kWh with 0.0kWh car/iBoost excluded, 0.57kWh import ignored, and 0.88kWh forecast extra. 2026-08-15 01:00:01.994956: Today's actual load so far 1.31kWh with 0.0kWh car/iBoost excluded, and 0.57kWh import ignored. 2026-08-15 01:00:02.027833: Inverter 0: Type SK Sunsynk 2026-08-15 01:00:02.027907: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 01:00:02.028129: Reserve min: 7%, battery_min: 7% 2026-08-15 01:00:02.028204: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 01:00:02.028476: Inverter 0 SoC: 2.03kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power 545W, current battery voltage 51.2V, grid power -55W, load power 591W, PV Power 0W 2026-08-15 01:00:02.028617: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:00:02.028694: Inverter 0 scheduled charge enable is False 2026-08-15 01:00:02.028723: Inverter 0 charge windows currently [] 2026-08-15 01:00:02.028745: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 01:00:02.028830: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:00:02.028859: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:00:02.028892: Inverter 0 scheduled discharge enable is False 2026-08-15 01:00:02.029065: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:00:02.029107: Inverter 0 discharge windows currently [] 2026-08-15 01:00:02.029126: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:00:02.029141: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:00:02.029155: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:00:02.094914: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 01:00:02.095026: Plan was last updated on 2026-08-15 00:50:00+01:00 and is now 10.0 minutes old 2026-08-15 01:00:02.095320: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 01:00:02.095367: Best export window [ ] 2026-08-15 01:00:02.096159: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 01:00:02.099506: Load divergence over 8.0 hours mean 442.5W, min 290.4W, max 1000.8W, std dev 86.38W, divergence 9.76% 2026-08-15 01:00:02.118498: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 01:00:02.118620: LoadML is_calculating False 2026-08-15 01:00:02.118684: Creating pool of 12 processes to match your CPU count 2026-08-15 01:00:02.237656: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 843.53p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:40:00, load 29.79kWh, PV 0.0kWh 2026-08-15 01:00:02.392715: Battery has 0.67 hours left - now at 2.03kWh 2026-08-15 01:00:02.446048: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 877.84p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:40:00, load 31.14kWh, PV 0.0kWh 2026-08-15 01:00:02.544664: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 711.44p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:40:00, load 31.14kWh, PV 0.0kWh 2026-08-15 01:00:02.634591: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 679.71p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:40:00, load 29.79kWh, PV 0.0kWh 2026-08-15 01:00:02.634678: Saving plan best values to HA entities 2026-08-15 01:00:02.788432: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 01:00:02.793736: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 01:00:02.798988: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.7kWh, house 8.94kWh, export 0.0kWh, metric 679.71p, metric10 711.44p 2026-08-15 01:00:02.864813: Marginal costs baseline metric (no standing charge): 629.7243 2026-08-15 01:00:03.097691: Marginal energy costs matrix computed: min=15.55 max=27.0 2026-08-15 01:00:03.166581: Rate array import [{'start': 60, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2140, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 60, 'end': 2140, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 01:00:03.167158: - Your estimated bill for today is £5.95 and tomorrow is £5.51 2026-08-15 01:00:03.167211: - Import rates are expensive (24.6p - 27.6p) for the next 6 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 01:00:03.167229: - The battery is currently at 13% and is in eco mode for the next 10 hours. 2026-08-15 01:00:03.167244: - For the next 48 hours there will be no solar generation. 2026-08-15 01:00:03.167258: - You will run out of battery in 40 minutes. 2026-08-15 01:00:03.167272: - Your next charge slot will be in 10 hours where import rates will be cheap (15.5p). 2026-08-15 01:00:03.167286: 2026-08-15 01:00:03.227165: Plan calculation took 1.13 seconds 2026-08-15 01:00:03.229779: No high rate period found 2026-08-15 01:00:03.277725: Import threshold used for optimisation was 22.73p 2026-08-15 01:00:03.329821: Low import rate windows [0: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 1: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 2: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 3: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 4: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 5: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 6: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 7: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 8: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 9: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 10: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 11: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 12: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 13: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 14: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 15: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 16: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 17: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 18: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 19: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 20: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 21: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 22: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 23: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 24: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 25: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 26: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 27: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 28: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 29: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 30: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 31: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 32: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 33: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 34: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 35: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 36: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 37: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 38: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 39: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 40: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 41: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 42: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 43: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 44: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 45: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 46: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 47: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 48: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 49: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 50: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 51: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 52: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 53: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 54: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 55: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 56: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 57: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 58: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 59: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 60: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 61: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 62: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 63: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 64: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 65: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 66: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 67: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 68: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 69: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 70: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 71: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 72: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 73: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 74: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 75: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 76: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 77: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 78: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 79: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 80: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 81: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 82: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 83: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 84: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 85: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 86: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 87: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 88: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 89: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 90: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 91: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 92: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 93: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18] 2026-08-15 01:00:03.337693: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-15 01:00:03.337815: Inverter 0 disabled charge window while waiting for schedule (now 08-15 01:00:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 01:00:03.337939: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:00:03.338196: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:00:03.338284: No export window planned 2026-08-15 01:00:03.338447: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 01:00:03.338486: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:00:03.338635: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:00:03.338812: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 01:00:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 01:00:03.338872: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 01:00:03.338958: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 01:00:03.339071: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:00:03.339115: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:00:03.339147: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:00:03.339190: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:00:03.339229: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:00:03.339266: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:00:03.339324: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:00:03.339448: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:00:03.339505: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:00:03.339555: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:00:03.339610: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:00:03.339656: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:00:03.339712: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:00:03.339756: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:00:03.339796: Inverter 0 count register writes 0 2026-08-15 01:00:03.354165: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-15 01:00:03.354529: Recompute is saving previous plan... 2026-08-15 01:00:03.357726: Best charge window [ 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 0%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 0% ] 2026-08-15 01:00:03.357809: Best export window [ ] 2026-08-15 01:00:03.358532: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 01:00:03.361191: Load divergence over 8.0 hours mean 442.5W, min 290.4W, max 1000.8W, std dev 86.38W, divergence 9.76% 2026-08-15 01:00:03.375425: Calculating data from yesterday for savings calculation 2026-08-15 01:00:03.384871: Yesterday basic charge window best: [{'start': 840, 'end': 870, 'average': 21.7}] charge limit best: [16.0] based on max charge slots 1 2026-08-15 01:00:03.426085: predict yesterday end_record 08-16 00:00:00, final soc 1.12kWh, metric 843.72p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:00:00, load 26.2kWh, PV 0.0kWh 2026-08-15 01:00:03.437860: predict yesterday10 end_record 08-16 00:00:00, final soc 1.12kWh, metric 848.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:00:00, load 26.2kWh, PV 0.0kWh 2026-08-15 01:00:03.454132: predict yesterday end_record 08-16 00:00:00, final soc 1.12kWh, metric 843.72p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:00:00, load 26.2kWh, PV 0.0kWh 2026-08-15 01:00:03.481182: Yesterday: Predbat disabled was £8.44 (adjusted £8.3) vs £7.38 (adjusted £7.17), saving £1.05 (adjusted £1.13) with import 26.53kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 13.25kWh 2026-08-15 01:00:03.534554: predict yesterday end_record 08-16 00:00:00, final soc 0.0kWh, metric 852.35p, metric_keep 0kWh, min_soc 0kWh @ 08-15 00:00:00, load 26.2kWh, PV 0.0kWh 2026-08-15 01:00:03.534697: Yesterday: No Battery/PV system cost predicted was £8.52 (adjusted £8.52) vs £7.38 (adjusted £7.17), saving £1.14 (adjusted £1.35) with import 26.2kWh, export 0kWh and battery_value 0.0kWh 2026-08-15 01:00:03.545631: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 01:00:03.545747: LoadML is_calculating False 2026-08-15 01:00:03.545813: Creating pool of 12 processes to match your CPU count 2026-08-15 01:00:03.619711: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-15 01:00:03.621692: Optimise levels pass started at 2026-08-15 01:00:03 2026-08-15 01:00:03.621746: Optimise all windows, total charge 94 export 1 2026-08-15 01:00:04.767154: >> Region optimisation pass width 960 gives best_metric 771.94p, best_cost 776.86p, best_cycle 45.89kWh, best_import 40.41kWh 2026-08-15 01:00:05.212408: >> Region optimisation pass width 480 gives best_metric 771.94p, best_cost 776.86p, best_cycle 45.89kWh, best_import 40.41kWh 2026-08-15 01:00:05.795655: >> Region optimisation pass width 240 gives best_metric 771.94p, best_cost 776.86p, best_cycle 45.89kWh, best_import 40.41kWh 2026-08-15 01:00:06.959471: >> Region optimisation pass width 120 gives best_metric 771.94p, best_cost 776.86p, best_cycle 45.89kWh, best_import 40.41kWh 2026-08-15 01:00:06.959835: Calculated end_record as 08-16 11:30:00 based on best_price 16.34p, next_charge_start 08-15 11:30:00, max_windows 68 2026-08-15 01:00:06.959897: Optimise levels pass ended at 2026-08-15 01:00:06, duration 3.3 seconds tried 318 combinations 2026-08-15 01:00:06.959955: Set best_price_charge_level 17.6p, best_price_export_level 0p, best_price_charge 16.34p, best_cost_export 0p, best_metric 771.94p, best_keep 0kWh, best_cycle 45.89kWh, best_carbon 0kg, best_import 40.41kWh 2026-08-15 01:00:06.977677: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 16.34p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-15 01:00:11.890636: Tweak plan optimisation started metric 605.63p, cost 613.83p 2026-08-15 01:00:12.141714: Tweak optimisation finished metric 605.63p, cost 613.83p, metric_keep 0kWh, cycle 31.42kWh, carbon 0kg, import 29.67kWh, changed 8 window(s) 2026-08-15 01:00:12.163239: Swap charge optimisation started metric 605.63p, cost 613.83p, min_improvement_swap 0.1p 2026-08-15 01:00:19.340824: Swap charge optimisation finished metric 605.63p, cost 613.83p 2026-08-15 01:00:19.476857: Pruned 1 dead plan slot(s) in 11 trial(s), nominal metric 600.58p -> 600.58p, plan now metric 605.63p, cost 613.83p, cycle 31.42kWh, import 29.67kWh 2026-08-15 01:00:19.489547: Raw charge windows [ 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 100%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 100% ] reserve 1.12 2026-08-15 01:00:19.490198: Unclipped charge windows [ 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 01:00:00 @ 28.01p 100% ] reserve 1.12 2026-08-15 01:00:19.490572: Unfiltered charge windows [ 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 01:00:00 @ 28.01p 100% ] reserve 1.12 2026-08-15 01:00:19.490869: Filtered charge windows [ 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 01:00:00 @ 28.01p 100% ] reserve 1.12 2026-08-15 01:00:19.531466: Previous plan best metric is 605.68 (cost 613.87) and new plan best metric is 605.63 (cost 613.83) 2026-08-15 01:00:19.531730: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-15 01:00:19.531926: Plan valid is now true after recompute was False 2026-08-15 01:00:19.561207: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 840.55p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:40:00, load 29.59kWh, PV 0.0kWh 2026-08-15 01:00:19.666527: Battery has 0.67 hours left - now at 2.03kWh 2026-08-15 01:00:19.711448: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 874.72p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:40:00, load 30.94kWh, PV 0.0kWh 2026-08-15 01:00:19.787794: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 697.59p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:40:00, load 30.94kWh, PV 0.0kWh 2026-08-15 01:00:19.862075: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 663.85p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:40:00, load 29.59kWh, PV 0.0kWh 2026-08-15 01:00:19.862156: Saving plan best values to HA entities 2026-08-15 01:00:20.003379: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 01:00:20.008658: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 01:00:20.013460: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 20.68kWh, house 8.94kWh, export 0.0kWh, metric 663.85p, metric10 697.59p 2026-08-15 01:00:20.077053: Marginal costs baseline metric (no standing charge): 613.8675 2026-08-15 01:00:20.313610: Marginal energy costs matrix computed: min=15.55 max=27.0 2026-08-15 01:00:20.379470: Rate array import [{'start': 60, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2130, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 60, 'end': 2130, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 01:00:20.380010: - Your estimated bill for today is £5.95 and tomorrow is £5.51 2026-08-15 01:00:20.380046: - Import rates are expensive (24.6p - 27.6p) for the next 6 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 01:00:20.380064: - The battery is currently at 13% and is in eco mode for the next 10 hours. 2026-08-15 01:00:20.380079: - For the next 48 hours there will be no solar generation. 2026-08-15 01:00:20.380092: - You will run out of battery in 40 minutes. 2026-08-15 01:00:20.380106: - Your next charge slot will be in 10 hours where import rates will be cheap (15.5p). 2026-08-15 01:00:20.380120: 2026-08-15 01:00:20.431266: Plan calculation took 17.08 seconds 2026-08-15 01:00:20.431664: Inverter 0: Type SK Sunsynk 2026-08-15 01:00:20.431714: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 01:00:20.431941: Reserve min: 7%, battery_min: 7% 2026-08-15 01:00:20.432021: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 01:00:20.432413: Inverter 0 SoC: 2.03kW 13%, current charge rate 5000W, current discharge rate 5250W, current battery power 545W, current battery voltage 51.2V, grid power -55W, load power 591W, PV Power 0W 2026-08-15 01:00:20.432658: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:00:20.432769: Inverter 0 scheduled charge enable is False 2026-08-15 01:00:20.432810: Inverter 0 charge windows currently [] 2026-08-15 01:00:20.432841: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 01:00:20.432995: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:00:20.433039: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:00:20.433092: Inverter 0 scheduled discharge enable is False 2026-08-15 01:00:20.433226: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:00:20.433264: Inverter 0 discharge windows currently [] 2026-08-15 01:00:20.433286: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:00:20.433430: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:00:20.433459: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:00:20.490744: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 13%, target 100% 2026-08-15 01:00:20.490896: Inverter 0 disabled charge window while waiting for schedule (now 08-15 01:00:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 01:00:20.490969: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:00:20.491150: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:00:20.491233: No export window planned 2026-08-15 01:00:20.491357: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 01:00:20.491396: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:00:20.491532: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:00:20.491697: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 01:00:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 01:00:20.491751: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 01:00:20.491802: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 01:00:20.491894: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:00:20.491934: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:00:20.491982: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:00:20.492034: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:00:20.492088: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:00:20.492119: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:00:20.492144: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:00:20.492206: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:00:20.492243: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:00:20.492268: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:00:20.492340: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:00:20.492371: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:00:20.492400: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:00:20.492424: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:00:20.492447: Inverter 0 count register writes 0 2026-08-15 01:00:20.529348: Total inverter register writes now 815 2026-08-15 01:00:20.565495: Info: Completed run status Demand 2026-08-15 01:00:20.573256: Info: record_status Demand 2026-08-15 01:00:20.578940: Saved current settings to /config/predbat_config.json 2026-08-15 01:00:20.579259: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 01:00:56.685624: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:00:56.685910: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:00:56.685965: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:00:56.686139: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:00:56.686177: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:00:56.686197: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:00:56.686215: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:02:56.933224: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:02:56.933610: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:02:56.933730: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:02:56.933850: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:02:56.933886: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:02:56.933903: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:02:56.933918: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:04:57.145248: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:04:57.145502: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:04:57.145576: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:04:57.145743: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:04:57.145781: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:04:57.145820: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:04:57.145840: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:05:00.219623: --------------- PredBat - update at 2026-08-15 01:05:00+01:00 with clock skew 0 minutes, minutes now 65 2026-08-15 01:05:00.220398: Saved current settings to /config/predbat_config.json 2026-08-15 01:05:00.220537: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 65.0 minutes 2026-08-15 01:05:00.220678: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 01:05:00.220778: Autoupdate: Currently up to date 2026-08-15 01:05:00.240317: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 01:05:00.240448: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 01:05:00.240630: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 01:05:00.241176: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 01:05:00.241292: Predbat mode is set to Control charge & discharge 2026-08-15 01:05:00.420981: Found 21602 load_today datapoints going back 27 days 2026-08-15 01:05:00.421144: Using load_power data to fill gaps in load_today data 2026-08-15 01:05:01.194324: Processing 721 30-minute periods for power integration 2026-08-15 01:05:01.388577: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 01:05:01.388710: Car charging hold False, threshold 6.0kWh 2026-08-15 01:05:01.388752: Current data so far today: load 1.3kWh, import 1.6kWh, export 0.0kWh, PV 0kWh 2026-08-15 01:05:01.401585: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 01:05:01.401989: Standing charge is set to 49.98p 2026-08-15 01:05:01.428392: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 01:05:01.428486: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 01:05:01.428710: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 65.0 minutes 2026-08-15 01:05:01.429148: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 64.7 minutes 2026-08-15 01:05:01.431681: Loaded 47 datapoints of futurerate analysis 2026-08-15 01:05:01.501632: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 01:05:01.551745: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 01:05:01.552135: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 01:05:01.587970: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 01:05:01.588099: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 01:05:01.589202: High export rate found rates in range 99p to -99p 2026-08-15 01:05:01.651574: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 01:05:01.651706: Car 0 charging is not planned as it is not plugged in 2026-08-15 01:05:01.665283: Battery level now 2.03kWh, -1hr ago 1.66kWh, at midnight 1.66kWh, battery value change in the last hour 4.45p, change today 4.45p, rate_forward 11.83p 2026-08-15 01:05:01.665605: Last hour: net energy 1.6kWh, import 1.6kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 44.88p, import 44.88p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 01:05:01.719135: Today's energy total net 1.6kWh, import 1.6kWh, export 0.0kWh, cost 94.89p, import 44.9p, export 0.0p, carbon 0.0kg 2026-08-15 01:05:01.719269: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 01:05:01.782460: Using weighted-bucket historical load forecast over 14 days 2026-08-15 01:05:01.800032: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 01:05:01.800118: Today's predicted so far 0.98kWh with 0.0kWh car/iBoost excluded, 0.54kWh import ignored, and 0.98kWh forecast extra. 2026-08-15 01:05:01.800145: Today's actual load so far 1.4kWh with 0.0kWh car/iBoost excluded, and 0.54kWh import ignored. 2026-08-15 01:05:01.833611: Inverter 0: Type SK Sunsynk 2026-08-15 01:05:01.833689: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 01:05:01.833840: Reserve min: 7%, battery_min: 7% 2026-08-15 01:05:01.833891: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 01:05:01.834112: Inverter 0 SoC: 1.94kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 547W, current battery voltage 51.2V, grid power -55W, load power 599W, PV Power 0W 2026-08-15 01:05:01.834244: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:05:01.834320: Inverter 0 scheduled charge enable is False 2026-08-15 01:05:01.834358: Inverter 0 charge windows currently [] 2026-08-15 01:05:01.834380: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 01:05:01.834468: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:05:01.834497: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:05:01.834526: Inverter 0 scheduled discharge enable is False 2026-08-15 01:05:01.834637: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:05:01.834668: Inverter 0 discharge windows currently [] 2026-08-15 01:05:01.834686: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:05:01.834702: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:05:01.834719: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:05:01.893984: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 01:05:01.894095: Plan was last updated on 2026-08-15 01:00:00+01:00 and is now 5.0 minutes old 2026-08-15 01:05:01.894406: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 01:05:01.894452: Best export window [ ] 2026-08-15 01:05:01.895454: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 01:05:01.899260: Load divergence over 8.0 hours mean 440.96W, min 269.4W, max 1041.6W, std dev 95.84W, divergence 10.87% 2026-08-15 01:05:01.927007: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 01:05:01.927125: LoadML is_calculating False 2026-08-15 01:05:01.927185: Creating pool of 12 processes to match your CPU count 2026-08-15 01:05:02.059912: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 840.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 29.63kWh, PV 0.0kWh 2026-08-15 01:05:02.179298: Battery has 0.67 hours left - now at 1.94kWh 2026-08-15 01:05:02.225152: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 875.03p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:40:00, load 30.97kWh, PV 0.0kWh 2026-08-15 01:05:02.300509: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 703.72p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:40:00, load 30.97kWh, PV 0.0kWh 2026-08-15 01:05:02.379880: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 671.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 29.63kWh, PV 0.0kWh 2026-08-15 01:05:02.379969: Saving plan best values to HA entities 2026-08-15 01:05:02.550964: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 01:05:02.555720: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 01:05:02.560567: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.21kWh, house 8.9kWh, export 0.0kWh, metric 671.29p, metric10 703.72p 2026-08-15 01:05:02.626016: Marginal costs baseline metric (no standing charge): 621.3111 2026-08-15 01:05:02.869023: Marginal energy costs matrix computed: min=15.48 max=26.83 2026-08-15 01:05:02.935829: Rate array import [{'start': 65, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2135, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 65, 'end': 2135, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 01:05:02.936418: - Your estimated bill for today is £5.95 and tomorrow is £5.49 2026-08-15 01:05:02.936457: - Import rates are expensive (24.6p - 27.6p) for the next 5 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 01:05:02.936475: - The battery is currently at 12% and is in eco mode for the next 10 hours. 2026-08-15 01:05:02.936490: - For the next 48 hours there will be no solar generation. 2026-08-15 01:05:02.936504: - You will run out of battery in 40 minutes. 2026-08-15 01:05:02.936517: - Your next charge slot will be in 10 hours where import rates will be cheap (15.5p). 2026-08-15 01:05:02.936531: 2026-08-15 01:05:02.989555: Plan calculation took 1.10 seconds 2026-08-15 01:05:02.992653: No high rate period found 2026-08-15 01:05:03.045349: Import threshold used for optimisation was 22.73p 2026-08-15 01:05:03.093791: Low import rate windows [0: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 1: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 2: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 3: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 4: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 5: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 6: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 7: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 8: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 9: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 10: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 11: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 12: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 13: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 14: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 15: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 16: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 17: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 18: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 19: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 20: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 21: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 22: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 23: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 24: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 25: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 26: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 27: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 28: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 29: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 30: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 31: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 32: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 33: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 34: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 35: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 36: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 37: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 38: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 39: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 40: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 41: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 42: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 43: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 44: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 45: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 46: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 47: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 48: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 49: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 50: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 51: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 52: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 53: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 54: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 55: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 56: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 57: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 58: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 59: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 60: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 61: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 62: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 63: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 64: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 65: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 66: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 67: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 68: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 69: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 70: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 71: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 72: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 73: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 74: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 75: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 76: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 77: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 78: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 79: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 80: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 81: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 82: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 83: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 84: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 85: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 86: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 87: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 88: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 89: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 90: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 91: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 92: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 93: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 94: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57] 2026-08-15 01:05:03.100823: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-15 01:05:03.100989: Inverter 0 disabled charge window while waiting for schedule (now 08-15 01:05:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 01:05:03.101103: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:05:03.101344: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:05:03.101427: No export window planned 2026-08-15 01:05:03.101527: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 01:05:03.101557: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:05:03.101670: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:05:03.101821: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 01:05:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 01:05:03.101876: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 01:05:03.101932: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 01:05:03.102028: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:05:03.102067: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:05:03.102090: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:05:03.102115: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:05:03.102136: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:05:03.102163: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:05:03.102183: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:05:03.102236: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:05:03.102265: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:05:03.102286: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:05:03.102306: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:05:03.102325: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:05:03.102363: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:05:03.102383: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:05:03.102399: Inverter 0 count register writes 0 2026-08-15 01:05:03.116546: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-15 01:05:03.121621: Total inverter register writes now 815 2026-08-15 01:05:03.158198: Info: Completed run status Demand 2026-08-15 01:05:03.164235: Info: record_status Demand 2026-08-15 01:05:03.170879: Saved current settings to /config/predbat_config.json 2026-08-15 01:05:03.171262: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 01:05:42.283048: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:05:42.283267: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:05:42.283302: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:05:42.283495: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:05:42.283535: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:05:42.283553: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:05:42.283567: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:06:00.322149: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-15 01:06:01.206812: Processing 1297 30-minute periods for power integration 2026-08-15 01:06:01.295778: ML Component: Car charging hold False, car energy reported load False 2026-08-15 01:06:01.377208: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 01:06:01.464237: ML Temperature data points: 47456 2026-08-15 01:06:01.751105: ML Component: Fetched 7776 load data points, 27.0 days of history 2026-08-15 01:06:01.792785: ML Component: Data fetch completed, load data age 56.0 days, 16278 data points 2026-08-15 01:06:01.792925: ML Component: Starting fine-tune training (2h interval), model age is 2.02225915 hours 2026-08-15 01:06:01.793024: ML Component: Doing training... 2026-08-15 01:06:01.809201: ML Predictor: Curriculum training - capped to last 4 intermediate passes (starting at window=53.0 days) 2026-08-15 01:06:01.809362: ML Predictor: Curriculum training - 5 passes, window 53.0→56.0 days + final full pass (56.5 days) 2026-08-15 01:06:01.864049: ML Predictor: Curriculum pass 1/5: window=53.0 days (1272 hours of data) 2026-08-15 01:06:01.864166: ML Predictor: Starting initial training with 30 epochs 2026-08-15 01:06:02.395166: ML Predictor: Creating dataset with 1272 hours of training data, 48 hours validation 2026-08-15 01:06:06.325913: ML Predictor: Created 14976 training samples, 576 validation samples 2026-08-15 01:06:06.372925: ML Predictor: Normalization stats [fit] target(mean=0.0587 std=0.0472) load(mean=0.0589 std=0.0474) pv(mean=0.0000 std=0.0100) temp(mean=19.4859 std=4.4023) import_rate(mean=25.4946 std=2.4792) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1907 std=0.5232) 2026-08-15 01:06:19.835298: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0422 val_mae=0.0091 kWh val_bias=+0.0025 kWh (+4.4%) combined=0.0046 kWh ema_combined=0.0046 kWh 2026-08-15 01:06:33.006844: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0532 val_mae=0.0059 kWh val_bias=-0.0022 kWh (-3.8%) combined=0.0049 kWh ema_combined=0.0047 kWh 2026-08-15 01:06:45.598952: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0318 val_mae=0.0044 kWh val_bias=+0.0005 kWh (+0.9%) combined=0.0029 kWh ema_combined=0.0041 kWh 2026-08-15 01:07:00.595509: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0278 val_mae=0.0045 kWh val_bias=+0.0005 kWh (+0.9%) combined=0.0025 kWh ema_combined=0.0037 kWh 2026-08-15 01:07:18.768384: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0221 val_mae=0.0040 kWh val_bias=+0.0000 kWh (+0.1%) combined=0.0021 kWh ema_combined=0.0032 kWh 2026-08-15 01:07:38.071863: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0180 val_mae=0.0039 kWh val_bias=-0.0004 kWh (-0.8%) combined=0.0027 kWh ema_combined=0.0030 kWh 2026-08-15 01:07:57.303013: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:07:57.303469: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:07:57.303585: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:07:57.303819: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:07:57.303873: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:07:57.303942: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:07:57.304029: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:07:58.027756: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0172 val_mae=0.0037 kWh val_bias=+0.0007 kWh (+1.2%) combined=0.0027 kWh ema_combined=0.0029 kWh 2026-08-15 01:08:15.419341: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0145 val_mae=0.0036 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0022 kWh ema_combined=0.0027 kWh 2026-08-15 01:08:32.575436: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0129 val_mae=0.0031 kWh val_bias=-0.0004 kWh (-0.7%) combined=0.0019 kWh ema_combined=0.0025 kWh 2026-08-15 01:08:52.118509: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0118 val_mae=0.0034 kWh val_bias=-0.0012 kWh (-2.1%) combined=0.0024 kWh ema_combined=0.0025 kWh 2026-08-15 01:09:10.528214: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0108 val_mae=0.0030 kWh val_bias=+0.0003 kWh (+0.5%) combined=0.0019 kWh ema_combined=0.0023 kWh 2026-08-15 01:09:28.207665: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0105 val_mae=0.0031 kWh val_bias=-0.0005 kWh (-0.9%) combined=0.0018 kWh ema_combined=0.0022 kWh 2026-08-15 01:09:48.035869: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0092 val_mae=0.0026 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0015 kWh ema_combined=0.0020 kWh 2026-08-15 01:10:00.766604: --------------- PredBat - update at 2026-08-15 01:10:00+01:00 with clock skew 0 minutes, minutes now 70 2026-08-15 01:10:00.768248: Saved current settings to /config/predbat_config.json 2026-08-15 01:10:00.768596: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 70.0 minutes 2026-08-15 01:10:00.768898: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 01:10:00.769317: Autoupdate: Currently up to date 2026-08-15 01:10:00.834707: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 01:10:00.834908: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 01:10:00.835132: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 01:10:00.835800: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 01:10:00.835970: Predbat mode is set to Control charge & discharge 2026-08-15 01:10:01.153259: Found 21602 load_today datapoints going back 28 days 2026-08-15 01:10:01.153444: Using load_power data to fill gaps in load_today data 2026-08-15 01:10:02.435826: Processing 721 30-minute periods for power integration 2026-08-15 01:10:02.657428: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 01:10:02.657553: Car charging hold False, threshold 6.0kWh 2026-08-15 01:10:02.657592: Current data so far today: load 1.5kWh, import 2.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 01:10:02.686190: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 01:10:02.699996: Standing charge is set to 49.98p 2026-08-15 01:10:02.838279: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 01:10:02.838410: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 01:10:02.838658: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 70.0 minutes 2026-08-15 01:10:02.839251: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 69.7 minutes 2026-08-15 01:10:02.843510: Loaded 47 datapoints of futurerate analysis 2026-08-15 01:10:03.078821: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 01:10:03.248480: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 01:10:03.249361: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 01:10:03.296297: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 01:10:03.296534: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 01:10:03.297902: High export rate found rates in range 99p to -99p 2026-08-15 01:10:03.381916: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 01:10:03.382063: Car 0 charging is not planned as it is not plugged in 2026-08-15 01:10:03.398672: Battery level now 1.94kWh, -1hr ago 1.43kWh, at midnight 1.66kWh, battery value change in the last hour 5.96p, change today 3.31p, rate_forward 11.83p 2026-08-15 01:10:03.399033: Last hour: net energy 1.75kWh, import 1.75kWh, export 0.0kWh, car 0kWh, load 1.35kWh, net cost 48.73p, import 48.73p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 01:10:03.456240: Today's energy total net 2.0kWh, import 2.0kWh, export 0.0kWh, cost 105.84p, import 55.86p, export 0.0p, carbon 0.0kg 2026-08-15 01:10:03.456369: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 01:10:03.619274: Using weighted-bucket historical load forecast over 14 days 2026-08-15 01:10:03.692996: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 01:10:03.693156: Today's predicted so far 1.01kWh with 0.0kWh car/iBoost excluded, 0.78kWh import ignored, and 1.01kWh forecast extra. 2026-08-15 01:10:03.693203: Today's actual load so far 1.52kWh with 0.0kWh car/iBoost excluded, and 0.78kWh import ignored. 2026-08-15 01:10:03.769473: Inverter 0: Type SK Sunsynk 2026-08-15 01:10:03.769577: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 01:10:03.769784: Reserve min: 7%, battery_min: 7% 2026-08-15 01:10:03.769874: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 01:10:03.770169: Inverter 0 SoC: 1.94kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 1613W, current battery voltage 51.2V, grid power -54W, load power 1729W, PV Power 0W 2026-08-15 01:10:03.770338: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:10:03.770429: Inverter 0 scheduled charge enable is False 2026-08-15 01:10:03.770465: Inverter 0 charge windows currently [] 2026-08-15 01:10:03.770492: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 01:10:03.770698: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:10:03.770744: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:10:03.770896: Inverter 0 scheduled discharge enable is False 2026-08-15 01:10:03.771119: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:10:03.771178: Inverter 0 discharge windows currently [] 2026-08-15 01:10:03.771320: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:10:03.771377: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:10:03.771450: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:10:03.897063: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 01:10:03.897186: Plan was last updated on 2026-08-15 01:00:00+01:00 and is now 10.0 minutes old 2026-08-15 01:10:03.897499: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 01:10:03.897550: Best export window [ ] 2026-08-15 01:10:03.898468: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 01:10:03.910808: Load divergence over 8.0 hours mean 440.96W, min 268.2W, max 1026.0W, std dev 95.41W, divergence 10.82% 2026-08-15 01:10:03.950459: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 01:10:03.961072: LoadML is_calculating True 2026-08-15 01:10:03.961158: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-15 01:10:04.062301: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 851.43p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 29.85kWh, PV 0.0kWh 2026-08-15 01:10:04.316837: Battery has 0.67 hours left - now at 1.94kWh 2026-08-15 01:10:04.363786: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 885.47p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 31.2kWh, PV 0.0kWh 2026-08-15 01:10:04.556485: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 719.31p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 31.2kWh, PV 0.0kWh 2026-08-15 01:10:04.705930: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 687.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 29.85kWh, PV 0.0kWh 2026-08-15 01:10:04.725083: Saving plan best values to HA entities 2026-08-15 01:10:05.063976: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 01:10:05.073391: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 01:10:05.081328: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.72kWh, house 8.83kWh, export 0.0kWh, metric 687.9p, metric10 719.31p 2026-08-15 01:10:05.236339: Marginal costs baseline metric (no standing charge): 637.9136 2026-08-15 01:10:05.547177: Marginal energy costs matrix computed: min=15.42 max=26.66 2026-08-15 01:10:05.663141: Rate array import [{'start': 70, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2140, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 70, 'end': 2140, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 01:10:05.664006: - Your estimated bill for today is £6.03 and tomorrow is £5.51 2026-08-15 01:10:05.681043: - Import rates are expensive (24.6p - 27.6p) for the next 5 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 01:10:05.681144: - The battery is currently at 12% and is in eco mode for the next 10 hours. 2026-08-15 01:10:05.681169: - For the next 48 hours there will be no solar generation. 2026-08-15 01:10:05.681189: - You will run out of battery in 40 minutes. 2026-08-15 01:10:05.681209: - Your next charge slot will be in 10 hours where import rates will be cheap (15.5p). 2026-08-15 01:10:05.681362: 2026-08-15 01:10:05.747124: Plan calculation took 1.85 seconds 2026-08-15 01:10:05.751458: No high rate period found 2026-08-15 01:10:05.909372: Import threshold used for optimisation was 22.73p 2026-08-15 01:10:06.050498: Low import rate windows [0: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 1: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 2: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 3: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 4: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 5: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 6: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 7: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 8: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 9: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 10: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 11: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 12: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 13: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 14: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 15: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 16: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 17: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 18: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 19: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 20: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 21: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 22: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 23: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 24: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 25: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 26: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 27: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 28: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 29: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 30: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 31: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 32: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 33: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 34: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 35: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 36: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 37: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 38: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 39: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 40: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 41: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 42: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 43: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 44: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 45: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 46: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 47: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 48: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 49: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 50: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 51: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 52: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 53: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 54: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 55: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 56: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 57: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 58: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 59: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 60: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 61: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 62: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 63: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 64: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 65: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 66: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 67: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 68: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 69: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 70: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 71: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 72: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 73: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 74: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 75: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 76: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 77: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 78: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 79: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 80: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 81: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 82: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 83: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 84: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 85: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 86: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 87: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 88: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 89: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 90: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 91: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 92: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 93: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 94: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57] 2026-08-15 01:10:06.075139: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-15 01:10:06.075345: Inverter 0 disabled charge window while waiting for schedule (now 08-15 01:10:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 01:10:06.075465: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:10:06.075694: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:10:06.075782: No export window planned 2026-08-15 01:10:06.075909: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 01:10:06.075952: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:10:06.076118: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:10:06.076317: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 01:10:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 01:10:06.076391: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 01:10:06.076447: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 01:10:06.076554: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:10:06.076605: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:10:06.076648: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:10:06.076682: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:10:06.076725: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:10:06.076759: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:10:06.076801: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:10:06.076874: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:10:06.076918: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:10:06.076995: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:10:06.077047: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:10:06.077082: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:10:06.077115: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:10:06.077157: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:10:06.077185: Inverter 0 count register writes 0 2026-08-15 01:10:06.117140: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-15 01:10:06.117541: Recompute is saving previous plan... 2026-08-15 01:10:06.124133: Best charge window [ 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 0%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 0%, 17-08 01:00:00 - 17-08 01:30:00 @ 27.57p 0% ] 2026-08-15 01:10:06.124801: Best export window [ ] 2026-08-15 01:10:06.126428: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 01:10:06.131172: Load divergence over 8.0 hours mean 440.96W, min 268.2W, max 1026.0W, std dev 95.41W, divergence 10.82% 2026-08-15 01:10:06.162945: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 01:10:06.164067: LoadML is_calculating True 2026-08-15 01:10:06.164377: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-15 01:10:06.181643: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-15 01:10:06.183559: Optimise levels pass started at 2026-08-15 01:10:06 2026-08-15 01:10:06.183731: Optimise all windows, total charge 94 export 1 2026-08-15 01:10:13.800105: >> Region optimisation pass width 960 gives best_metric 783.99p, best_cost 788.93p, best_cycle 45.79kWh, best_import 40.45kWh 2026-08-15 01:10:14.913515: >> Region optimisation pass width 480 gives best_metric 783.99p, best_cost 788.93p, best_cycle 45.79kWh, best_import 40.45kWh 2026-08-15 01:10:15.249063: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0090 val_mae=0.0028 kWh val_bias=-0.0009 kWh (-1.6%) combined=0.0022 kWh ema_combined=0.0020 kWh 2026-08-15 01:10:16.365275: >> Region optimisation pass width 240 gives best_metric 783.99p, best_cost 788.93p, best_cycle 45.79kWh, best_import 40.45kWh 2026-08-15 01:10:19.541790: >> Region optimisation pass width 120 gives best_metric 783.99p, best_cost 788.93p, best_cycle 45.79kWh, best_import 40.45kWh 2026-08-15 01:10:19.542251: Calculated end_record as 08-16 11:30:00 based on best_price 16.34p, next_charge_start 08-15 11:30:00, max_windows 68 2026-08-15 01:10:19.542425: Optimise levels pass ended at 2026-08-15 01:10:19, duration 13.4 seconds tried 311 combinations 2026-08-15 01:10:19.542560: Set best_price_charge_level 17.6p, best_price_export_level 0p, best_price_charge 16.34p, best_cost_export 0p, best_metric 783.99p, best_keep 0kWh, best_cycle 45.79kWh, best_carbon 0kg, best_import 40.45kWh 2026-08-15 01:10:19.574738: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 16.34p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-15 01:10:45.593901: Tweak plan optimisation started metric 613.79p, cost 622.03p 2026-08-15 01:10:46.382792: Tweak optimisation finished metric 613.79p, cost 622.03p, metric_keep 0kWh, cycle 31.33kWh, carbon 0kg, import 29.57kWh, changed 8 window(s) 2026-08-15 01:10:46.410189: Swap charge optimisation started metric 613.79p, cost 622.03p, min_improvement_swap 0.1p 2026-08-15 01:10:58.471361: Swap charge optimisation finished metric 613.79p, cost 622.03p 2026-08-15 01:10:58.681053: Pruned 2 dead plan slot(s) in 11 trial(s), nominal metric 608.78p -> 608.79p, plan now metric 613.81p, cost 622.04p, cycle 30.57kWh, import 29.52kWh 2026-08-15 01:10:58.699873: Raw charge windows [ 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 100%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 100%, 17-08 01:00:00 - 17-08 01:30:00 @ 27.57p 100% ] reserve 1.12 2026-08-15 01:10:58.700849: Unclipped charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 01:30:00 @ 27.79p 100% ] reserve 1.12 2026-08-15 01:10:58.701594: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 01:30:00 @ 27.79p 100% ] reserve 1.12 2026-08-15 01:10:58.704662: Filtered charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 01:30:00 @ 27.79p 100% ] reserve 1.12 2026-08-15 01:10:58.766062: Previous plan best metric is 613.8 (cost 622.04) and new plan best metric is 613.79 (cost 622.03) 2026-08-15 01:10:58.766525: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-15 01:10:58.766805: Plan valid is now true after recompute was False 2026-08-15 01:10:58.829578: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 848.43p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 29.65kWh, PV 0.0kWh 2026-08-15 01:10:58.984689: Battery has 0.67 hours left - now at 1.94kWh 2026-08-15 01:10:59.041385: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 882.34p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 30.99kWh, PV 0.0kWh 2026-08-15 01:10:59.213120: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 705.45p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 30.99kWh, PV 0.0kWh 2026-08-15 01:10:59.344007: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 672.02p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 29.65kWh, PV 0.0kWh 2026-08-15 01:10:59.344207: Saving plan best values to HA entities 2026-08-15 01:10:59.608787: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 01:10:59.632608: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 01:10:59.642153: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 20.69kWh, house 8.83kWh, export 0.0kWh, metric 672.02p, metric10 705.45p 2026-08-15 01:10:59.797458: Marginal costs baseline metric (no standing charge): 622.0398 2026-08-15 01:11:00.312541: Marginal energy costs matrix computed: min=15.42 max=26.66 2026-08-15 01:11:00.432414: Rate array import [{'start': 70, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2130, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 70, 'end': 2130, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 01:11:00.433651: - Your estimated bill for today is £6.03 and tomorrow is £5.51 2026-08-15 01:11:00.434509: - Import rates are expensive (24.6p - 27.6p) for the next 5 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 01:11:00.434655: - The battery is currently at 12% and is in eco mode for the next 10 hours. 2026-08-15 01:11:00.434779: - For the next 48 hours there will be no solar generation. 2026-08-15 01:11:00.434903: - You will run out of battery in 40 minutes. 2026-08-15 01:11:00.434998: - Your next charge slot will be in 10 hours where import rates will be cheap (15.5p). 2026-08-15 01:11:00.435147: 2026-08-15 01:11:00.500793: Plan calculation took 54.38 seconds 2026-08-15 01:11:00.501101: Inverter 0: Type SK Sunsynk 2026-08-15 01:11:00.501153: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 01:11:00.501353: Reserve min: 7%, battery_min: 7% 2026-08-15 01:11:00.501430: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 01:11:00.501703: Inverter 0 SoC: 1.87kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 1676W, current battery voltage 51.2V, grid power -52W, load power 1731W, PV Power 0W 2026-08-15 01:11:00.501874: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:11:00.501968: Inverter 0 scheduled charge enable is False 2026-08-15 01:11:00.502005: Inverter 0 charge windows currently [] 2026-08-15 01:11:00.502032: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 01:11:00.502147: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:11:00.502184: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:11:00.502235: Inverter 0 scheduled discharge enable is False 2026-08-15 01:11:00.502363: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:11:00.502401: Inverter 0 discharge windows currently [] 2026-08-15 01:11:00.502423: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:11:00.502443: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:11:00.502461: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:11:00.640006: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-15 01:11:00.640174: Inverter 0 disabled charge window while waiting for schedule (now 08-15 01:10:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 01:11:00.640312: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:11:00.640564: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:11:00.640655: No export window planned 2026-08-15 01:11:00.640794: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 01:11:00.640838: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:11:00.641056: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:11:00.641269: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 01:10:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 01:11:00.641334: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 01:11:00.641399: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 01:11:00.641488: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:11:00.641540: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:11:00.641585: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:11:00.641628: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:11:00.641672: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:11:00.641745: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:11:00.641830: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:11:00.642024: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:11:00.642088: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:11:00.642325: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:11:00.642389: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:11:00.642518: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:11:00.642668: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:11:00.642824: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:11:00.642964: Inverter 0 count register writes 0 2026-08-15 01:11:00.674428: Total inverter register writes now 815 2026-08-15 01:11:00.723208: Info: Completed run status Demand 2026-08-15 01:11:00.731935: Info: record_status Demand 2026-08-15 01:11:00.740328: Saved current settings to /config/predbat_config.json 2026-08-15 01:11:00.740625: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 01:11:02.957728: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0084 val_mae=0.0025 kWh val_bias=+0.0004 kWh (+0.6%) combined=0.0015 kWh ema_combined=0.0019 kWh 2026-08-15 01:11:21.357016: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0083 val_mae=0.0026 kWh val_bias=+0.0004 kWh (+0.6%) combined=0.0015 kWh ema_combined=0.0018 kWh 2026-08-15 01:11:39.461380: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0080 val_mae=0.0025 kWh val_bias=+0.0007 kWh (+1.1%) combined=0.0019 kWh ema_combined=0.0018 kWh 2026-08-15 01:11:41.905767: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:11:41.906242: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:11:41.906399: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:11:41.906753: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:11:41.906896: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:11:41.907049: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:11:41.907193: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:11:58.839747: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0076 val_mae=0.0023 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0015 kWh ema_combined=0.0017 kWh 2026-08-15 01:12:16.591929: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0075 val_mae=0.0024 kWh val_bias=+0.0001 kWh (+0.1%) combined=0.0013 kWh ema_combined=0.0016 kWh 2026-08-15 01:12:36.368710: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0075 val_mae=0.0022 kWh val_bias=-0.0007 kWh (-1.2%) combined=0.0017 kWh ema_combined=0.0016 kWh 2026-08-15 01:12:54.114750: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0070 val_mae=0.0021 kWh val_bias=+0.0000 kWh (+0.1%) combined=0.0011 kWh ema_combined=0.0015 kWh 2026-08-15 01:13:12.987222: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0072 val_mae=0.0021 kWh val_bias=+0.0002 kWh (+0.4%) combined=0.0013 kWh ema_combined=0.0014 kWh 2026-08-15 01:13:30.179757: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0069 val_mae=0.0022 kWh val_bias=-0.0006 kWh (-1.0%) combined=0.0017 kWh ema_combined=0.0015 kWh 2026-08-15 01:13:42.366766: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:13:42.367560: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:13:42.367626: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:13:42.367918: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:13:42.367975: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:13:42.368075: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:13:42.368237: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:13:47.654071: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0071 val_mae=0.0020 kWh val_bias=+0.0000 kWh (+0.0%) combined=0.0011 kWh ema_combined=0.0014 kWh 2026-08-15 01:14:05.958630: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0064 val_mae=0.0020 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0011 kWh ema_combined=0.0013 kWh 2026-08-15 01:14:24.853558: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0065 val_mae=0.0020 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0012 kWh ema_combined=0.0013 kWh 2026-08-15 01:14:44.178655: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0062 val_mae=0.0020 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0010 kWh ema_combined=0.0012 kWh 2026-08-15 01:15:00.719143: --------------- PredBat - update at 2026-08-15 01:15:00+01:00 with clock skew 0 minutes, minutes now 75 2026-08-15 01:15:00.720227: Saved current settings to /config/predbat_config.json 2026-08-15 01:15:00.720433: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 75.0 minutes 2026-08-15 01:15:00.720605: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 01:15:00.720815: Autoupdate: Currently up to date 2026-08-15 01:15:00.758349: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 01:15:00.758920: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 01:15:00.759263: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 01:15:00.760019: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 01:15:00.760275: Predbat mode is set to Control charge & discharge 2026-08-15 01:15:01.113158: Found 21602 load_today datapoints going back 28 days 2026-08-15 01:15:01.113519: Using load_power data to fill gaps in load_today data 2026-08-15 01:15:02.405487: Processing 721 30-minute periods for power integration 2026-08-15 01:15:02.760338: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 01:15:02.760675: Car charging hold False, threshold 6.0kWh 2026-08-15 01:15:02.760745: Current data so far today: load 1.6kWh, import 2.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 01:15:02.780151: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 01:15:02.780739: Standing charge is set to 49.98p 2026-08-15 01:15:02.838288: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 01:15:02.838413: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 01:15:02.838687: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 75.0 minutes 2026-08-15 01:15:02.839294: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 74.7 minutes 2026-08-15 01:15:02.843922: Loaded 47 datapoints of futurerate analysis 2026-08-15 01:15:03.117093: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 01:15:03.187886: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 01:15:03.188401: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 01:15:03.240577: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 01:15:03.240819: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 01:15:03.242084: High export rate found rates in range 99p to -99p 2026-08-15 01:15:03.316824: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 01:15:03.317094: Car 0 charging is not planned as it is not plugged in 2026-08-15 01:15:03.333962: Battery level now 1.94kWh, -1hr ago 1.64kWh, at midnight 1.66kWh, battery value change in the last hour 3.5p, change today 3.31p, rate_forward 11.83p 2026-08-15 01:15:03.334390: Last hour: net energy 1.5kWh, import 1.5kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 41.61p, import 41.61p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 01:15:03.401603: Today's energy total net 2.0kWh, import 2.0kWh, export 0.0kWh, cost 105.84p, import 55.86p, export 0.0p, carbon 0.0kg 2026-08-15 01:15:03.401888: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 01:15:03.560639: Using weighted-bucket historical load forecast over 14 days 2026-08-15 01:15:03.615532: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 01:15:03.615640: Today's predicted so far 1.05kWh with 0.0kWh car/iBoost excluded, 0.79kWh import ignored, and 1.05kWh forecast extra. 2026-08-15 01:15:03.615672: Today's actual load so far 1.64kWh with 0.0kWh car/iBoost excluded, and 0.79kWh import ignored. 2026-08-15 01:15:03.681064: Inverter 0: Type SK Sunsynk 2026-08-15 01:15:03.681180: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 01:15:03.681467: Reserve min: 7%, battery_min: 7% 2026-08-15 01:15:03.681663: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 01:15:03.682097: Inverter 0 SoC: 1.87kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 1632W, current battery voltage 51.2V, grid power -49W, load power 1691W, PV Power 0W 2026-08-15 01:15:03.682345: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:15:03.682516: Inverter 0 scheduled charge enable is False 2026-08-15 01:15:03.682658: Inverter 0 charge windows currently [] 2026-08-15 01:15:03.682713: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 01:15:03.682939: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:15:03.682994: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:15:03.683177: Inverter 0 scheduled discharge enable is False 2026-08-15 01:15:03.683426: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:15:03.683482: Inverter 0 discharge windows currently [] 2026-08-15 01:15:03.683557: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:15:03.683639: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:15:03.683696: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:15:03.854259: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 01:15:03.854395: Plan was last updated on 2026-08-15 01:10:00+01:00 and is now 5.0 minutes old 2026-08-15 01:15:03.854827: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 01:15:03.854970: Best export window [ ] 2026-08-15 01:15:03.856327: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 01:15:03.861766: Load divergence over 8.0 hours mean 440.99W, min 226.2W, max 892.2W, std dev 94.74W, divergence 10.74% 2026-08-15 01:15:03.923555: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 01:15:03.923720: LoadML is_calculating True 2026-08-15 01:15:03.923767: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-15 01:15:03.962600: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 849.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 29.77kWh, PV 0.0kWh 2026-08-15 01:15:04.169344: Battery has 0.58 hours left - now at 1.87kWh 2026-08-15 01:15:04.239012: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 883.11p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 31.11kWh, PV 0.0kWh 2026-08-15 01:15:04.355008: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 711.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 31.11kWh, PV 0.0kWh 2026-08-15 01:15:04.536451: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 678.98p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 29.77kWh, PV 0.0kWh 2026-08-15 01:15:04.537406: Saving plan best values to HA entities 2026-08-15 01:15:04.946445: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-15 01:15:04.954304: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 01:15:04.963251: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.21kWh, house 8.8kWh, export 0.0kWh, metric 678.98p, metric10 711.39p 2026-08-15 01:15:05.103174: Marginal costs baseline metric (no standing charge): 628.9951 2026-08-15 01:15:05.407726: Marginal energy costs matrix computed: min=15.35 max=26.49 2026-08-15 01:15:05.495980: Rate array import [{'start': 75, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2135, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 75, 'end': 2135, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 01:15:05.496931: - Your estimated bill for today is £6.01 and tomorrow is £5.53 2026-08-15 01:15:05.497018: - Import rates are expensive (24.6p - 27.6p) for the next 5 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 01:15:05.497047: - The battery is currently at 12% and is in eco mode for the next 10 hours. 2026-08-15 01:15:05.497088: - For the next 48 hours there will be no solar generation. 2026-08-15 01:15:05.497109: - You will run out of battery in 35 minutes. 2026-08-15 01:15:05.497139: - Your next charge slot will be in 10 hours where import rates will be cheap (15.5p). 2026-08-15 01:15:05.497162: 2026-08-15 01:15:05.537302: Plan calculation took 1.68 seconds 2026-08-15 01:15:05.541243: No high rate period found 2026-08-15 01:15:05.623290: Import threshold used for optimisation was 22.73p 2026-08-15 01:15:05.722955: Low import rate windows [0: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 1: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 2: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 3: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 4: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 5: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 6: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 7: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 8: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 9: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 10: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 11: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 12: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 13: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 14: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 15: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 16: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 17: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 18: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 19: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 20: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 21: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 22: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 23: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 24: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 25: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 26: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 27: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 28: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 29: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 30: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 31: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 32: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 33: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 34: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 35: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 36: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 37: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 38: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 39: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 40: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 41: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 42: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 43: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 44: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 45: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 46: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 47: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 48: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 49: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 50: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 51: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 52: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 53: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 54: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 55: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 56: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 57: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 58: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 59: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 60: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 61: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 62: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 63: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 64: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 65: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 66: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 67: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 68: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 69: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 70: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 71: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 72: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 73: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 74: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 75: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 76: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 77: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 78: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 79: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 80: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 81: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 82: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 83: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 84: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 85: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 86: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 87: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 88: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 89: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 90: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 91: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 92: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 93: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 94: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57] 2026-08-15 01:15:05.730869: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-15 01:15:05.731048: Inverter 0 disabled charge window while waiting for schedule (now 08-15 01:15:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 01:15:05.731141: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:15:05.731333: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:15:05.731406: No export window planned 2026-08-15 01:15:05.731509: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 01:15:05.731544: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:15:05.731684: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:15:05.731827: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 01:15:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 01:15:05.731875: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 01:15:05.731939: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 01:15:05.732265: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:15:05.732318: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:15:05.732354: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:15:05.732380: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:15:05.732405: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:15:05.732428: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:15:05.732453: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:15:05.732520: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:15:05.732551: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:15:05.732576: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:15:05.732599: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:15:05.732623: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:15:05.732667: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:15:05.732692: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:15:05.732713: Inverter 0 count register writes 0 2026-08-15 01:15:05.775068: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-15 01:15:05.780526: Total inverter register writes now 815 2026-08-15 01:15:05.832042: Info: Completed run status Demand 2026-08-15 01:15:05.845735: Info: record_status Demand 2026-08-15 01:15:05.853458: Saved current settings to /config/predbat_config.json 2026-08-15 01:15:05.853703: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 01:15:06.017136: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0063 val_mae=0.0020 kWh val_bias=-0.0005 kWh (-0.8%) combined=0.0015 kWh ema_combined=0.0013 kWh 2026-08-15 01:15:23.694350: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0063 val_mae=0.0020 kWh val_bias=+0.0003 kWh (+0.6%) combined=0.0012 kWh ema_combined=0.0013 kWh 2026-08-15 01:15:40.957426: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0066 val_mae=0.0020 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0010 kWh ema_combined=0.0012 kWh 2026-08-15 01:15:40.963046: ML Predictor: Restored best weights from epoch with val_mae=0.0020 kWh val_bias=+0.0001 kWh (+0.2%) 2026-08-15 01:15:40.963436: ML Predictor: Training complete, final val_mae=0.0020 kWh val_bias=+0.0001 kWh (+0.2%) 2026-08-15 01:15:42.057769: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:15:42.058012: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:15:42.058078: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:15:42.058224: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:15:42.058265: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:15:42.058286: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:15:42.058399: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:15:46.335253: ML Predictor: AR rollout over holdout: ar_mae=0.0023 kWh ar_bias=+0.0004 kWh (+0.7%) [drift vs teacher-forced: +0.0003 kWh] 2026-08-15 01:15:46.340612: ML Predictor: Curriculum pass 1/5 complete, val_mae=0.0020 kWh 2026-08-15 01:15:46.417453: ML Predictor: Curriculum pass 2/5: window=54.0 days (1296 hours of data) 2026-08-15 01:15:46.417722: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-15 01:15:47.031324: ML Predictor: Creating dataset with 1296 hours of training data, 48 hours validation 2026-08-15 01:15:51.543916: ML Predictor: Created 15264 training samples, 576 validation samples 2026-08-15 01:15:51.593234: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0474) load(mean=0.0589 std=0.0474) pv(mean=0.0000 std=0.0100) temp(mean=19.4873 std=4.4036) import_rate(mean=25.4977 std=2.4779) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1905 std=0.5233) 2026-08-15 01:15:51.670543: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-15 01:15:51.687203: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-15 01:15:51.727370: ML Predictor: Baseline (pre-finetune) val_mae=0.0038 kWh val_bias=-0.0004 kWh 2026-08-15 01:16:12.715671: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0113 val_mae=0.0037 kWh val_bias=-0.0011 kWh (-2.1%) combined=0.0028 kWh ema_combined=0.0028 kWh 2026-08-15 01:16:30.772106: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0109 val_mae=0.0035 kWh val_bias=-0.0006 kWh (-1.1%) combined=0.0018 kWh ema_combined=0.0025 kWh 2026-08-15 01:16:50.081586: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0123 val_mae=0.0034 kWh val_bias=+0.0003 kWh (+0.6%) combined=0.0022 kWh ema_combined=0.0024 kWh 2026-08-15 01:17:09.466047: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0116 val_mae=0.0032 kWh val_bias=-0.0001 kWh (-0.2%) combined=0.0017 kWh ema_combined=0.0022 kWh 2026-08-15 01:17:28.298204: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0116 val_mae=0.0034 kWh val_bias=+0.0001 kWh (+0.2%) combined=0.0019 kWh ema_combined=0.0021 kWh 2026-08-15 01:17:47.065786: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0105 val_mae=0.0032 kWh val_bias=+0.0009 kWh (+1.8%) combined=0.0024 kWh ema_combined=0.0022 kWh 2026-08-15 01:17:56.863374: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:17:56.863652: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:17:56.863799: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:17:56.864100: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:17:56.864168: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:17:56.864285: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:17:56.864354: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:18:05.731544: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0094 val_mae=0.0029 kWh val_bias=-0.0008 kWh (-1.6%) combined=0.0021 kWh ema_combined=0.0021 kWh 2026-08-15 01:18:25.303785: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0104 val_mae=0.0027 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0018 kWh ema_combined=0.0020 kWh 2026-08-15 01:18:43.192679: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0095 val_mae=0.0034 kWh val_bias=+0.0004 kWh (+0.8%) combined=0.0019 kWh ema_combined=0.0020 kWh 2026-08-15 01:19:02.559528: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0102 val_mae=0.0028 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0016 kWh ema_combined=0.0019 kWh 2026-08-15 01:19:22.532539: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0095 val_mae=0.0029 kWh val_bias=+0.0003 kWh (+0.5%) combined=0.0016 kWh ema_combined=0.0018 kWh 2026-08-15 01:19:42.859282: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0095 val_mae=0.0026 kWh val_bias=-0.0001 kWh (-0.3%) combined=0.0016 kWh ema_combined=0.0017 kWh 2026-08-15 01:19:57.397391: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:19:57.397655: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:19:57.397705: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:19:57.397888: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:19:57.397934: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:19:57.397961: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:19:57.397987: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:20:00.566120: --------------- PredBat - update at 2026-08-15 01:20:00+01:00 with clock skew 0 minutes, minutes now 80 2026-08-15 01:20:00.567017: Saved current settings to /config/predbat_config.json 2026-08-15 01:20:00.567197: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 80.0 minutes 2026-08-15 01:20:00.567362: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 01:20:00.567474: Autoupdate: Currently up to date 2026-08-15 01:20:00.589969: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 01:20:00.590312: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 01:20:00.590702: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 01:20:00.591530: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 01:20:00.591841: Predbat mode is set to Control charge & discharge 2026-08-15 01:20:00.936852: Found 21602 load_today datapoints going back 28 days 2026-08-15 01:20:00.937437: Using load_power data to fill gaps in load_today data 2026-08-15 01:20:01.976011: Processing 721 30-minute periods for power integration 2026-08-15 01:20:02.008681: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0084 val_mae=0.0028 kWh val_bias=+0.0008 kWh (+1.6%) combined=0.0022 kWh ema_combined=0.0019 kWh 2026-08-15 01:20:02.434556: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 01:20:02.449073: Car charging hold False, threshold 6.0kWh 2026-08-15 01:20:02.449374: Current data so far today: load 1.7kWh, import 2.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 01:20:02.507861: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 01:20:02.508687: Standing charge is set to 49.98p 2026-08-15 01:20:02.547804: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 01:20:02.548047: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 01:20:02.548302: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 80.0 minutes 2026-08-15 01:20:02.548850: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 79.7 minutes 2026-08-15 01:20:02.551992: Loaded 47 datapoints of futurerate analysis 2026-08-15 01:20:02.642449: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 01:20:02.706607: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 01:20:02.707029: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 01:20:02.779092: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 01:20:02.779244: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 01:20:02.781084: High export rate found rates in range 99p to -99p 2026-08-15 01:20:03.004125: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 01:20:03.015697: Car 0 charging is not planned as it is not plugged in 2026-08-15 01:20:03.046806: Battery level now 1.87kWh, -1hr ago 1.64kWh, at midnight 1.66kWh, battery value change in the last hour 2.74p, change today 2.55p, rate_forward 11.83p 2026-08-15 01:20:03.047500: Last hour: net energy 1.25kWh, import 1.25kWh, export 0.0kWh, car 0kWh, load 1.25kWh, net cost 34.5p, import 34.5p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 01:20:03.138769: Today's energy total net 2.0kWh, import 2.0kWh, export 0.0kWh, cost 105.84p, import 55.86p, export 0.0p, carbon 0.0kg 2026-08-15 01:20:03.138972: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 01:20:03.258006: Using weighted-bucket historical load forecast over 14 days 2026-08-15 01:20:03.291391: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 01:20:03.291787: Today's predicted so far 1.09kWh with 0.0kWh car/iBoost excluded, 0.87kWh import ignored, and 1.09kWh forecast extra. 2026-08-15 01:20:03.291841: Today's actual load so far 1.62kWh with 0.0kWh car/iBoost excluded, and 0.87kWh import ignored. 2026-08-15 01:20:03.392636: Inverter 0: Type SK Sunsynk 2026-08-15 01:20:03.392742: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 01:20:03.393162: Reserve min: 7%, battery_min: 7% 2026-08-15 01:20:03.393353: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 01:20:03.393813: Inverter 0 SoC: 1.64kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 419W, current battery voltage 51.2V, grid power -56W, load power 475W, PV Power 0W 2026-08-15 01:20:03.394120: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:20:03.394323: Inverter 0 scheduled charge enable is False 2026-08-15 01:20:03.394378: Inverter 0 charge windows currently [] 2026-08-15 01:20:03.394526: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 01:20:03.394855: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:20:03.394977: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:20:03.395089: Inverter 0 scheduled discharge enable is False 2026-08-15 01:20:03.395432: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:20:03.395529: Inverter 0 discharge windows currently [] 2026-08-15 01:20:03.395614: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:20:03.395660: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:20:03.395731: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:20:03.505452: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 01:20:03.505681: Plan was last updated on 2026-08-15 01:10:00+01:00 and is now 10.0 minutes old 2026-08-15 01:20:03.506027: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 01:20:03.506083: Best export window [ ] 2026-08-15 01:20:03.507066: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 01:20:03.510223: Load divergence over 8.0 hours mean 439.41W, min 278.4W, max 766.8W, std dev 75.9W, divergence 8.64% 2026-08-15 01:20:03.530011: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 01:20:03.553049: LoadML is_calculating True 2026-08-15 01:20:03.553147: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-15 01:20:03.640485: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 854.35p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 29.88kWh, PV 0.0kWh 2026-08-15 01:20:03.848757: Battery has 0.42 hours left - now at 1.64kWh 2026-08-15 01:20:03.915945: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 888.24p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 31.22kWh, PV 0.0kWh 2026-08-15 01:20:04.082617: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 721.78p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 31.22kWh, PV 0.0kWh 2026-08-15 01:20:04.261111: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 690.3p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 29.88kWh, PV 0.0kWh 2026-08-15 01:20:04.261342: Saving plan best values to HA entities 2026-08-15 01:20:04.572629: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 01:20:04.578627: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 01:20:04.589842: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.73kWh, house 8.93kWh, export 0.0kWh, metric 690.3p, metric10 721.78p 2026-08-15 01:20:04.715151: Marginal costs baseline metric (no standing charge): 640.3184 2026-08-15 01:20:05.137681: Marginal energy costs matrix computed: min=15.29 max=26.34 2026-08-15 01:20:05.268447: Rate array import [{'start': 80, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2140, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 80, 'end': 2140, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 01:20:05.277025: - Your estimated bill for today is £6.04 and tomorrow is £5.54 2026-08-15 01:20:05.277294: - Import rates are expensive (24.6p - 27.6p) for the next 5 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 01:20:05.277399: - The battery is currently at 10% and is in eco mode for the next 10 hours. 2026-08-15 01:20:05.277595: - For the next 48 hours there will be no solar generation. 2026-08-15 01:20:05.277714: - You will run out of battery in 25 minutes. 2026-08-15 01:20:05.277816: - Your next charge slot will be in 10 hours where import rates will be cheap (15.5p). 2026-08-15 01:20:05.277964: 2026-08-15 01:20:05.350526: Plan calculation took 1.84 seconds 2026-08-15 01:20:05.353768: No high rate period found 2026-08-15 01:20:05.442202: Import threshold used for optimisation was 22.73p 2026-08-15 01:20:05.572543: Low import rate windows [0: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 1: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 2: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 3: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 4: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 5: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 6: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 7: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 8: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 9: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 10: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 11: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 12: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 13: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 14: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 15: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 16: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 17: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 18: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 19: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 20: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 21: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 22: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 23: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 24: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 25: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 26: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 27: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 28: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 29: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 30: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 31: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 32: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 33: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 34: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 35: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 36: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 37: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 38: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 39: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 40: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 41: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 42: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 43: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 44: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 45: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 46: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 47: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 48: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 49: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 50: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 51: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 52: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 53: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 54: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 55: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 56: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 57: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 58: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 59: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 60: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 61: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 62: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 63: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 64: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 65: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 66: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 67: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 68: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 69: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 70: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 71: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 72: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 73: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 74: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 75: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 76: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 77: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 78: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 79: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 80: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 81: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 82: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 83: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 84: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 85: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 86: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 87: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 88: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 89: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 90: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 91: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 92: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 93: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 94: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57] 2026-08-15 01:20:05.592779: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-15 01:20:05.593182: Inverter 0 disabled charge window while waiting for schedule (now 08-15 01:20:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 01:20:05.593358: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:20:05.593710: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:20:05.593908: No export window planned 2026-08-15 01:20:05.594141: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 01:20:05.594210: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:20:05.594558: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:20:05.594861: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 01:20:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 01:20:05.595005: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 01:20:05.595204: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 01:20:05.595389: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:20:05.595517: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:20:05.595631: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:20:05.595707: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:20:05.595860: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:20:05.595998: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:20:05.596111: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:20:05.596292: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:20:05.596371: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:20:05.596525: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:20:05.596631: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:20:05.596750: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:20:05.596859: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:20:05.597027: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:20:05.597102: Inverter 0 count register writes 0 2026-08-15 01:20:05.642568: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-15 01:20:05.642979: Recompute is saving previous plan... 2026-08-15 01:20:05.647286: Best charge window [ 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 0%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 0%, 17-08 01:00:00 - 17-08 01:30:00 @ 27.57p 0% ] 2026-08-15 01:20:05.647483: Best export window [ ] 2026-08-15 01:20:05.648907: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 01:20:05.656542: Load divergence over 8.0 hours mean 439.41W, min 278.4W, max 766.8W, std dev 75.9W, divergence 8.64% 2026-08-15 01:20:05.694146: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 01:20:05.694526: LoadML is_calculating True 2026-08-15 01:20:05.694573: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-15 01:20:05.702758: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-15 01:20:05.703816: Optimise levels pass started at 2026-08-15 01:20:05 2026-08-15 01:20:05.703863: Optimise all windows, total charge 94 export 1 2026-08-15 01:20:12.906059: >> Region optimisation pass width 960 gives best_metric 790.53p, best_cost 795.45p, best_cycle 45.49kWh, best_import 40.71kWh 2026-08-15 01:20:14.079001: >> Region optimisation pass width 480 gives best_metric 790.53p, best_cost 795.45p, best_cycle 45.49kWh, best_import 40.71kWh 2026-08-15 01:20:15.705701: >> Region optimisation pass width 240 gives best_metric 790.53p, best_cost 795.45p, best_cycle 45.49kWh, best_import 40.71kWh 2026-08-15 01:20:18.692666: >> Region optimisation pass width 120 gives best_metric 790.53p, best_cost 795.45p, best_cycle 45.49kWh, best_import 40.71kWh 2026-08-15 01:20:18.705361: Calculated end_record as 08-16 11:30:00 based on best_price 16.34p, next_charge_start 08-15 11:30:00, max_windows 68 2026-08-15 01:20:18.705619: Optimise levels pass ended at 2026-08-15 01:20:18, duration 13.0 seconds tried 311 combinations 2026-08-15 01:20:18.705770: Set best_price_charge_level 17.6p, best_price_export_level 0p, best_price_charge 16.34p, best_cost_export 0p, best_metric 790.53p, best_keep 0kWh, best_cycle 45.49kWh, best_carbon 0kg, best_import 40.71kWh 2026-08-15 01:20:18.739913: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 16.34p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-15 01:20:44.040027: Tweak plan optimisation started metric 616.06p, cost 624.31p 2026-08-15 01:20:44.678863: Tweak optimisation finished metric 616.06p, cost 624.31p, metric_keep 0kWh, cycle 30.28kWh, carbon 0kg, import 29.62kWh, changed 8 window(s) 2026-08-15 01:20:44.735098: Swap charge optimisation started metric 616.06p, cost 624.31p, min_improvement_swap 0.1p 2026-08-15 01:20:56.139145: Swap charge optimisation finished metric 616.06p, cost 624.31p 2026-08-15 01:20:56.390722: Pruned 1 dead plan slot(s) in 10 trial(s), nominal metric 611.06p -> 611.06p, plan now metric 616.08p, cost 624.31p, cycle 30.28kWh, import 29.62kWh 2026-08-15 01:20:56.408767: Raw charge windows [ 15-08 01:00:00 - 15-08 01:30:00 @ 27.57p 0%, 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 100%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 100%, 17-08 01:00:00 - 17-08 01:30:00 @ 27.57p 100% ] reserve 1.12 2026-08-15 01:20:56.417261: Unclipped charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 01:30:00 @ 27.79p 100% ] reserve 1.12 2026-08-15 01:20:56.418400: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 01:30:00 @ 27.79p 100% ] reserve 1.12 2026-08-15 01:20:56.419359: Filtered charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 01:30:00 @ 27.79p 100% ] reserve 1.12 2026-08-15 01:20:56.496554: Previous plan best metric is 616.06 (cost 624.31) and new plan best metric is 616.06 (cost 624.31) 2026-08-15 01:20:56.496787: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-15 01:20:56.497480: Plan valid is now true after recompute was False 2026-08-15 01:20:56.536503: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 851.22p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 29.68kWh, PV 0.0kWh 2026-08-15 01:20:56.786122: Battery has 0.42 hours left - now at 1.64kWh 2026-08-15 01:20:56.885649: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 884.95p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 31.01kWh, PV 0.0kWh 2026-08-15 01:20:57.033821: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 707.77p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 31.01kWh, PV 0.0kWh 2026-08-15 01:20:57.268479: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 674.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 29.68kWh, PV 0.0kWh 2026-08-15 01:20:57.269415: Saving plan best values to HA entities 2026-08-15 01:20:57.728318: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 01:20:57.735820: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 01:20:57.743066: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 20.69kWh, house 8.93kWh, export 0.0kWh, metric 674.29p, metric10 707.77p 2026-08-15 01:20:57.864237: Marginal costs baseline metric (no standing charge): 624.3071 2026-08-15 01:20:58.393528: Marginal energy costs matrix computed: min=15.29 max=26.34 2026-08-15 01:20:58.608729: Rate array import [{'start': 80, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2130, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 80, 'end': 2130, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 01:20:58.609812: - Your estimated bill for today is £6.04 and tomorrow is £5.54 2026-08-15 01:20:58.609903: - Import rates are expensive (24.6p - 27.6p) for the next 5 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 01:20:58.609942: - The battery is currently at 10% and is in eco mode for the next 10 hours. 2026-08-15 01:20:58.609974: - For the next 48 hours there will be no solar generation. 2026-08-15 01:20:58.612513: - You will run out of battery in 25 minutes. 2026-08-15 01:20:58.612580: - Your next charge slot will be in 10 hours where import rates will be cheap (15.5p). 2026-08-15 01:20:58.612618: 2026-08-15 01:20:58.701098: Plan calculation took 53.06 seconds 2026-08-15 01:20:58.701375: Inverter 0: Type SK Sunsynk 2026-08-15 01:20:58.701438: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 01:20:58.701673: Reserve min: 7%, battery_min: 7% 2026-08-15 01:20:58.701773: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 01:20:58.702108: Inverter 0 SoC: 1.64kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 588W, current battery voltage 51.2V, grid power -56W, load power 644W, PV Power 0W 2026-08-15 01:20:58.702397: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:20:58.702546: Inverter 0 scheduled charge enable is False 2026-08-15 01:20:58.702594: Inverter 0 charge windows currently [] 2026-08-15 01:20:58.702643: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 01:20:58.702822: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:20:58.702899: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:20:58.702967: Inverter 0 scheduled discharge enable is False 2026-08-15 01:20:58.703150: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:20:58.703197: Inverter 0 discharge windows currently [] 2026-08-15 01:20:58.703227: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:20:58.703270: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:20:58.703299: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:20:58.780668: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-15 01:20:58.780835: Inverter 0 disabled charge window while waiting for schedule (now 08-15 01:20:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 01:20:58.780938: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:20:58.781217: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:20:58.781317: No export window planned 2026-08-15 01:20:58.781471: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 01:20:58.781519: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:20:58.781706: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:20:58.781917: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 01:20:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 01:20:58.781981: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 01:20:58.782053: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 01:20:58.782155: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:20:58.782212: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:20:58.782258: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:20:58.782301: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:20:58.782344: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:20:58.782387: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:20:58.782427: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:20:58.782519: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:20:58.782570: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:20:58.782613: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:20:58.782655: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:20:58.782698: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:20:58.782741: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:20:58.782819: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:20:58.782877: Inverter 0 count register writes 0 2026-08-15 01:20:58.814239: Total inverter register writes now 815 2026-08-15 01:20:58.861289: Info: Completed run status Demand 2026-08-15 01:20:58.873316: Info: record_status Demand 2026-08-15 01:20:58.882278: Saved current settings to /config/predbat_config.json 2026-08-15 01:20:58.882472: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 01:20:59.524573: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0074 val_mae=0.0024 kWh val_bias=-0.0002 kWh (-0.4%) combined=0.0013 kWh ema_combined=0.0017 kWh 2026-08-15 01:21:19.391622: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0069 val_mae=0.0023 kWh val_bias=-0.0002 kWh (-0.3%) combined=0.0012 kWh ema_combined=0.0015 kWh 2026-08-15 01:21:38.552723: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0070 val_mae=0.0022 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0011 kWh ema_combined=0.0014 kWh 2026-08-15 01:21:42.075040: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:21:42.075475: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:21:42.075642: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:21:42.075963: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:21:42.076123: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:21:42.076254: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:21:42.076380: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:21:57.285538: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0066 val_mae=0.0026 kWh val_bias=-0.0012 kWh (-2.2%) combined=0.0021 kWh ema_combined=0.0016 kWh 2026-08-15 01:22:15.402638: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0067 val_mae=0.0022 kWh val_bias=+0.0005 kWh (+1.0%) combined=0.0017 kWh ema_combined=0.0016 kWh 2026-08-15 01:22:37.183567: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0062 val_mae=0.0023 kWh val_bias=-0.0004 kWh (-0.8%) combined=0.0012 kWh ema_combined=0.0015 kWh 2026-08-15 01:22:55.832574: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0063 val_mae=0.0020 kWh val_bias=-0.0004 kWh (-0.8%) combined=0.0014 kWh ema_combined=0.0015 kWh 2026-08-15 01:23:15.251007: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0056 val_mae=0.0019 kWh val_bias=-0.0002 kWh (-0.4%) combined=0.0012 kWh ema_combined=0.0014 kWh 2026-08-15 01:23:34.896664: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0057 val_mae=0.0020 kWh val_bias=+0.0003 kWh (+0.6%) combined=0.0014 kWh ema_combined=0.0014 kWh 2026-08-15 01:23:54.595418: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0056 val_mae=0.0019 kWh val_bias=-0.0006 kWh (-1.1%) combined=0.0016 kWh ema_combined=0.0014 kWh 2026-08-15 01:23:56.534602: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:23:56.534905: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:23:56.534960: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:23:56.535125: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:23:56.535174: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:23:56.535292: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:23:56.535338: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:24:15.005831: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0055 val_mae=0.0018 kWh val_bias=-0.0002 kWh (-0.4%) combined=0.0011 kWh ema_combined=0.0013 kWh 2026-08-15 01:24:34.045869: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0056 val_mae=0.0019 kWh val_bias=+0.0000 kWh (+0.0%) combined=0.0011 kWh ema_combined=0.0013 kWh 2026-08-15 01:24:53.309458: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0051 val_mae=0.0018 kWh val_bias=-0.0000 kWh (-0.1%) combined=0.0009 kWh ema_combined=0.0012 kWh 2026-08-15 01:25:00.814099: --------------- PredBat - update at 2026-08-15 01:25:00+01:00 with clock skew 0 minutes, minutes now 85 2026-08-15 01:25:00.815070: Saved current settings to /config/predbat_config.json 2026-08-15 01:25:00.815246: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 85.0 minutes 2026-08-15 01:25:00.815331: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 01:25:00.815600: Autoupdate: Currently up to date 2026-08-15 01:25:00.857421: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 01:25:00.858112: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 01:25:00.858464: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 01:25:00.859208: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 01:25:00.859422: Predbat mode is set to Control charge & discharge 2026-08-15 01:25:01.178500: Found 21602 load_today datapoints going back 28 days 2026-08-15 01:25:01.178632: Using load_power data to fill gaps in load_today data 2026-08-15 01:25:02.318339: Processing 721 30-minute periods for power integration 2026-08-15 01:25:02.671324: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 01:25:02.671561: Car charging hold False, threshold 6.0kWh 2026-08-15 01:25:02.671614: Current data so far today: load 1.8kWh, import 2.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 01:25:02.689862: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 01:25:02.691040: Standing charge is set to 49.98p 2026-08-15 01:25:02.721224: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 01:25:02.721382: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 01:25:02.721664: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 85.0 minutes 2026-08-15 01:25:02.722514: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 84.7 minutes 2026-08-15 01:25:02.727479: Loaded 47 datapoints of futurerate analysis 2026-08-15 01:25:02.813995: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 01:25:02.900121: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 01:25:02.921658: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 01:25:03.000251: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 01:25:03.007307: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 01:25:03.008773: High export rate found rates in range 99p to -99p 2026-08-15 01:25:03.150396: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 01:25:03.150645: Car 0 charging is not planned as it is not plugged in 2026-08-15 01:25:03.181598: Battery level now 1.64kWh, -1hr ago 1.98kWh, at midnight 1.66kWh, battery value change in the last hour -3.97p, change today -0.19p, rate_forward 11.83p 2026-08-15 01:25:03.182119: Last hour: net energy 1.0kWh, import 1.0kWh, export 0.0kWh, car 0kWh, load 1.2kWh, net cost 27.38p, import 27.38p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 01:25:03.267742: Today's energy total net 2.0kWh, import 2.0kWh, export 0.0kWh, cost 105.84p, import 55.86p, export 0.0p, carbon 0.0kg 2026-08-15 01:25:03.267916: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 01:25:03.412933: Using weighted-bucket historical load forecast over 14 days 2026-08-15 01:25:03.454638: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 01:25:03.454754: Today's predicted so far 1.14kWh with 0.0kWh car/iBoost excluded, 0.88kWh import ignored, and 1.14kWh forecast extra. 2026-08-15 01:25:03.454802: Today's actual load so far 1.67kWh with 0.0kWh car/iBoost excluded, and 0.88kWh import ignored. 2026-08-15 01:25:03.527881: Inverter 0: Type SK Sunsynk 2026-08-15 01:25:03.527990: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 01:25:03.528211: Reserve min: 7%, battery_min: 7% 2026-08-15 01:25:03.528299: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 01:25:03.528621: Inverter 0 SoC: 1.64kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1666W, current battery voltage 51.2V, grid power -54W, load power 1724W, PV Power 0W 2026-08-15 01:25:03.528822: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:25:03.528932: Inverter 0 scheduled charge enable is False 2026-08-15 01:25:03.529012: Inverter 0 charge windows currently [] 2026-08-15 01:25:03.529049: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 01:25:03.529294: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:25:03.529349: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:25:03.529498: Inverter 0 scheduled discharge enable is False 2026-08-15 01:25:03.529755: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:25:03.529831: Inverter 0 discharge windows currently [] 2026-08-15 01:25:03.529924: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:25:03.530005: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:25:03.530101: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:25:03.639600: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 01:25:03.639727: Plan was last updated on 2026-08-15 01:20:00+01:00 and is now 5.0 minutes old 2026-08-15 01:25:03.640109: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 01:25:03.640263: Best export window [ ] 2026-08-15 01:25:03.641144: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 01:25:03.644363: Load divergence over 8.0 hours mean 437.71W, min 312.6W, max 960.0W, std dev 85.73W, divergence 9.79% 2026-08-15 01:25:03.666234: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 01:25:03.666383: LoadML is_calculating True 2026-08-15 01:25:03.666587: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-15 01:25:03.713218: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 851.26p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 29.81kWh, PV 0.0kWh 2026-08-15 01:25:03.935169: Battery has 0.42 hours left - now at 1.64kWh 2026-08-15 01:25:04.038958: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 885.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 31.14kWh, PV 0.0kWh 2026-08-15 01:25:04.132464: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 713.01p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 31.14kWh, PV 0.0kWh 2026-08-15 01:25:04.325208: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 680.46p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 29.81kWh, PV 0.0kWh 2026-08-15 01:25:04.326159: Saving plan best values to HA entities 2026-08-15 01:25:04.692814: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 01:25:04.714027: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 01:25:04.722167: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.2kWh, house 8.86kWh, export 0.0kWh, metric 680.46p, metric10 713.01p 2026-08-15 01:25:04.910671: Marginal costs baseline metric (no standing charge): 630.4764 2026-08-15 01:25:05.248197: Marginal energy costs matrix computed: min=15.22 max=26.17 2026-08-15 01:25:05.390697: Rate array import [{'start': 85, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2135, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 85, 'end': 2135, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 01:25:05.405978: - Your estimated bill for today is £6.02 and tomorrow is £5.55 2026-08-15 01:25:05.406049: - Import rates are expensive (24.6p - 27.6p) for the next 5 and a half hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 01:25:05.406074: - The battery is currently at 10% and is in eco mode for the next 10 hours. 2026-08-15 01:25:05.406133: - For the next 48 hours there will be no solar generation. 2026-08-15 01:25:05.406228: - You will run out of battery in 25 minutes. 2026-08-15 01:25:05.406267: - Your next charge slot will be in 10 hours where import rates will be cheap (15.5p). 2026-08-15 01:25:05.406288: 2026-08-15 01:25:05.478235: Plan calculation took 1.84 seconds 2026-08-15 01:25:05.481577: No high rate period found 2026-08-15 01:25:05.583765: Import threshold used for optimisation was 22.73p 2026-08-15 01:25:05.719563: Low import rate windows [0: 08-15 01:00:00 - 08-15 01:30:00 @ 27.57, 1: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 2: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 3: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 4: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 5: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 6: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 7: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 8: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 9: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 10: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 11: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 12: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 13: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 14: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 15: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 16: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 17: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 18: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 19: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 20: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 21: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 22: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 23: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 24: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 25: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 26: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 27: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 28: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 29: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 30: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 31: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 32: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 33: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 34: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 35: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 36: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 37: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 38: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 39: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 40: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 41: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 42: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 43: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 44: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 45: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 46: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 47: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 48: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 49: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 50: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 51: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 52: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 53: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 54: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 55: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 56: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 57: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 58: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 59: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 60: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 61: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 62: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 63: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 64: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 65: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 66: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 67: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 68: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 69: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 70: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 71: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 72: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 73: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 74: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 75: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 76: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 77: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 78: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 79: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 80: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 81: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 82: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 83: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 84: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 85: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 86: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 87: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 88: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 89: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 90: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 91: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 92: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 93: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 94: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57] 2026-08-15 01:25:05.728830: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-15 01:25:05.729013: Inverter 0 disabled charge window while waiting for schedule (now 08-15 01:25:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 01:25:05.729095: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:25:05.729396: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:25:05.729997: No export window planned 2026-08-15 01:25:05.730126: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 01:25:05.730175: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:25:05.730340: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:25:05.730505: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 01:25:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 01:25:05.730558: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 01:25:05.730604: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 01:25:05.730677: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:25:05.730718: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:25:05.730746: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:25:05.730776: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:25:05.730834: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:25:05.730864: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:25:05.730891: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:25:05.730950: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:25:05.730988: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:25:05.731014: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:25:05.731628: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:25:05.731713: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:25:05.731753: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:25:05.731817: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:25:05.731862: Inverter 0 count register writes 0 2026-08-15 01:25:05.774138: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-15 01:25:05.784377: Total inverter register writes now 815 2026-08-15 01:25:05.837762: Info: Completed run status Demand 2026-08-15 01:25:05.847953: Info: record_status Demand 2026-08-15 01:25:05.861447: Saved current settings to /config/predbat_config.json 2026-08-15 01:25:05.861774: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 01:25:15.606291: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0051 val_mae=0.0018 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0011 kWh ema_combined=0.0012 kWh 2026-08-15 01:25:36.974670: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0053 val_mae=0.0018 kWh val_bias=-0.0002 kWh (-0.3%) combined=0.0011 kWh ema_combined=0.0011 kWh 2026-08-15 01:25:42.064583: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:25:42.064886: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:25:42.064922: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:25:42.065094: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:25:42.065256: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:25:42.065357: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:25:42.065393: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:25:55.589730: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0051 val_mae=0.0018 kWh val_bias=-0.0003 kWh (-0.7%) combined=0.0011 kWh ema_combined=0.0011 kWh 2026-08-15 01:26:16.360098: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0051 val_mae=0.0017 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0009 kWh ema_combined=0.0011 kWh 2026-08-15 01:26:16.366856: ML Predictor: Restored best weights from epoch with val_mae=0.0017 kWh val_bias=-0.0001 kWh (-0.1%) 2026-08-15 01:26:16.367211: ML Predictor: Training complete, final val_mae=0.0017 kWh val_bias=-0.0001 kWh (-0.1%) 2026-08-15 01:26:17.910456: ML Predictor: AR rollout over holdout: ar_mae=0.0019 kWh ar_bias=-0.0001 kWh (-0.3%) [drift vs teacher-forced: +0.0001 kWh] 2026-08-15 01:26:17.924230: ML Predictor: Curriculum pass 2/5 complete, val_mae=0.0017 kWh 2026-08-15 01:26:18.020732: ML Predictor: Curriculum pass 3/5: window=55.0 days (1320 hours of data) 2026-08-15 01:26:18.020885: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-15 01:26:18.636646: ML Predictor: Creating dataset with 1320 hours of training data, 48 hours validation 2026-08-15 01:26:23.760466: ML Predictor: Created 15552 training samples, 576 validation samples 2026-08-15 01:26:23.809589: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0474) load(mean=0.0589 std=0.0474) pv(mean=0.0000 std=0.0100) temp(mean=19.4979 std=4.4109) import_rate(mean=25.5034 std=2.4753) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1903 std=0.5235) 2026-08-15 01:26:23.883636: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-15 01:26:23.897452: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-15 01:26:24.098870: ML Predictor: Baseline (pre-finetune) val_mae=0.0079 kWh val_bias=-0.0043 kWh 2026-08-15 01:26:44.387841: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0107 val_mae=0.0055 kWh val_bias=-0.0012 kWh (-1.7%) combined=0.0031 kWh ema_combined=0.0031 kWh 2026-08-15 01:27:02.302180: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0113 val_mae=0.0057 kWh val_bias=-0.0016 kWh (-2.2%) combined=0.0035 kWh ema_combined=0.0032 kWh 2026-08-15 01:27:21.211654: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0102 val_mae=0.0060 kWh val_bias=-0.0003 kWh (-0.4%) combined=0.0037 kWh ema_combined=0.0034 kWh 2026-08-15 01:27:41.567968: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0129 val_mae=0.0058 kWh val_bias=-0.0029 kWh (-4.0%) combined=0.0044 kWh ema_combined=0.0037 kWh 2026-08-15 01:27:56.730029: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:27:56.730294: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:27:56.730340: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:27:56.730478: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:27:56.730519: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:27:56.730540: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:27:56.730557: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:28:00.501650: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0103 val_mae=0.0040 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0021 kWh ema_combined=0.0032 kWh 2026-08-15 01:28:19.661663: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0093 val_mae=0.0043 kWh val_bias=+0.0005 kWh (+0.7%) combined=0.0026 kWh ema_combined=0.0030 kWh 2026-08-15 01:28:38.227038: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0114 val_mae=0.0045 kWh val_bias=-0.0007 kWh (-1.0%) combined=0.0026 kWh ema_combined=0.0029 kWh 2026-08-15 01:28:57.551618: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0116 val_mae=0.0040 kWh val_bias=+0.0007 kWh (+1.0%) combined=0.0024 kWh ema_combined=0.0028 kWh 2026-08-15 01:29:18.120220: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0102 val_mae=0.0039 kWh val_bias=-0.0010 kWh (-1.4%) combined=0.0027 kWh ema_combined=0.0027 kWh 2026-08-15 01:29:37.871506: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0102 val_mae=0.0040 kWh val_bias=+0.0010 kWh (+1.5%) combined=0.0028 kWh ema_combined=0.0027 kWh 2026-08-15 01:29:57.269572: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:29:57.270250: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:29:57.270461: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:29:57.270991: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:29:57.271198: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:29:57.271424: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:29:57.271634: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:29:59.089579: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0097 val_mae=0.0035 kWh val_bias=+0.0005 kWh (+0.7%) combined=0.0024 kWh ema_combined=0.0026 kWh 2026-08-15 01:30:00.418552: --------------- PredBat - update at 2026-08-15 01:30:00+01:00 with clock skew 0 minutes, minutes now 90 2026-08-15 01:30:00.419893: Saved current settings to /config/predbat_config.json 2026-08-15 01:30:00.420135: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 90.0 minutes 2026-08-15 01:30:00.420332: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 01:30:00.420513: Autoupdate: Currently up to date 2026-08-15 01:30:00.454494: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 01:30:00.459532: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 01:30:00.459834: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 01:30:00.461419: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 01:30:00.461897: Predbat mode is set to Control charge & discharge 2026-08-15 01:30:00.884009: Found 21602 load_today datapoints going back 28 days 2026-08-15 01:30:00.884163: Using load_power data to fill gaps in load_today data 2026-08-15 01:30:02.226063: Processing 721 30-minute periods for power integration 2026-08-15 01:30:02.505978: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 01:30:02.506148: Car charging hold False, threshold 6.0kWh 2026-08-15 01:30:02.506209: Current data so far today: load 1.9kWh, import 2.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 01:30:02.539693: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 01:30:02.540284: Standing charge is set to 49.98p 2026-08-15 01:30:02.613151: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 01:30:02.613467: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 01:30:02.614015: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 90.0 minutes 2026-08-15 01:30:02.614531: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 89.7 minutes 2026-08-15 01:30:02.618901: Loaded 47 datapoints of futurerate analysis 2026-08-15 01:30:02.723962: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 01:30:02.807649: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 01:30:02.808250: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 01:30:02.959044: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 01:30:02.959202: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 01:30:02.961189: High export rate found rates in range 99p to -99p 2026-08-15 01:30:03.095052: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 01:30:03.095268: Car 0 charging is not planned as it is not plugged in 2026-08-15 01:30:03.110413: Battery level now 1.64kWh, -1hr ago 1.76kWh, at midnight 1.66kWh, battery value change in the last hour -1.42p, change today -0.19p, rate_forward 11.83p 2026-08-15 01:30:03.110764: Last hour: net energy 0.9kWh, import 0.9kWh, export 0.0kWh, car 0kWh, load 1.2kWh, net cost 24.56p, import 24.56p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 01:30:03.220454: Today's energy total net 2.0kWh, import 2.0kWh, export 0.0kWh, cost 105.84p, import 55.86p, export 0.0p, carbon 0.0kg 2026-08-15 01:30:03.220613: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 01:30:03.354293: Using weighted-bucket historical load forecast over 14 days 2026-08-15 01:30:03.416072: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 01:30:03.416287: Today's predicted so far 1.26kWh with 0.0kWh car/iBoost excluded, 0.78kWh import ignored, and 1.26kWh forecast extra. 2026-08-15 01:30:03.416429: Today's actual load so far 1.96kWh with 0.0kWh car/iBoost excluded, and 0.78kWh import ignored. 2026-08-15 01:30:03.529970: Inverter 0: Type SK Sunsynk 2026-08-15 01:30:03.530179: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 01:30:03.530544: Reserve min: 7%, battery_min: 7% 2026-08-15 01:30:03.530784: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 01:30:03.531232: Inverter 0 SoC: 1.56kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 1663W, current battery voltage 51.2V, grid power -55W, load power 1725W, PV Power 0W 2026-08-15 01:30:03.531566: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:30:03.531815: Inverter 0 scheduled charge enable is False 2026-08-15 01:30:03.531935: Inverter 0 charge windows currently [] 2026-08-15 01:30:03.532085: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 01:30:03.532405: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:30:03.532519: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:30:03.532743: Inverter 0 scheduled discharge enable is False 2026-08-15 01:30:03.533067: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:30:03.533189: Inverter 0 discharge windows currently [] 2026-08-15 01:30:03.533344: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:30:03.533489: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:30:03.533618: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:30:03.654947: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 01:30:03.655073: Plan was last updated on 2026-08-15 01:20:00+01:00 and is now 10.0 minutes old 2026-08-15 01:30:03.655399: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 01:30:03.655453: Best export window [ ] 2026-08-15 01:30:03.656285: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 01:30:03.660017: Load divergence over 8.0 hours mean 437.66W, min 290.4W, max 1000.8W, std dev 89.21W, divergence 10.19% 2026-08-15 01:30:03.678622: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 01:30:03.678753: LoadML is_calculating True 2026-08-15 01:30:03.678793: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-15 01:30:03.713575: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 850.87p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 29.86kWh, PV 0.0kWh 2026-08-15 01:30:04.034302: Battery has 0.33 hours left - now at 1.56kWh 2026-08-15 01:30:04.123984: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 884.45p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 31.19kWh, PV 0.0kWh 2026-08-15 01:30:04.343131: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 718.05p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 31.19kWh, PV 0.0kWh 2026-08-15 01:30:04.543303: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 687.04p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 29.86kWh, PV 0.0kWh 2026-08-15 01:30:04.557347: Saving plan best values to HA entities 2026-08-15 01:30:04.930015: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-15 01:30:04.950427: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 01:30:04.976166: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.7kWh, house 8.8kWh, export 0.0kWh, metric 687.04p, metric10 718.05p 2026-08-15 01:30:05.108204: Marginal costs baseline metric (no standing charge): 637.0616 2026-08-15 01:30:05.664868: Marginal energy costs matrix computed: min=15.16 max=26.05 2026-08-15 01:30:05.789120: Rate array import [{'start': 90, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2140, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 90, 'end': 2140, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 01:30:05.790166: - Your estimated bill for today is £6.02 and tomorrow is £5.51 2026-08-15 01:30:05.790330: - Import rates are expensive (24.6p - 27.6p) for the next 5 and a half hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 01:30:05.790465: - The battery is currently at 10% and is in eco mode for the next 10 hours. 2026-08-15 01:30:05.790578: - For the next 48 hours there will be no solar generation. 2026-08-15 01:30:05.790704: - You will run out of battery in 20 minutes. 2026-08-15 01:30:05.790835: - Your next charge slot will be in 10 hours where import rates will be cheap (15.5p). 2026-08-15 01:30:05.790962: 2026-08-15 01:30:05.839045: Plan calculation took 2.18 seconds 2026-08-15 01:30:05.877032: No high rate period found 2026-08-15 01:30:05.984148: Import threshold used for optimisation was 22.73p 2026-08-15 01:30:06.108707: Low import rate windows [0: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 1: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 2: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 3: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 4: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 5: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 6: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 7: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 8: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 9: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 10: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 11: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 12: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 13: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 14: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 15: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 16: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 17: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 18: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 19: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 20: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 21: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 22: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 23: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 24: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 25: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 26: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 27: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 28: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 29: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 30: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 31: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 32: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 33: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 34: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 35: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 36: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 37: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 38: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 39: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 40: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 41: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 42: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 43: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 44: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 45: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 46: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 47: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 48: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 49: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 50: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 51: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 52: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 53: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 54: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 55: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 56: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 57: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 58: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 59: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 60: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 61: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 62: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 63: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 64: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 65: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 66: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 67: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 68: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 69: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 70: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 71: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 72: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 73: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 74: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 75: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 76: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 77: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 78: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 79: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 80: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 81: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 82: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 83: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 84: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 85: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 86: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 87: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 88: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 89: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 90: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 91: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 92: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 93: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57] 2026-08-15 01:30:06.149601: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 10%, target 100% 2026-08-15 01:30:06.149810: Inverter 0 disabled charge window while waiting for schedule (now 08-15 01:30:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 01:30:06.149904: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:30:06.150118: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:30:06.150214: No export window planned 2026-08-15 01:30:06.150342: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 01:30:06.150473: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:30:06.150815: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:30:06.151115: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 01:30:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 01:30:06.151284: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 01:30:06.151447: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 01:30:06.151655: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:30:06.151860: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:30:06.152066: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:30:06.152245: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:30:06.152433: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:30:06.152608: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:30:06.152816: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:30:06.153054: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:30:06.153293: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:30:06.153471: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:30:06.153659: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:30:06.153849: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:30:06.154047: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:30:06.154221: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:30:06.154398: Inverter 0 count register writes 0 2026-08-15 01:30:06.181099: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-15 01:30:06.181455: Recompute is saving previous plan... 2026-08-15 01:30:06.186401: Best charge window [ 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 0%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 0%, 17-08 01:00:00 - 17-08 01:30:00 @ 27.57p 0% ] 2026-08-15 01:30:06.186619: Best export window [ ] 2026-08-15 01:30:06.188035: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 01:30:06.192838: Load divergence over 8.0 hours mean 437.66W, min 290.4W, max 1000.8W, std dev 89.21W, divergence 10.19% 2026-08-15 01:30:06.250355: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 01:30:06.252409: LoadML is_calculating True 2026-08-15 01:30:06.252466: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-15 01:30:06.266288: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-15 01:30:06.268028: Optimise levels pass started at 2026-08-15 01:30:06 2026-08-15 01:30:06.268278: Optimise all windows, total charge 94 export 1 2026-08-15 01:30:13.212133: >> Region optimisation pass width 960 gives best_metric 784.09p, best_cost 790.56p, best_cycle 47.46kWh, best_import 40.82kWh 2026-08-15 01:30:14.559627: >> Region optimisation pass width 480 gives best_metric 784.09p, best_cost 790.56p, best_cycle 47.46kWh, best_import 40.82kWh 2026-08-15 01:30:15.768678: >> Region optimisation pass width 240 gives best_metric 784.09p, best_cost 790.56p, best_cycle 47.46kWh, best_import 40.82kWh 2026-08-15 01:30:18.893195: >> Region optimisation pass width 120 gives best_metric 784.09p, best_cost 790.56p, best_cycle 47.46kWh, best_import 40.82kWh 2026-08-15 01:30:18.893611: Calculated end_record as 08-16 11:30:00 based on best_price 16.34p, next_charge_start 08-15 11:30:00, max_windows 67 2026-08-15 01:30:18.893682: Optimise levels pass ended at 2026-08-15 01:30:18, duration 12.6 seconds tried 316 combinations 2026-08-15 01:30:18.893824: Set best_price_charge_level 17.6p, best_price_export_level 0p, best_price_charge 16.34p, best_cost_export 0p, best_metric 784.09p, best_keep 0kWh, best_cycle 47.46kWh, best_carbon 0kg, best_import 40.82kWh 2026-08-15 01:30:18.913125: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 16.34p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-15 01:30:44.114605: Tweak plan optimisation started metric 612.86p, cost 621.16p 2026-08-15 01:30:44.734530: Tweak optimisation finished metric 612.86p, cost 621.16p, metric_keep 0kWh, cycle 30.96kWh, carbon 0kg, import 29.54kWh, changed 8 window(s) 2026-08-15 01:30:44.779427: Swap charge optimisation started metric 612.86p, cost 621.16p, min_improvement_swap 0.1p 2026-08-15 01:30:56.703374: Swap charge optimisation finished metric 612.86p, cost 621.16p 2026-08-15 01:30:56.915303: Pruned 1 dead plan slot(s) in 11 trial(s), nominal metric 607.92p -> 607.92p, plan now metric 612.86p, cost 621.16p, cycle 30.96kWh, import 29.54kWh 2026-08-15 01:30:56.934463: Raw charge windows [ 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 100%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 100%, 17-08 01:00:00 - 17-08 01:30:00 @ 27.57p 100% ] reserve 1.12 2026-08-15 01:30:56.935468: Unclipped charge windows [ 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 01:30:00 @ 27.79p 100% ] reserve 1.12 2026-08-15 01:30:56.936027: Unfiltered charge windows [ 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 01:30:00 @ 27.79p 100% ] reserve 1.12 2026-08-15 01:30:56.936510: Filtered charge windows [ 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 01:30:00 @ 27.79p 100% ] reserve 1.12 2026-08-15 01:30:56.999067: Previous plan best metric is 612.91 (cost 621.2) and new plan best metric is 612.86 (cost 621.16) 2026-08-15 01:30:57.000108: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-15 01:30:57.000381: Plan valid is now true after recompute was False 2026-08-15 01:30:57.038913: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 847.89p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 29.67kWh, PV 0.0kWh 2026-08-15 01:30:57.205781: Battery has 0.33 hours left - now at 1.56kWh 2026-08-15 01:30:57.273800: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 881.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 30.99kWh, PV 0.0kWh 2026-08-15 01:30:57.484176: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 704.2p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 30.99kWh, PV 0.0kWh 2026-08-15 01:30:57.642725: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 671.19p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 29.67kWh, PV 0.0kWh 2026-08-15 01:30:57.642871: Saving plan best values to HA entities 2026-08-15 01:30:57.934982: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-15 01:30:57.943529: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 01:30:57.955227: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 20.68kWh, house 8.8kWh, export 0.0kWh, metric 671.19p, metric10 704.2p 2026-08-15 01:30:58.051953: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0079 val_mae=0.0035 kWh val_bias=-0.0008 kWh (-1.2%) combined=0.0022 kWh ema_combined=0.0025 kWh 2026-08-15 01:30:58.103919: Marginal costs baseline metric (no standing charge): 621.2048 2026-08-15 01:30:58.650128: Marginal energy costs matrix computed: min=15.16 max=26.05 2026-08-15 01:30:58.779168: Rate array import [{'start': 90, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2130, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 90, 'end': 2130, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 01:30:58.780331: - Your estimated bill for today is £6.02 and tomorrow is £5.51 2026-08-15 01:30:58.780471: - Import rates are expensive (24.6p - 27.6p) for the next 5 and a half hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 01:30:58.780602: - The battery is currently at 10% and is in eco mode for the next 10 hours. 2026-08-15 01:30:58.780701: - For the next 48 hours there will be no solar generation. 2026-08-15 01:30:58.780856: - You will run out of battery in 20 minutes. 2026-08-15 01:30:58.780997: - Your next charge slot will be in 10 hours where import rates will be cheap (15.5p). 2026-08-15 01:30:58.781116: 2026-08-15 01:30:58.862513: Plan calculation took 52.68 seconds 2026-08-15 01:30:58.862953: Inverter 0: Type SK Sunsynk 2026-08-15 01:30:58.863119: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 01:30:58.863432: Reserve min: 7%, battery_min: 7% 2026-08-15 01:30:58.863624: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 01:30:58.864051: Inverter 0 SoC: 1.44kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power 1659W, current battery voltage 51.2V, grid power -55W, load power 1722W, PV Power 0W 2026-08-15 01:30:58.864364: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:30:58.864555: Inverter 0 scheduled charge enable is False 2026-08-15 01:30:58.864693: Inverter 0 charge windows currently [] 2026-08-15 01:30:58.864826: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 01:30:58.865120: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:30:58.865255: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:30:58.865407: Inverter 0 scheduled discharge enable is False 2026-08-15 01:30:58.865671: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:30:58.865839: Inverter 0 discharge windows currently [] 2026-08-15 01:30:58.865956: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:30:58.866081: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:30:58.866187: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:30:58.985009: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-15 01:30:58.985345: Inverter 0 disabled charge window while waiting for schedule (now 08-15 01:30:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 01:30:58.985622: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:30:58.985962: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:30:58.986324: No export window planned 2026-08-15 01:30:58.986564: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 01:30:58.986711: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:30:58.988557: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:30:58.988900: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 01:30:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 01:30:58.989085: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 01:30:58.989260: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 01:30:58.989444: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:30:58.989599: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:30:58.989723: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:30:58.989889: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:30:58.990014: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:30:58.990154: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:30:58.990273: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:30:58.990461: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:30:58.990589: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:30:58.990730: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:30:58.990872: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:30:58.991014: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:30:58.991135: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:30:58.991275: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:30:58.991385: Inverter 0 count register writes 0 2026-08-15 01:30:59.037948: Total inverter register writes now 815 2026-08-15 01:30:59.162714: Info: Completed run status Demand 2026-08-15 01:30:59.172031: Info: record_status Demand 2026-08-15 01:30:59.187595: Saved current settings to /config/predbat_config.json 2026-08-15 01:30:59.187880: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 01:31:19.119390: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0083 val_mae=0.0036 kWh val_bias=+0.0007 kWh (+1.0%) combined=0.0020 kWh ema_combined=0.0024 kWh 2026-08-15 01:31:38.955317: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0087 val_mae=0.0034 kWh val_bias=-0.0013 kWh (-1.9%) combined=0.0021 kWh ema_combined=0.0023 kWh 2026-08-15 01:31:42.355800: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:31:42.356103: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:31:42.356157: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:31:42.356306: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:31:42.356349: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:31:42.356370: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:31:42.356387: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:31:58.044302: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0075 val_mae=0.0033 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0023 kWh ema_combined=0.0023 kWh 2026-08-15 01:32:17.565064: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0074 val_mae=0.0042 kWh val_bias=-0.0025 kWh (-3.6%) combined=0.0031 kWh ema_combined=0.0025 kWh 2026-08-15 01:32:36.455951: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0075 val_mae=0.0034 kWh val_bias=-0.0010 kWh (-1.3%) combined=0.0018 kWh ema_combined=0.0023 kWh 2026-08-15 01:32:57.092341: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0062 val_mae=0.0030 kWh val_bias=+0.0001 kWh (+0.1%) combined=0.0017 kWh ema_combined=0.0021 kWh 2026-08-15 01:33:16.308233: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0067 val_mae=0.0028 kWh val_bias=-0.0004 kWh (-0.6%) combined=0.0017 kWh ema_combined=0.0020 kWh 2026-08-15 01:33:36.299516: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0062 val_mae=0.0026 kWh val_bias=-0.0006 kWh (-0.8%) combined=0.0016 kWh ema_combined=0.0019 kWh 2026-08-15 01:33:55.399779: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0059 val_mae=0.0027 kWh val_bias=-0.0005 kWh (-0.7%) combined=0.0016 kWh ema_combined=0.0018 kWh 2026-08-15 01:33:56.809801: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:33:56.810105: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:33:56.810164: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:33:56.810340: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:33:56.810390: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:33:56.810418: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:33:56.810443: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:34:14.939179: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0061 val_mae=0.0026 kWh val_bias=-0.0002 kWh (-0.2%) combined=0.0014 kWh ema_combined=0.0017 kWh 2026-08-15 01:34:34.837751: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0057 val_mae=0.0026 kWh val_bias=+0.0001 kWh (+0.1%) combined=0.0015 kWh ema_combined=0.0016 kWh 2026-08-15 01:34:53.719075: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0059 val_mae=0.0024 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0013 kWh ema_combined=0.0015 kWh 2026-08-15 01:35:00.161020: --------------- PredBat - update at 2026-08-15 01:35:00+01:00 with clock skew 0 minutes, minutes now 95 2026-08-15 01:35:00.162228: Saved current settings to /config/predbat_config.json 2026-08-15 01:35:00.162376: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 95.0 minutes 2026-08-15 01:35:00.162592: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 01:35:00.162693: Autoupdate: Currently up to date 2026-08-15 01:35:00.205612: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 01:35:00.205950: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 01:35:00.206313: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 01:35:00.207022: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 01:35:00.207322: Predbat mode is set to Control charge & discharge 2026-08-15 01:35:00.477717: Found 21602 load_today datapoints going back 28 days 2026-08-15 01:35:00.477862: Using load_power data to fill gaps in load_today data 2026-08-15 01:35:01.897017: Processing 721 30-minute periods for power integration 2026-08-15 01:35:02.297414: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 01:35:02.297600: Car charging hold False, threshold 6.0kWh 2026-08-15 01:35:02.299403: Current data so far today: load 2.0kWh, import 2.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 01:35:02.336149: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 01:35:02.343636: Standing charge is set to 49.98p 2026-08-15 01:35:02.411665: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 01:35:02.411791: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 01:35:02.411989: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 95.0 minutes 2026-08-15 01:35:02.412373: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 94.7 minutes 2026-08-15 01:35:02.415909: Loaded 47 datapoints of futurerate analysis 2026-08-15 01:35:02.521558: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 01:35:02.578870: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 01:35:02.579317: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 01:35:02.642684: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 01:35:02.642980: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 01:35:02.644927: High export rate found rates in range 99p to -99p 2026-08-15 01:35:02.761926: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 01:35:02.762586: Car 0 charging is not planned as it is not plugged in 2026-08-15 01:35:02.783720: Battery level now 1.56kWh, -1hr ago 1.76kWh, at midnight 1.66kWh, battery value change in the last hour -2.37p, change today -1.14p, rate_forward 11.83p 2026-08-15 01:35:02.784237: Last hour: net energy 0.8kWh, import 0.8kWh, export 0.0kWh, car 0kWh, load 1.2kWh, net cost 21.84p, import 21.84p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 01:35:02.862132: Today's energy total net 2.0kWh, import 2.0kWh, export 0.0kWh, cost 105.84p, import 55.86p, export 0.0p, carbon 0.0kg 2026-08-15 01:35:02.862283: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 01:35:02.978149: Using weighted-bucket historical load forecast over 14 days 2026-08-15 01:35:03.035433: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 01:35:03.035713: Today's predicted so far 1.34kWh with 0.0kWh car/iBoost excluded, 0.72kWh import ignored, and 1.34kWh forecast extra. 2026-08-15 01:35:03.035888: Today's actual load so far 2.13kWh with 0.0kWh car/iBoost excluded, and 0.72kWh import ignored. 2026-08-15 01:35:03.137067: Inverter 0: Type SK Sunsynk 2026-08-15 01:35:03.137168: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 01:35:03.137452: Reserve min: 7%, battery_min: 7% 2026-08-15 01:35:03.137635: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 01:35:03.138057: Inverter 0 SoC: 1.44kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4481W, current battery voltage 51.2V, grid power -5464W, load power 468W, PV Power 0W 2026-08-15 01:35:03.138312: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:35:03.138482: Inverter 0 scheduled charge enable is False 2026-08-15 01:35:03.138536: Inverter 0 charge windows currently [] 2026-08-15 01:35:03.138665: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 01:35:03.138902: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:35:03.138956: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:35:03.139004: Inverter 0 scheduled discharge enable is False 2026-08-15 01:35:03.139943: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:35:03.140006: Inverter 0 discharge windows currently [] 2026-08-15 01:35:03.140055: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:35:03.140098: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:35:03.140140: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:35:03.246900: Dynamic load last period 1.20kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 01:35:03.247032: Plan was last updated on 2026-08-15 01:30:00+01:00 and is now 5.0 minutes old 2026-08-15 01:35:03.247387: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 01:35:03.247441: Best export window [ ] 2026-08-15 01:35:03.248669: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 01:35:03.253945: Load divergence over 8.0 hours mean 437.6W, min 269.4W, max 1041.6W, std dev 98.02W, divergence 11.2% 2026-08-15 01:35:03.321503: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 01:35:03.321638: LoadML is_calculating True 2026-08-15 01:35:03.321665: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-15 01:35:03.401745: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 849.5p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 29.77kWh, PV 0.0kWh 2026-08-15 01:35:03.629814: Battery has 0.17 hours left - now at 1.44kWh 2026-08-15 01:35:03.748080: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 882.88p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 31.09kWh, PV 0.0kWh 2026-08-15 01:35:03.894588: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 711.57p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 31.09kWh, PV 0.0kWh 2026-08-15 01:35:04.035332: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 679.84p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:45:00, load 29.77kWh, PV 0.0kWh 2026-08-15 01:35:04.035623: Saving plan best values to HA entities 2026-08-15 01:35:04.455883: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-15 01:35:04.463373: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 01:35:04.470149: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.21kWh, house 8.81kWh, export 0.0kWh, metric 679.84p, metric10 711.57p 2026-08-15 01:35:04.589789: Marginal costs baseline metric (no standing charge): 629.8608 2026-08-15 01:35:05.049212: Marginal energy costs matrix computed: min=14.99 max=26.15 2026-08-15 01:35:05.218138: Rate array import [{'start': 95, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2135, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 95, 'end': 2135, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 01:35:05.219129: - Your estimated bill for today is £6.04 and tomorrow is £5.49 2026-08-15 01:35:05.219264: - Import rates are expensive (24.6p - 27.6p) for the next 5 and a half hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 01:35:05.219351: - The battery is currently at 9% and is in eco mode for the next 9 hours. 2026-08-15 01:35:05.219439: - For the next 48 hours there will be no solar generation. 2026-08-15 01:35:05.219510: - You will run out of battery in 10 minutes. 2026-08-15 01:35:05.219593: - Your next charge slot will be in 9 hours where import rates will be cheap (15.5p). 2026-08-15 01:35:05.219674: 2026-08-15 01:35:05.291520: Plan calculation took 2.04 seconds 2026-08-15 01:35:05.294748: No high rate period found 2026-08-15 01:35:05.385700: Import threshold used for optimisation was 22.73p 2026-08-15 01:35:05.467686: Low import rate windows [0: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 1: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 2: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 3: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 4: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 5: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 6: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 7: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 8: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 9: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 10: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 11: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 12: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 13: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 14: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 15: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 16: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 17: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 18: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 19: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 20: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 21: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 22: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 23: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 24: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 25: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 26: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 27: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 28: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 29: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 30: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 31: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 32: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 33: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 34: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 35: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 36: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 37: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 38: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 39: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 40: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 41: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 42: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 43: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 44: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 45: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 46: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 47: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 48: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 49: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 50: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 51: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 52: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 53: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 54: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 55: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 56: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 57: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 58: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 59: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 60: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 61: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 62: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 63: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 64: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 65: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 66: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 67: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 68: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 69: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 70: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 71: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 72: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 73: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 74: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 75: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 76: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 77: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 78: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 79: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 80: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 81: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 82: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 83: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 84: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 85: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 86: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 87: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 88: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 89: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 90: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 91: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 92: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 93: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57, 94: 08-17 01:30:00 - 08-17 02:00:00 @ 26.5] 2026-08-15 01:35:05.477432: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-15 01:35:05.477569: Inverter 0 disabled charge window while waiting for schedule (now 08-15 01:35:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 01:35:05.477637: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:35:05.477845: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:35:05.477925: No export window planned 2026-08-15 01:35:05.478031: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 01:35:05.478067: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:35:05.478199: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:35:05.478348: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 01:35:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 01:35:05.478399: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 01:35:05.478531: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 01:35:05.478698: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:35:05.478804: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:35:05.478892: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:35:05.478961: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:35:05.479042: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:35:05.479087: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:35:05.479185: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:35:05.479295: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:35:05.479344: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:35:05.479432: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:35:05.479475: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:35:05.479559: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:35:05.479601: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:35:05.479684: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:35:05.479722: Inverter 0 count register writes 0 2026-08-15 01:35:05.500854: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-15 01:35:05.508360: Total inverter register writes now 815 2026-08-15 01:35:05.572307: Info: Completed run status Demand 2026-08-15 01:35:05.586342: Info: record_status Demand 2026-08-15 01:35:05.597766: Saved current settings to /config/predbat_config.json 2026-08-15 01:35:05.597995: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 01:35:15.166541: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0061 val_mae=0.0024 kWh val_bias=-0.0002 kWh (-0.3%) combined=0.0013 kWh ema_combined=0.0014 kWh 2026-08-15 01:35:37.092005: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0055 val_mae=0.0026 kWh val_bias=-0.0003 kWh (-0.5%) combined=0.0014 kWh ema_combined=0.0014 kWh 2026-08-15 01:35:41.759508: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:35:41.763750: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:35:41.769185: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:35:41.770571: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:35:41.774160: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:35:41.775250: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:35:41.776351: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:35:59.053694: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0056 val_mae=0.0024 kWh val_bias=+0.0006 kWh (+0.9%) combined=0.0017 kWh ema_combined=0.0015 kWh 2026-08-15 01:36:20.048055: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0054 val_mae=0.0022 kWh val_bias=-0.0003 kWh (-0.4%) combined=0.0012 kWh ema_combined=0.0014 kWh 2026-08-15 01:36:38.212970: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0056 val_mae=0.0023 kWh val_bias=+0.0000 kWh (+0.0%) combined=0.0013 kWh ema_combined=0.0014 kWh 2026-08-15 01:36:56.541212: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0054 val_mae=0.0025 kWh val_bias=-0.0007 kWh (-1.0%) combined=0.0014 kWh ema_combined=0.0014 kWh 2026-08-15 01:36:56.542277: ML Predictor: Restored best weights from epoch with val_mae=0.0023 kWh val_bias=+0.0000 kWh (+0.0%) 2026-08-15 01:36:56.544495: ML Predictor: Training complete, final val_mae=0.0023 kWh val_bias=+0.0000 kWh (+0.0%) 2026-08-15 01:36:57.888076: ML Predictor: AR rollout over holdout: ar_mae=0.0024 kWh ar_bias=+0.0000 kWh (+0.0%) [drift vs teacher-forced: +0.0001 kWh] 2026-08-15 01:36:57.893676: ML Predictor: Curriculum pass 3/5 complete, val_mae=0.0023 kWh 2026-08-15 01:36:57.981177: ML Predictor: Curriculum pass 4/5: window=56.0 days (1344 hours of data) 2026-08-15 01:36:57.981544: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-15 01:36:58.662816: ML Predictor: Creating dataset with 1344 hours of training data, 48 hours validation 2026-08-15 01:37:03.669418: ML Predictor: Created 15840 training samples, 576 validation samples 2026-08-15 01:37:03.724395: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0474) load(mean=0.0589 std=0.0475) pv(mean=0.0000 std=0.0100) temp(mean=19.5204 std=4.4281) import_rate(mean=25.5113 std=2.4718) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1905 std=0.5239) 2026-08-15 01:37:03.814701: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-15 01:37:03.831211: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-15 01:37:04.004397: ML Predictor: Baseline (pre-finetune) val_mae=0.0147 kWh val_bias=-0.0030 kWh 2026-08-15 01:37:22.860356: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0142 val_mae=0.0090 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0049 kWh ema_combined=0.0049 kWh 2026-08-15 01:37:41.571129: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0125 val_mae=0.0087 kWh val_bias=-0.0022 kWh (-2.5%) combined=0.0061 kWh ema_combined=0.0053 kWh 2026-08-15 01:37:41.802363: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:37:41.802673: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:37:41.802750: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:37:41.802936: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:37:41.802992: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:37:41.803031: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:37:41.803074: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:38:00.126173: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0164 val_mae=0.0075 kWh val_bias=-0.0004 kWh (-0.4%) combined=0.0041 kWh ema_combined=0.0049 kWh 2026-08-15 01:38:18.934385: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0186 val_mae=0.0085 kWh val_bias=-0.0006 kWh (-0.7%) combined=0.0048 kWh ema_combined=0.0049 kWh 2026-08-15 01:38:37.566806: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0144 val_mae=0.0078 kWh val_bias=-0.0018 kWh (-2.0%) combined=0.0047 kWh ema_combined=0.0048 kWh 2026-08-15 01:38:55.586501: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0164 val_mae=0.0083 kWh val_bias=+0.0004 kWh (+0.4%) combined=0.0044 kWh ema_combined=0.0047 kWh 2026-08-15 01:39:15.252013: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0128 val_mae=0.0074 kWh val_bias=-0.0006 kWh (-0.6%) combined=0.0043 kWh ema_combined=0.0046 kWh 2026-08-15 01:39:33.888677: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0156 val_mae=0.0075 kWh val_bias=-0.0015 kWh (-1.7%) combined=0.0040 kWh ema_combined=0.0044 kWh 2026-08-15 01:39:42.240903: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:39:42.241412: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:39:42.241613: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:39:42.241929: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:39:42.242084: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:39:42.242197: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:39:42.242310: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:39:54.704416: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0129 val_mae=0.0071 kWh val_bias=-0.0008 kWh (-0.9%) combined=0.0038 kWh ema_combined=0.0042 kWh 2026-08-15 01:40:00.524407: --------------- PredBat - update at 2026-08-15 01:40:00+01:00 with clock skew 0 minutes, minutes now 100 2026-08-15 01:40:00.525731: Saved current settings to /config/predbat_config.json 2026-08-15 01:40:00.525960: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 100.0 minutes 2026-08-15 01:40:00.526112: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 01:40:00.526847: Autoupdate: Currently up to date 2026-08-15 01:40:00.641839: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 01:40:00.641974: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 01:40:00.642132: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 01:40:00.642620: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 01:40:00.642752: Predbat mode is set to Control charge & discharge 2026-08-15 01:40:00.999107: Found 21602 load_today datapoints going back 28 days 2026-08-15 01:40:00.999400: Using load_power data to fill gaps in load_today data 2026-08-15 01:40:02.244541: Processing 721 30-minute periods for power integration 2026-08-15 01:40:02.544227: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 01:40:02.544660: Car charging hold False, threshold 6.0kWh 2026-08-15 01:40:02.544798: Current data so far today: load 2.25kWh, import 2.2kWh, export 0.0kWh, PV 0kWh 2026-08-15 01:40:02.563230: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 01:40:02.564054: Standing charge is set to 49.98p 2026-08-15 01:40:02.604104: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 01:40:02.604216: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 01:40:02.605890: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 100.0 minutes 2026-08-15 01:40:02.606428: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 99.7 minutes 2026-08-15 01:40:02.615044: Loaded 47 datapoints of futurerate analysis 2026-08-15 01:40:02.775426: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 01:40:02.873368: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 01:40:02.874219: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 01:40:02.944703: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 01:40:02.945119: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 01:40:02.946951: High export rate found rates in range 99p to -99p 2026-08-15 01:40:03.038471: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 01:40:03.038790: Car 0 charging is not planned as it is not plugged in 2026-08-15 01:40:03.055812: Battery level now 1.44kWh, -1hr ago 1.68kWh, at midnight 1.66kWh, battery value change in the last hour -2.84p, change today -2.55p, rate_forward 11.83p 2026-08-15 01:40:03.056181: Last hour: net energy 0.9kWh, import 0.9kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 24.59p, import 24.59p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 01:40:03.160557: Today's energy total net 2.2kWh, import 2.2kWh, export 0.0kWh, cost 111.32p, import 61.33p, export 0.0p, carbon 0.0kg 2026-08-15 01:40:03.160736: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 01:40:03.283477: Using weighted-bucket historical load forecast over 14 days 2026-08-15 01:40:03.329822: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 01:40:03.329925: Today's predicted so far 1.37kWh with 0.0kWh car/iBoost excluded, 0.78kWh import ignored, and 1.37kWh forecast extra. 2026-08-15 01:40:03.341602: Today's actual load so far 2.33kWh with 0.0kWh car/iBoost excluded, and 0.78kWh import ignored. 2026-08-15 01:40:03.412281: Inverter 0: Type SK Sunsynk 2026-08-15 01:40:03.412371: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 01:40:03.412661: Reserve min: 7%, battery_min: 7% 2026-08-15 01:40:03.412785: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 01:40:03.413203: Inverter 0 SoC: 1.43kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4482W, current battery voltage 51.2V, grid power -5479W, load power 484W, PV Power 0W 2026-08-15 01:40:03.413464: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:40:03.413651: Inverter 0 scheduled charge enable is False 2026-08-15 01:40:03.413704: Inverter 0 charge windows currently [] 2026-08-15 01:40:03.413777: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 01:40:03.414028: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:40:03.414108: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:40:03.414200: Inverter 0 scheduled discharge enable is False 2026-08-15 01:40:03.414438: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:40:03.414519: Inverter 0 discharge windows currently [] 2026-08-15 01:40:03.414560: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:40:03.414637: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:40:03.414688: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:40:03.508131: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 01:40:03.508330: Plan was last updated on 2026-08-15 01:30:00+01:00 and is now 10.0 minutes old 2026-08-15 01:40:03.508828: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 01:40:03.508925: Best export window [ ] 2026-08-15 01:40:03.510304: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 01:40:03.515018: Load divergence over 8.0 hours mean 437.62W, min 268.2W, max 1026.0W, std dev 97.6W, divergence 11.15% 2026-08-15 01:40:03.545821: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 01:40:03.546033: LoadML is_calculating True 2026-08-15 01:40:03.546159: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-15 01:40:03.607262: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 855.04p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 30.06kWh, PV 0.0kWh 2026-08-15 01:40:03.777262: Battery has 0.17 hours left - now at 1.43kWh 2026-08-15 01:40:03.836609: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 888.41p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 31.38kWh, PV 0.0kWh 2026-08-15 01:40:03.976526: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 722.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 31.38kWh, PV 0.0kWh 2026-08-15 01:40:04.143924: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 691.51p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 30.06kWh, PV 0.0kWh 2026-08-15 01:40:04.144101: Saving plan best values to HA entities 2026-08-15 01:40:04.539026: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-15 01:40:04.547682: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 01:40:04.592565: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.72kWh, house 8.76kWh, export 0.0kWh, metric 691.51p, metric10 722.25p 2026-08-15 01:40:04.822103: Marginal costs baseline metric (no standing charge): 641.5275 2026-08-15 01:40:05.271993: Marginal energy costs matrix computed: min=14.83 max=26.26 2026-08-15 01:40:05.465610: Rate array import [{'start': 100, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2140, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 100, 'end': 2140, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 01:40:05.466808: - Your estimated bill for today is £6.07 and tomorrow is £5.51 2026-08-15 01:40:05.466972: - Import rates are expensive (24.6p - 27.6p) for the next 5 and a quarter hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 01:40:05.467106: - The battery is currently at 9% and is in eco mode for the next 9 hours. 2026-08-15 01:40:05.467230: - For the next 48 hours there will be no solar generation. 2026-08-15 01:40:05.467350: - You will run out of battery in 10 minutes. 2026-08-15 01:40:05.467470: - Your next charge slot will be in 9 hours where import rates will be cheap (15.5p). 2026-08-15 01:40:05.467621: 2026-08-15 01:40:05.545461: Plan calculation took 2.04 seconds 2026-08-15 01:40:05.548070: No high rate period found 2026-08-15 01:40:05.647041: Import threshold used for optimisation was 22.73p 2026-08-15 01:40:05.750783: Low import rate windows [0: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 1: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 2: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 3: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 4: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 5: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 6: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 7: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 8: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 9: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 10: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 11: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 12: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 13: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 14: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 15: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 16: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 17: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 18: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 19: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 20: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 21: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 22: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 23: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 24: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 25: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 26: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 27: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 28: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 29: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 30: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 31: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 32: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 33: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 34: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 35: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 36: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 37: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 38: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 39: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 40: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 41: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 42: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 43: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 44: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 45: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 46: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 47: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 48: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 49: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 50: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 51: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 52: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 53: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 54: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 55: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 56: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 57: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 58: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 59: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 60: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 61: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 62: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 63: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 64: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 65: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 66: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 67: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 68: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 69: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 70: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 71: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 72: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 73: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 74: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 75: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 76: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 77: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 78: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 79: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 80: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 81: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 82: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 83: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 84: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 85: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 86: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 87: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 88: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 89: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 90: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 91: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 92: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 93: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57, 94: 08-17 01:30:00 - 08-17 02:00:00 @ 26.5] 2026-08-15 01:40:05.774594: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-15 01:40:05.774889: Inverter 0 disabled charge window while waiting for schedule (now 08-15 01:40:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 01:40:05.775027: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:40:05.775298: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:40:05.775442: No export window planned 2026-08-15 01:40:05.775630: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 01:40:05.775700: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:40:05.775908: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:40:05.776161: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 01:40:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 01:40:05.776305: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 01:40:05.776461: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 01:40:05.776659: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:40:05.776802: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:40:05.776935: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:40:05.777093: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:40:05.777222: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:40:05.777351: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:40:05.777478: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:40:05.777660: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:40:05.777794: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:40:05.777922: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:40:05.778046: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:40:05.778171: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:40:05.778295: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:40:05.778420: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:40:05.778534: Inverter 0 count register writes 0 2026-08-15 01:40:05.818635: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-15 01:40:05.818977: Recompute is saving previous plan... 2026-08-15 01:40:05.822699: Best charge window [ 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 0%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 0%, 17-08 01:00:00 - 17-08 01:30:00 @ 27.57p 0%, 17-08 01:30:00 - 17-08 02:00:00 @ 26.5p 0% ] 2026-08-15 01:40:05.822783: Best export window [ ] 2026-08-15 01:40:05.823934: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 01:40:05.827696: Load divergence over 8.0 hours mean 437.62W, min 268.2W, max 1026.0W, std dev 97.6W, divergence 11.15% 2026-08-15 01:40:05.873528: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 01:40:05.873743: LoadML is_calculating True 2026-08-15 01:40:05.873788: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-15 01:40:05.899315: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-15 01:40:05.900673: Optimise levels pass started at 2026-08-15 01:40:05 2026-08-15 01:40:05.900814: Optimise all windows, total charge 94 export 1 2026-08-15 01:40:12.905062: >> Region optimisation pass width 960 gives best_metric 790.88p, best_cost 798.48p, best_cycle 47.71kWh, best_import 41.03kWh 2026-08-15 01:40:14.124264: >> Region optimisation pass width 480 gives best_metric 790.88p, best_cost 798.48p, best_cycle 47.71kWh, best_import 41.03kWh 2026-08-15 01:40:15.368669: >> Region optimisation pass width 240 gives best_metric 790.88p, best_cost 798.48p, best_cycle 47.71kWh, best_import 41.03kWh 2026-08-15 01:40:18.914442: >> Region optimisation pass width 120 gives best_metric 790.88p, best_cost 798.48p, best_cycle 47.71kWh, best_import 41.03kWh 2026-08-15 01:40:18.915188: Calculated end_record as 08-16 11:30:00 based on best_price 16.34p, next_charge_start 08-15 11:30:00, max_windows 67 2026-08-15 01:40:18.915768: Optimise levels pass ended at 2026-08-15 01:40:18, duration 13.0 seconds tried 327 combinations 2026-08-15 01:40:18.918763: Set best_price_charge_level 17.6p, best_price_export_level 0p, best_price_charge 16.34p, best_cost_export 0p, best_metric 790.88p, best_keep 0kWh, best_cycle 47.71kWh, best_carbon 0kg, best_import 41.03kWh 2026-08-15 01:40:18.945121: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 16.34p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-15 01:40:40.935985: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0121 val_mae=0.0075 kWh val_bias=-0.0022 kWh (-2.5%) combined=0.0046 kWh ema_combined=0.0043 kWh 2026-08-15 01:40:43.907161: Tweak plan optimisation started metric 617.3p, cost 625.64p 2026-08-15 01:40:44.506591: Tweak optimisation finished metric 617.3p, cost 625.64p, metric_keep 0kWh, cycle 30.84kWh, carbon 0kg, import 29.5kWh, changed 8 window(s) 2026-08-15 01:40:44.550925: Swap charge optimisation started metric 617.3p, cost 625.64p, min_improvement_swap 0.1p 2026-08-15 01:40:56.577448: Swap charge optimisation finished metric 617.3p, cost 625.64p 2026-08-15 01:40:56.879722: Pruned 2 dead plan slot(s) in 11 trial(s), nominal metric 612.4p -> 612.41p, plan now metric 617.32p, cost 625.65p, cycle 30.08kWh, import 29.45kWh 2026-08-15 01:40:56.895900: Raw charge windows [ 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 100%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 100%, 17-08 01:00:00 - 17-08 01:30:00 @ 27.57p 100%, 17-08 01:30:00 - 17-08 02:00:00 @ 26.5p 100% ] reserve 1.12 2026-08-15 01:40:56.896698: Unclipped charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 02:00:00 @ 27.14p 100% ] reserve 1.12 2026-08-15 01:40:56.897028: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 02:00:00 @ 27.14p 100% ] reserve 1.12 2026-08-15 01:40:56.897270: Filtered charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 02:00:00 @ 27.14p 100% ] reserve 1.12 2026-08-15 01:40:56.940584: Previous plan best metric is 617.32 (cost 625.65) and new plan best metric is 617.3 (cost 625.64) 2026-08-15 01:40:56.941128: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-15 01:40:56.941323: Plan valid is now true after recompute was False 2026-08-15 01:40:56.969570: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 852.05p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 29.87kWh, PV 0.0kWh 2026-08-15 01:40:57.300211: Battery has 0.17 hours left - now at 1.43kWh 2026-08-15 01:40:57.429125: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 885.27p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 31.18kWh, PV 0.0kWh 2026-08-15 01:40:57.599310: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 708.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 31.18kWh, PV 0.0kWh 2026-08-15 01:40:57.807584: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 675.64p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 01:50:00, load 29.87kWh, PV 0.0kWh 2026-08-15 01:40:57.807698: Saving plan best values to HA entities 2026-08-15 01:40:58.222378: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-15 01:40:58.232013: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 01:40:58.244168: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 20.69kWh, house 8.76kWh, export 0.0kWh, metric 675.64p, metric10 708.38p 2026-08-15 01:40:58.392404: Marginal costs baseline metric (no standing charge): 625.6537 2026-08-15 01:40:58.869100: Marginal energy costs matrix computed: min=14.83 max=26.26 2026-08-15 01:40:59.015886: Rate array import [{'start': 100, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2130, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 100, 'end': 2130, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 01:40:59.017106: - Your estimated bill for today is £6.07 and tomorrow is £5.51 2026-08-15 01:40:59.017178: - Import rates are expensive (24.6p - 27.6p) for the next 5 and a quarter hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 01:40:59.017208: - The battery is currently at 9% and is in eco mode for the next 9 hours. 2026-08-15 01:40:59.017325: - For the next 48 hours there will be no solar generation. 2026-08-15 01:40:59.017373: - You will run out of battery in 10 minutes. 2026-08-15 01:40:59.017461: - Your next charge slot will be in 9 hours where import rates will be cheap (15.5p). 2026-08-15 01:40:59.017556: 2026-08-15 01:40:59.103722: Plan calculation took 53.28 seconds 2026-08-15 01:40:59.103996: Inverter 0: Type SK Sunsynk 2026-08-15 01:40:59.104039: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 01:40:59.104246: Reserve min: 7%, battery_min: 7% 2026-08-15 01:40:59.104464: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 01:40:59.104926: Inverter 0 SoC: 1.74kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power -4486W, current battery voltage 51.2V, grid power -5447W, load power 450W, PV Power 0W 2026-08-15 01:40:59.105297: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:40:59.106967: Inverter 0 scheduled charge enable is False 2026-08-15 01:40:59.107041: Inverter 0 charge windows currently [] 2026-08-15 01:40:59.107085: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 01:40:59.113108: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:40:59.125157: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:40:59.125372: Inverter 0 scheduled discharge enable is False 2026-08-15 01:40:59.125766: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:40:59.125833: Inverter 0 discharge windows currently [] 2026-08-15 01:40:59.125953: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:40:59.125999: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:40:59.126066: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:40:59.275353: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-15 01:40:59.275526: Inverter 0 disabled charge window while waiting for schedule (now 08-15 01:40:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 01:40:59.275604: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:40:59.275954: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:40:59.276106: No export window planned 2026-08-15 01:40:59.276353: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 01:40:59.276511: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:40:59.276814: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:40:59.277194: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 01:40:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 01:40:59.277354: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 01:40:59.277527: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 01:40:59.277746: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:40:59.277951: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:40:59.278099: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:40:59.278254: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:40:59.278389: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:40:59.278532: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:40:59.278692: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:40:59.278916: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:40:59.279068: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:40:59.279217: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:40:59.279339: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:40:59.279510: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:40:59.279674: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:40:59.279804: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:40:59.279935: Inverter 0 count register writes 0 2026-08-15 01:40:59.319923: Total inverter register writes now 815 2026-08-15 01:40:59.374947: Info: Completed run status Demand 2026-08-15 01:40:59.385504: Info: record_status Demand 2026-08-15 01:40:59.398405: Saved current settings to /config/predbat_config.json 2026-08-15 01:40:59.398797: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 01:41:14.535852: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0126 val_mae=0.0074 kWh val_bias=-0.0036 kWh (-4.1%) combined=0.0053 kWh ema_combined=0.0046 kWh 2026-08-15 01:41:35.756038: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0106 val_mae=0.0063 kWh val_bias=+0.0008 kWh (+0.9%) combined=0.0035 kWh ema_combined=0.0043 kWh 2026-08-15 01:41:41.593645: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:41:41.594035: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:41:41.594195: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:41:41.594490: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:41:41.594554: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:41:41.594653: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:41:41.594810: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:41:57.323866: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0107 val_mae=0.0059 kWh val_bias=-0.0008 kWh (-0.9%) combined=0.0030 kWh ema_combined=0.0039 kWh 2026-08-15 01:42:15.710310: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0100 val_mae=0.0059 kWh val_bias=-0.0021 kWh (-2.4%) combined=0.0042 kWh ema_combined=0.0040 kWh 2026-08-15 01:42:38.590911: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0097 val_mae=0.0061 kWh val_bias=-0.0020 kWh (-2.2%) combined=0.0039 kWh ema_combined=0.0039 kWh 2026-08-15 01:42:58.334473: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0094 val_mae=0.0057 kWh val_bias=+0.0002 kWh (+0.2%) combined=0.0029 kWh ema_combined=0.0036 kWh 2026-08-15 01:43:18.416802: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0079 val_mae=0.0053 kWh val_bias=-0.0016 kWh (-1.8%) combined=0.0031 kWh ema_combined=0.0035 kWh 2026-08-15 01:43:38.528011: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0082 val_mae=0.0052 kWh val_bias=+0.0010 kWh (+1.1%) combined=0.0037 kWh ema_combined=0.0035 kWh 2026-08-15 01:43:42.137721: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:43:42.138033: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:43:42.138089: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:43:42.138274: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:43:42.138333: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:43:42.138373: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:43:42.138406: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:43:59.490776: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0078 val_mae=0.0061 kWh val_bias=-0.0030 kWh (-3.4%) combined=0.0039 kWh ema_combined=0.0036 kWh 2026-08-15 01:44:18.657058: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0081 val_mae=0.0048 kWh val_bias=-0.0011 kWh (-1.3%) combined=0.0025 kWh ema_combined=0.0033 kWh 2026-08-15 01:44:36.404637: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0080 val_mae=0.0047 kWh val_bias=-0.0007 kWh (-0.8%) combined=0.0024 kWh ema_combined=0.0030 kWh 2026-08-15 01:44:55.653215: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0068 val_mae=0.0040 kWh val_bias=-0.0003 kWh (-0.3%) combined=0.0022 kWh ema_combined=0.0028 kWh 2026-08-15 01:45:00.566310: --------------- PredBat - update at 2026-08-15 01:45:00+01:00 with clock skew 0 minutes, minutes now 105 2026-08-15 01:45:00.567210: Saved current settings to /config/predbat_config.json 2026-08-15 01:45:00.567409: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 105.0 minutes 2026-08-15 01:45:00.567553: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 01:45:00.567698: Autoupdate: Currently up to date 2026-08-15 01:45:00.587135: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 01:45:00.587348: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 01:45:00.587599: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 01:45:00.588261: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 01:45:00.588411: Predbat mode is set to Control charge & discharge 2026-08-15 01:45:00.924387: Found 21602 load_today datapoints going back 28 days 2026-08-15 01:45:00.924664: Using load_power data to fill gaps in load_today data 2026-08-15 01:45:02.163637: Processing 721 30-minute periods for power integration 2026-08-15 01:45:02.360759: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 01:45:02.362034: Car charging hold False, threshold 6.0kWh 2026-08-15 01:45:02.362092: Current data so far today: load 2.4kWh, import 2.2kWh, export 0.0kWh, PV 0kWh 2026-08-15 01:45:02.407638: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 01:45:02.408157: Standing charge is set to 49.98p 2026-08-15 01:45:02.530440: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 01:45:02.530610: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 01:45:02.530878: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 105.0 minutes 2026-08-15 01:45:02.531481: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 104.7 minutes 2026-08-15 01:45:02.535801: Loaded 47 datapoints of futurerate analysis 2026-08-15 01:45:02.689543: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 01:45:02.761304: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 01:45:02.762528: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 01:45:02.828244: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 01:45:02.829096: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 01:45:02.830595: High export rate found rates in range 99p to -99p 2026-08-15 01:45:03.077097: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 01:45:03.077301: Car 0 charging is not planned as it is not plugged in 2026-08-15 01:45:03.093142: Battery level now 1.43kWh, -1hr ago 1.54kWh, at midnight 1.66kWh, battery value change in the last hour -1.23p, change today -2.65p, rate_forward 11.83p 2026-08-15 01:45:03.094139: Last hour: net energy 0.8kWh, import 0.8kWh, export 0.0kWh, car 0kWh, load 1.3kWh, net cost 21.88p, import 21.88p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 01:45:03.187819: Today's energy total net 2.2kWh, import 2.2kWh, export 0.0kWh, cost 111.32p, import 61.33p, export 0.0p, carbon 0.0kg 2026-08-15 01:45:03.187978: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 01:45:03.388327: Using weighted-bucket historical load forecast over 14 days 2026-08-15 01:45:03.467988: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 01:45:03.468765: Today's predicted so far 1.41kWh with 0.0kWh car/iBoost excluded, 0.8kWh import ignored, and 1.41kWh forecast extra. 2026-08-15 01:45:03.468803: Today's actual load so far 2.41kWh with 0.0kWh car/iBoost excluded, and 0.8kWh import ignored. 2026-08-15 01:45:03.517983: Inverter 0: Type SK Sunsynk 2026-08-15 01:45:03.518088: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 01:45:03.518281: Reserve min: 7%, battery_min: 7% 2026-08-15 01:45:03.518430: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 01:45:03.518845: Inverter 0 SoC: 1.74kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 528W, current battery voltage 51.2V, grid power -54W, load power 581W, PV Power 0W 2026-08-15 01:45:03.519180: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:45:03.533059: Inverter 0 scheduled charge enable is False 2026-08-15 01:45:03.533171: Inverter 0 charge windows currently [] 2026-08-15 01:45:03.533211: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 01:45:03.533410: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:45:03.533452: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:45:03.533494: Inverter 0 scheduled discharge enable is False 2026-08-15 01:45:03.533674: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:45:03.533718: Inverter 0 discharge windows currently [] 2026-08-15 01:45:03.533744: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:45:03.533770: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:45:03.533788: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:45:03.660497: Dynamic load last period 1.80kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 01:45:03.660755: Plan was last updated on 2026-08-15 01:40:00+01:00 and is now 5.0 minutes old 2026-08-15 01:45:03.661173: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 01:45:03.661323: Best export window [ ] 2026-08-15 01:45:03.662291: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 01:45:03.665554: Load divergence over 8.0 hours mean 437.64W, min 226.2W, max 892.2W, std dev 96.93W, divergence 11.07% 2026-08-15 01:45:03.701227: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 01:45:03.717053: LoadML is_calculating True 2026-08-15 01:45:03.717145: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-15 01:45:03.762480: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 843.69p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:15:00, load 30.02kWh, PV 0.0kWh 2026-08-15 01:45:03.908536: Battery has 0.5 hours left - now at 1.74kWh 2026-08-15 01:45:04.037651: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 876.85p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:15:00, load 31.34kWh, PV 0.0kWh 2026-08-15 01:45:04.212828: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 705.13p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:15:00, load 31.34kWh, PV 0.0kWh 2026-08-15 01:45:04.398247: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 673.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:15:00, load 30.02kWh, PV 0.0kWh 2026-08-15 01:45:04.398527: Saving plan best values to HA entities 2026-08-15 01:45:04.749869: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 01:45:04.758964: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 01:45:04.769523: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.21kWh, house 8.37kWh, export 0.0kWh, metric 673.42p, metric10 705.13p 2026-08-15 01:45:04.949695: Marginal costs baseline metric (no standing charge): 623.4365 2026-08-15 01:45:05.343525: Marginal energy costs matrix computed: min=14.66 max=26.36 2026-08-15 01:45:05.520185: Rate array import [{'start': 105, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2135, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 105, 'end': 2135, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 01:45:05.521297: - Your estimated bill for today is £5.96 and tomorrow is £5.53 2026-08-15 01:45:05.521463: - Import rates are expensive (24.6p - 27.6p) for the next 5 and a quarter hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 01:45:05.521603: - The battery is currently at 11% and is in eco mode for the next 9 hours. 2026-08-15 01:45:05.521705: - For the next 48 hours there will be no solar generation. 2026-08-15 01:45:05.521797: - You will run out of battery in 30 minutes. 2026-08-15 01:45:05.521887: - Your next charge slot will be in 9 hours where import rates will be cheap (15.5p). 2026-08-15 01:45:05.521981: 2026-08-15 01:45:05.605546: Plan calculation took 1.94 seconds 2026-08-15 01:45:05.612875: No high rate period found 2026-08-15 01:45:05.731416: Import threshold used for optimisation was 22.73p 2026-08-15 01:45:05.829210: Low import rate windows [0: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 1: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 2: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 3: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 4: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 5: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 6: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 7: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 8: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 9: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 10: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 11: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 12: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 13: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 14: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 15: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 16: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 17: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 18: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 19: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 20: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 21: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 22: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 23: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 24: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 25: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 26: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 27: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 28: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 29: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 30: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 31: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 32: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 33: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 34: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 35: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 36: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 37: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 38: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 39: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 40: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 41: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 42: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 43: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 44: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 45: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 46: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 47: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 48: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 49: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 50: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 51: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 52: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 53: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 54: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 55: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 56: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 57: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 58: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 59: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 60: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 61: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 62: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 63: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 64: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 65: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 66: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 67: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 68: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 69: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 70: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 71: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 72: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 73: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 74: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 75: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 76: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 77: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 78: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 79: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 80: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 81: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 82: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 83: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 84: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 85: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 86: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 87: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 88: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 89: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 90: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 91: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 92: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 93: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57, 94: 08-17 01:30:00 - 08-17 02:00:00 @ 26.5] 2026-08-15 01:45:05.838373: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-15 01:45:05.838618: Inverter 0 disabled charge window while waiting for schedule (now 08-15 01:45:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 01:45:05.838754: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:45:05.839070: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:45:05.839193: No export window planned 2026-08-15 01:45:05.839420: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 01:45:05.839495: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:45:05.839721: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:45:05.839960: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 01:45:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 01:45:05.840053: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 01:45:05.840154: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 01:45:05.840281: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:45:05.840395: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:45:05.840440: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:45:05.840543: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:45:05.840637: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:45:05.840682: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:45:05.840763: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:45:05.840901: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:45:05.841059: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:45:05.841138: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:45:05.841211: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:45:05.841252: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:45:05.841346: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:45:05.841388: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:45:05.841454: Inverter 0 count register writes 0 2026-08-15 01:45:05.863489: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-15 01:45:05.875079: Total inverter register writes now 815 2026-08-15 01:45:05.947330: Info: Completed run status Demand 2026-08-15 01:45:05.966096: Info: record_status Demand 2026-08-15 01:45:05.984872: Saved current settings to /config/predbat_config.json 2026-08-15 01:45:05.985264: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 01:45:19.607439: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0071 val_mae=0.0043 kWh val_bias=-0.0004 kWh (-0.5%) combined=0.0022 kWh ema_combined=0.0026 kWh 2026-08-15 01:45:38.106705: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0069 val_mae=0.0045 kWh val_bias=-0.0014 kWh (-1.5%) combined=0.0029 kWh ema_combined=0.0027 kWh 2026-08-15 01:45:42.158425: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:45:42.158877: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:45:42.158938: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:45:42.159169: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:45:42.159331: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:45:42.159438: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:45:42.159586: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:45:57.007295: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0070 val_mae=0.0044 kWh val_bias=-0.0015 kWh (-1.7%) combined=0.0030 kWh ema_combined=0.0028 kWh 2026-08-15 01:46:15.327356: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0067 val_mae=0.0046 kWh val_bias=-0.0016 kWh (-1.8%) combined=0.0028 kWh ema_combined=0.0028 kWh 2026-08-15 01:46:34.359446: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0065 val_mae=0.0039 kWh val_bias=+0.0000 kWh (+0.0%) combined=0.0023 kWh ema_combined=0.0026 kWh 2026-08-15 01:46:53.751814: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0064 val_mae=0.0040 kWh val_bias=-0.0010 kWh (-1.1%) combined=0.0024 kWh ema_combined=0.0026 kWh 2026-08-15 01:47:12.529085: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0062 val_mae=0.0039 kWh val_bias=-0.0004 kWh (-0.5%) combined=0.0020 kWh ema_combined=0.0024 kWh 2026-08-15 01:47:31.910039: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0067 val_mae=0.0041 kWh val_bias=-0.0010 kWh (-1.1%) combined=0.0023 kWh ema_combined=0.0023 kWh 2026-08-15 01:47:31.915518: ML Predictor: Restored best weights from epoch with val_mae=0.0041 kWh val_bias=-0.0010 kWh (-1.1%) 2026-08-15 01:47:31.915815: ML Predictor: Training complete, final val_mae=0.0041 kWh val_bias=-0.0010 kWh (-1.1%) 2026-08-15 01:47:34.245774: ML Predictor: AR rollout over holdout: ar_mae=0.0047 kWh ar_bias=-0.0009 kWh (-1.0%) [drift vs teacher-forced: +0.0006 kWh] 2026-08-15 01:47:34.252640: ML Predictor: Curriculum pass 4/5 complete, val_mae=0.0041 kWh 2026-08-15 01:47:34.252899: ML Predictor: Curriculum final pass 5/5: full dataset (56.5 days) 2026-08-15 01:47:34.253091: ML Predictor: Starting fine-tune training with 30 epochs 2026-08-15 01:47:34.882748: ML Predictor: Creating dataset with 1356 hours of training data, 48 hours validation 2026-08-15 01:47:40.295270: ML Predictor: Created 15989 training samples, 576 validation samples 2026-08-15 01:47:40.355460: ML Predictor: Normalization stats [ema-update alpha=0.1] target(mean=0.0587 std=0.0474) load(mean=0.0590 std=0.0475) pv(mean=0.0000 std=0.0100) temp(mean=19.5431 std=4.4435) import_rate(mean=25.5203 std=2.4755) export_rate(mean=0.0000 std=1.0000) time(mean=-0.1910 std=0.5243) 2026-08-15 01:47:40.449817: ML Predictor: Applied EMA normalization update (alpha=0.1) to track feature drift 2026-08-15 01:47:40.467885: ML Predictor: Reset Adam optimiser state for fine-tuning 2026-08-15 01:47:40.576526: ML Predictor: Baseline (pre-finetune) val_mae=0.0155 kWh val_bias=-0.0047 kWh 2026-08-15 01:47:57.121199: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:47:57.121416: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:47:57.121454: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:47:57.121588: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:47:57.121625: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:47:57.121643: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:47:57.121657: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:47:59.132509: ML Predictor: Epoch 1/30: lr=0.00100 huber_loss=0.0146 val_mae=0.0093 kWh val_bias=-0.0002 kWh (-0.2%) combined=0.0055 kWh ema_combined=0.0055 kWh 2026-08-15 01:48:17.772850: ML Predictor: Epoch 2/30: lr=0.00100 huber_loss=0.0138 val_mae=0.0096 kWh val_bias=-0.0024 kWh (-2.5%) combined=0.0052 kWh ema_combined=0.0054 kWh 2026-08-15 01:48:38.619913: ML Predictor: Epoch 3/30: lr=0.00099 huber_loss=0.0140 val_mae=0.0086 kWh val_bias=-0.0033 kWh (-3.6%) combined=0.0063 kWh ema_combined=0.0057 kWh 2026-08-15 01:48:58.366933: ML Predictor: Epoch 4/30: lr=0.00098 huber_loss=0.0133 val_mae=0.0076 kWh val_bias=-0.0002 kWh (-0.2%) combined=0.0041 kWh ema_combined=0.0052 kWh 2026-08-15 01:49:16.240171: ML Predictor: Epoch 5/30: lr=0.00096 huber_loss=0.0123 val_mae=0.0083 kWh val_bias=-0.0001 kWh (-0.1%) combined=0.0043 kWh ema_combined=0.0049 kWh 2026-08-15 01:49:37.256517: ML Predictor: Epoch 6/30: lr=0.00094 huber_loss=0.0150 val_mae=0.0093 kWh val_bias=-0.0027 kWh (-2.9%) combined=0.0064 kWh ema_combined=0.0054 kWh 2026-08-15 01:49:54.567711: ML Predictor: Epoch 7/30: lr=0.00091 huber_loss=0.0153 val_mae=0.0093 kWh val_bias=-0.0047 kWh (-5.0%) combined=0.0065 kWh ema_combined=0.0057 kWh 2026-08-15 01:50:00.517083: --------------- PredBat - update at 2026-08-15 01:50:00+01:00 with clock skew 0 minutes, minutes now 110 2026-08-15 01:50:00.518112: Saved current settings to /config/predbat_config.json 2026-08-15 01:50:00.518358: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 110.0 minutes 2026-08-15 01:50:00.518537: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 01:50:00.518693: Autoupdate: Currently up to date 2026-08-15 01:50:00.579142: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 01:50:00.579947: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 01:50:00.580347: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 01:50:00.581255: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 01:50:00.583590: Predbat mode is set to Control charge & discharge 2026-08-15 01:50:01.006009: Found 21602 load_today datapoints going back 28 days 2026-08-15 01:50:01.006198: Using load_power data to fill gaps in load_today data 2026-08-15 01:50:02.499173: Processing 721 30-minute periods for power integration 2026-08-15 01:50:02.706513: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 01:50:02.706665: Car charging hold False, threshold 6.0kWh 2026-08-15 01:50:02.706711: Current data so far today: load 2.1kWh, import 2.9kWh, export 0.0kWh, PV 0kWh 2026-08-15 01:50:02.743795: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 01:50:02.744208: Standing charge is set to 49.98p 2026-08-15 01:50:02.867073: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 01:50:02.867334: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 01:50:02.867663: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 110.0 minutes 2026-08-15 01:50:02.868235: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 109.7 minutes 2026-08-15 01:50:02.871696: Loaded 47 datapoints of futurerate analysis 2026-08-15 01:50:02.962607: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 01:50:03.017241: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 01:50:03.017723: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 01:50:03.060640: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 01:50:03.061024: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 01:50:03.062282: High export rate found rates in range 99p to -99p 2026-08-15 01:50:03.141545: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 01:50:03.141956: Car 0 charging is not planned as it is not plugged in 2026-08-15 01:50:03.160519: Battery level now 1.74kWh, -1hr ago 1.42kWh, at midnight 1.66kWh, battery value change in the last hour 3.88p, change today 1.04p, rate_forward 11.83p 2026-08-15 01:50:03.160930: Last hour: net energy 1.4kWh, import 1.4kWh, export 0.0kWh, car 0kWh, load 0.95kWh, net cost 37.71p, import 37.71p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 01:50:03.282659: Today's energy total net 2.9kWh, import 2.9kWh, export 0.0kWh, cost 129.87p, import 79.89p, export 0.0p, carbon 0.0kg 2026-08-15 01:50:03.282979: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 01:50:03.436171: Using weighted-bucket historical load forecast over 14 days 2026-08-15 01:50:03.460573: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 01:50:03.460714: Today's predicted so far 1.46kWh with 0.0kWh car/iBoost excluded, 1.47kWh import ignored, and 1.46kWh forecast extra. 2026-08-15 01:50:03.460780: Today's actual load so far 2.09kWh with 0.0kWh car/iBoost excluded, and 1.47kWh import ignored. 2026-08-15 01:50:03.535049: Inverter 0: Type SK Sunsynk 2026-08-15 01:50:03.535317: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 01:50:03.535645: Reserve min: 7%, battery_min: 7% 2026-08-15 01:50:03.535795: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 01:50:03.536243: Inverter 0 SoC: 1.96kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 465W, current battery voltage 51.2V, grid power -51W, load power 527W, PV Power 0W 2026-08-15 01:50:03.536562: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:50:03.537009: Inverter 0 scheduled charge enable is False 2026-08-15 01:50:03.537079: Inverter 0 charge windows currently [] 2026-08-15 01:50:03.537362: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 01:50:03.537661: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:50:03.537718: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:50:03.538004: Inverter 0 scheduled discharge enable is False 2026-08-15 01:50:03.538339: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:50:03.538395: Inverter 0 discharge windows currently [] 2026-08-15 01:50:03.538506: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:50:03.538565: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:50:03.538638: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:50:03.665918: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 01:50:03.666058: Plan was last updated on 2026-08-15 01:40:00+01:00 and is now 10.0 minutes old 2026-08-15 01:50:03.666442: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 01:50:03.666497: Best export window [ ] 2026-08-15 01:50:03.667791: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 01:50:03.672563: Load divergence over 8.0 hours mean 437.51W, min 278.4W, max 766.8W, std dev 77.13W, divergence 8.81% 2026-08-15 01:50:03.717679: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 01:50:03.719944: LoadML is_calculating True 2026-08-15 01:50:03.720127: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-15 01:50:03.765872: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 856.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:30:00, load 29.73kWh, PV 0.0kWh 2026-08-15 01:50:03.912366: Battery has 0.67 hours left - now at 1.96kWh 2026-08-15 01:50:03.964007: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 889.54p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:30:00, load 31.04kWh, PV 0.0kWh 2026-08-15 01:50:04.122385: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 723.08p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:30:00, load 31.04kWh, PV 0.0kWh 2026-08-15 01:50:04.321574: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 692.34p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:30:00, load 29.73kWh, PV 0.0kWh 2026-08-15 01:50:04.321692: Saving plan best values to HA entities 2026-08-15 01:50:04.675490: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 01:50:04.698338: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 01:50:04.711403: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.73kWh, house 8.07kWh, export 0.0kWh, metric 692.34p, metric10 723.08p 2026-08-15 01:50:04.835909: Marginal costs baseline metric (no standing charge): 642.3583 2026-08-15 01:50:05.202037: Marginal energy costs matrix computed: min=14.5 max=26.46 2026-08-15 01:50:05.360318: Rate array import [{'start': 110, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2140, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 110, 'end': 2140, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 01:50:05.361204: - Your estimated bill for today is £6.07 and tomorrow is £5.54 2026-08-15 01:50:05.361261: - Import rates are expensive (24.6p - 27.6p) for the next 5 and a quarter hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 01:50:05.361292: - The battery is currently at 12% and is in eco mode for the next 9 hours. 2026-08-15 01:50:05.361318: - For the next 48 hours there will be no solar generation. 2026-08-15 01:50:05.361415: - You will run out of battery in 40 minutes. 2026-08-15 01:50:05.361510: - Your next charge slot will be in 9 hours where import rates will be cheap (15.5p). 2026-08-15 01:50:05.361569: 2026-08-15 01:50:05.444669: Plan calculation took 1.78 seconds 2026-08-15 01:50:05.448494: No high rate period found 2026-08-15 01:50:05.570285: Import threshold used for optimisation was 22.73p 2026-08-15 01:50:05.652249: Low import rate windows [0: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 1: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 2: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 3: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 4: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 5: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 6: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 7: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 8: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 9: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 10: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 11: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 12: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 13: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 14: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 15: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 16: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 17: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 18: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 19: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 20: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 21: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 22: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 23: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 24: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 25: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 26: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 27: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 28: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 29: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 30: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 31: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 32: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 33: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 34: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 35: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 36: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 37: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 38: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 39: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 40: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 41: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 42: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 43: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 44: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 45: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 46: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 47: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 48: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 49: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 50: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 51: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 52: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 53: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 54: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 55: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 56: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 57: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 58: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 59: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 60: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 61: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 62: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 63: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 64: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 65: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 66: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 67: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 68: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 69: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 70: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 71: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 72: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 73: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 74: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 75: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 76: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 77: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 78: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 79: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 80: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 81: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 82: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 83: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 84: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 85: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 86: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 87: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 88: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 89: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 90: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 91: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 92: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 93: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57, 94: 08-17 01:30:00 - 08-17 02:00:00 @ 26.5] 2026-08-15 01:50:05.666641: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-15 01:50:05.666951: Inverter 0 disabled charge window while waiting for schedule (now 08-15 01:50:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 01:50:05.667127: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:50:05.667421: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:50:05.681089: No export window planned 2026-08-15 01:50:05.681483: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 01:50:05.681578: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:50:05.681837: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:50:05.682090: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 01:50:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 01:50:05.682183: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 01:50:05.682280: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 01:50:05.682435: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:50:05.682514: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:50:05.682633: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:50:05.682700: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:50:05.682762: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:50:05.682803: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:50:05.682863: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:50:05.682966: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:50:05.683037: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:50:05.683082: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:50:05.683189: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:50:05.683231: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:50:05.683323: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:50:05.683358: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:50:05.683412: Inverter 0 count register writes 0 2026-08-15 01:50:05.711828: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-15 01:50:05.712118: Recompute is saving previous plan... 2026-08-15 01:50:05.715857: Best charge window [ 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 0%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 0%, 17-08 01:00:00 - 17-08 01:30:00 @ 27.57p 0%, 17-08 01:30:00 - 17-08 02:00:00 @ 26.5p 0% ] 2026-08-15 01:50:05.716576: Best export window [ ] 2026-08-15 01:50:05.717687: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 01:50:05.721602: Load divergence over 8.0 hours mean 437.51W, min 278.4W, max 766.8W, std dev 77.13W, divergence 8.81% 2026-08-15 01:50:05.777970: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 01:50:05.778095: LoadML is_calculating True 2026-08-15 01:50:05.778269: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-15 01:50:05.788493: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-15 01:50:05.793875: Optimise levels pass started at 2026-08-15 01:50:05 2026-08-15 01:50:05.805083: Optimise all windows, total charge 94 export 1 2026-08-15 01:50:12.707156: >> Region optimisation pass width 960 gives best_metric 794.85p, best_cost 801.02p, best_cycle 48.31kWh, best_import 40.42kWh 2026-08-15 01:50:13.863247: >> Region optimisation pass width 480 gives best_metric 794.85p, best_cost 801.02p, best_cycle 48.31kWh, best_import 40.42kWh 2026-08-15 01:50:15.282905: >> Region optimisation pass width 240 gives best_metric 794.85p, best_cost 801.02p, best_cycle 48.31kWh, best_import 40.42kWh 2026-08-15 01:50:18.332463: >> Region optimisation pass width 120 gives best_metric 794.85p, best_cost 801.02p, best_cycle 48.31kWh, best_import 40.42kWh 2026-08-15 01:50:18.332880: Calculated end_record as 08-16 11:30:00 based on best_price 16.34p, next_charge_start 08-15 11:30:00, max_windows 67 2026-08-15 01:50:18.333179: Optimise levels pass ended at 2026-08-15 01:50:18, duration 12.5 seconds tried 327 combinations 2026-08-15 01:50:18.333245: Set best_price_charge_level 17.6p, best_price_export_level 0p, best_price_charge 16.34p, best_cost_export 0p, best_metric 794.85p, best_keep 0kWh, best_cycle 48.31kWh, best_carbon 0kg, best_import 40.42kWh 2026-08-15 01:50:18.353232: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 16.34p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-15 01:50:38.396858: ML Predictor: Epoch 8/30: lr=0.00088 huber_loss=0.0137 val_mae=0.0076 kWh val_bias=-0.0005 kWh (-0.6%) combined=0.0045 kWh ema_combined=0.0054 kWh 2026-08-15 01:50:43.290510: Tweak plan optimisation started metric 617.99p, cost 626.35p 2026-08-15 01:50:43.930966: Tweak optimisation finished metric 617.99p, cost 626.35p, metric_keep 0kWh, cycle 30.59kWh, carbon 0kg, import 28.76kWh, changed 8 window(s) 2026-08-15 01:50:43.954107: Swap charge optimisation started metric 617.99p, cost 626.35p, min_improvement_swap 0.1p 2026-08-15 01:50:53.919566: Swap charge optimisation finished metric 617.99p, cost 626.35p 2026-08-15 01:50:54.068454: Pruned 1 dead plan slot(s) in 10 trial(s), nominal metric 613.1p -> 613.1p, plan now metric 618.01p, cost 626.35p, cycle 30.59kWh, import 28.76kWh 2026-08-15 01:50:54.082954: Raw charge windows [ 15-08 01:30:00 - 15-08 02:00:00 @ 26.5p 0%, 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 100%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 100%, 17-08 01:00:00 - 17-08 01:30:00 @ 27.57p 100%, 17-08 01:30:00 - 17-08 02:00:00 @ 26.5p 100% ] reserve 1.12 2026-08-15 01:50:54.083558: Unclipped charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 02:00:00 @ 27.14p 100% ] reserve 1.12 2026-08-15 01:50:54.083825: Unfiltered charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 02:00:00 @ 27.14p 100% ] reserve 1.12 2026-08-15 01:50:54.084861: Filtered charge windows [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 02:00:00 @ 27.14p 100% ] reserve 1.12 2026-08-15 01:50:54.126899: Previous plan best metric is 617.99 (cost 626.35) and new plan best metric is 617.99 (cost 626.35) 2026-08-15 01:50:54.127747: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-15 01:50:54.129362: Plan valid is now true after recompute was False 2026-08-15 01:50:54.172304: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 853.26p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:30:00, load 29.52kWh, PV 0.0kWh 2026-08-15 01:50:54.393861: Battery has 0.67 hours left - now at 1.96kWh 2026-08-15 01:50:54.461419: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 886.26p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:30:00, load 30.83kWh, PV 0.0kWh 2026-08-15 01:50:54.610973: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 709.07p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:30:00, load 30.83kWh, PV 0.0kWh 2026-08-15 01:50:54.778055: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 676.33p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:30:00, load 29.52kWh, PV 0.0kWh 2026-08-15 01:50:54.778212: Saving plan best values to HA entities 2026-08-15 01:50:55.182146: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 01:50:55.192016: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 01:50:55.205137: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 20.69kWh, house 8.07kWh, export 0.0kWh, metric 676.33p, metric10 709.07p 2026-08-15 01:50:55.366818: Marginal costs baseline metric (no standing charge): 626.3469 2026-08-15 01:50:55.714863: Marginal energy costs matrix computed: min=14.5 max=26.46 2026-08-15 01:50:55.898835: Rate array import [{'start': 110, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2130, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 110, 'end': 2130, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 01:50:55.900015: - Your estimated bill for today is £6.07 and tomorrow is £5.54 2026-08-15 01:50:55.900226: - Import rates are expensive (24.6p - 27.6p) for the next 5 and a quarter hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 01:50:55.900368: - The battery is currently at 12% and is in eco mode for the next 9 hours. 2026-08-15 01:50:55.900493: - For the next 48 hours there will be no solar generation. 2026-08-15 01:50:55.900637: - You will run out of battery in 40 minutes. 2026-08-15 01:50:55.900761: - Your next charge slot will be in 9 hours where import rates will be cheap (15.5p). 2026-08-15 01:50:55.900883: 2026-08-15 01:50:55.967608: Plan calculation took 50.26 seconds 2026-08-15 01:50:55.968169: Inverter 0: Type SK Sunsynk 2026-08-15 01:50:55.968345: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 01:50:55.969303: Reserve min: 7%, battery_min: 7% 2026-08-15 01:50:55.969416: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 01:50:55.969729: Inverter 0 SoC: 1.96kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 449W, current battery voltage 51.2V, grid power -51W, load power 505W, PV Power 0W 2026-08-15 01:50:55.969935: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:50:55.970032: Inverter 0 scheduled charge enable is False 2026-08-15 01:50:55.970065: Inverter 0 charge windows currently [] 2026-08-15 01:50:55.970090: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 01:50:55.970218: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:50:55.970268: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:50:55.970403: Inverter 0 scheduled discharge enable is False 2026-08-15 01:50:55.970590: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:50:55.970634: Inverter 0 discharge windows currently [] 2026-08-15 01:50:55.970658: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:50:55.970677: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:50:55.970694: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:50:56.053057: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-15 01:50:56.053367: Inverter 0 disabled charge window while waiting for schedule (now 08-15 01:50:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 01:50:56.053529: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:50:56.053859: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:50:56.054031: No export window planned 2026-08-15 01:50:56.054255: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 01:50:56.054444: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:50:56.054776: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:50:56.055056: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 01:50:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 01:50:56.055135: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 01:50:56.055327: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 01:50:56.055556: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:50:56.055722: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:50:56.055872: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:50:56.056021: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:50:56.056170: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:50:56.056320: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:50:56.056466: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:50:56.056678: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:50:56.056835: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:50:56.057137: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:50:56.057350: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:50:56.057572: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:50:56.057759: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:50:56.058030: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:50:56.058216: Inverter 0 count register writes 0 2026-08-15 01:50:56.112816: Total inverter register writes now 815 2026-08-15 01:50:56.197743: Info: Completed run status Demand 2026-08-15 01:50:56.208754: Info: record_status Demand 2026-08-15 01:50:56.222539: Saved current settings to /config/predbat_config.json 2026-08-15 01:50:56.222884: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 01:51:09.727928: ML Predictor: Epoch 9/30: lr=0.00084 huber_loss=0.0127 val_mae=0.0069 kWh val_bias=+0.0004 kWh (+0.5%) combined=0.0038 kWh ema_combined=0.0049 kWh 2026-08-15 01:51:27.364996: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:51:27.365268: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:51:27.365313: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:51:27.365451: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:51:27.365492: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:51:27.365534: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:51:27.365643: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:51:32.047095: ML Predictor: Epoch 10/30: lr=0.00080 huber_loss=0.0109 val_mae=0.0079 kWh val_bias=-0.0035 kWh (-3.7%) combined=0.0061 kWh ema_combined=0.0052 kWh 2026-08-15 01:51:53.392037: ML Predictor: Epoch 11/30: lr=0.00076 huber_loss=0.0108 val_mae=0.0076 kWh val_bias=-0.0020 kWh (-2.2%) combined=0.0046 kWh ema_combined=0.0050 kWh 2026-08-15 01:52:13.551849: ML Predictor: Epoch 12/30: lr=0.00072 huber_loss=0.0105 val_mae=0.0070 kWh val_bias=+0.0008 kWh (+0.9%) combined=0.0039 kWh ema_combined=0.0047 kWh 2026-08-15 01:52:32.510162: ML Predictor: Epoch 13/30: lr=0.00067 huber_loss=0.0092 val_mae=0.0059 kWh val_bias=-0.0006 kWh (-0.6%) combined=0.0032 kWh ema_combined=0.0043 kWh 2026-08-15 01:52:50.852290: ML Predictor: Epoch 14/30: lr=0.00062 huber_loss=0.0100 val_mae=0.0061 kWh val_bias=-0.0014 kWh (-1.5%) combined=0.0039 kWh ema_combined=0.0041 kWh 2026-08-15 01:53:12.839878: ML Predictor: Epoch 15/30: lr=0.00057 huber_loss=0.0090 val_mae=0.0060 kWh val_bias=+0.0018 kWh (+1.9%) combined=0.0043 kWh ema_combined=0.0042 kWh 2026-08-15 01:53:30.508236: ML Predictor: Epoch 16/30: lr=0.00053 huber_loss=0.0103 val_mae=0.0057 kWh val_bias=+0.0004 kWh (+0.4%) combined=0.0034 kWh ema_combined=0.0040 kWh 2026-08-15 01:53:41.840925: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:53:41.841400: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:53:41.841455: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:53:41.841651: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:53:41.841692: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:53:41.841891: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:53:41.842019: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:53:49.926356: ML Predictor: Epoch 17/30: lr=0.00048 huber_loss=0.0084 val_mae=0.0054 kWh val_bias=-0.0011 kWh (-1.2%) combined=0.0032 kWh ema_combined=0.0037 kWh 2026-08-15 01:54:08.850765: ML Predictor: Epoch 18/30: lr=0.00043 huber_loss=0.0083 val_mae=0.0051 kWh val_bias=+0.0002 kWh (+0.3%) combined=0.0033 kWh ema_combined=0.0036 kWh 2026-08-15 01:54:27.186853: ML Predictor: Epoch 19/30: lr=0.00038 huber_loss=0.0079 val_mae=0.0052 kWh val_bias=-0.0017 kWh (-1.8%) combined=0.0037 kWh ema_combined=0.0036 kWh 2026-08-15 01:54:47.597738: ML Predictor: Epoch 20/30: lr=0.00034 huber_loss=0.0078 val_mae=0.0052 kWh val_bias=-0.0019 kWh (-2.0%) combined=0.0035 kWh ema_combined=0.0036 kWh 2026-08-15 01:55:00.160023: --------------- PredBat - update at 2026-08-15 01:55:00+01:00 with clock skew 0 minutes, minutes now 115 2026-08-15 01:55:00.160749: Saved current settings to /config/predbat_config.json 2026-08-15 01:55:00.160861: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 115.0 minutes 2026-08-15 01:55:00.160930: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 01:55:00.161020: Autoupdate: Currently up to date 2026-08-15 01:55:00.197528: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 01:55:00.197696: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 01:55:00.198019: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 01:55:00.198744: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 01:55:00.198975: Predbat mode is set to Control charge & discharge 2026-08-15 01:55:00.531399: Found 21602 load_today datapoints going back 28 days 2026-08-15 01:55:00.531925: Using load_power data to fill gaps in load_today data 2026-08-15 01:55:01.857015: Processing 721 30-minute periods for power integration 2026-08-15 01:55:02.076670: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 01:55:02.077383: Car charging hold False, threshold 6.0kWh 2026-08-15 01:55:02.077620: Current data so far today: load 2.1kWh, import 2.9kWh, export 0.0kWh, PV 0kWh 2026-08-15 01:55:02.101465: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 01:55:02.102180: Standing charge is set to 49.98p 2026-08-15 01:55:02.264761: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 01:55:02.265122: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 01:55:02.265582: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 115.0 minutes 2026-08-15 01:55:02.266332: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 114.7 minutes 2026-08-15 01:55:02.276669: Loaded 47 datapoints of futurerate analysis 2026-08-15 01:55:02.365328: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 01:55:02.434687: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 01:55:02.435171: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 01:55:02.481283: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 01:55:02.481700: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 01:55:02.484158: High export rate found rates in range 99p to -99p 2026-08-15 01:55:02.635755: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 01:55:02.636045: Car 0 charging is not planned as it is not plugged in 2026-08-15 01:55:02.656534: Battery level now 1.96kWh, -1hr ago 1.42kWh, at midnight 1.66kWh, battery value change in the last hour 6.43p, change today 3.6p, rate_forward 11.83p 2026-08-15 01:55:02.657095: Last hour: net energy 1.3kWh, import 1.3kWh, export 0.0kWh, car 0kWh, load 0.9kWh, net cost 34.99p, import 34.99p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 01:55:02.741103: Today's energy total net 2.9kWh, import 2.9kWh, export 0.0kWh, cost 129.87p, import 79.89p, export 0.0p, carbon 0.0kg 2026-08-15 01:55:02.741434: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 01:55:02.924885: Using weighted-bucket historical load forecast over 14 days 2026-08-15 01:55:02.980165: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 01:55:02.993150: Today's predicted so far 1.51kWh with 0.0kWh car/iBoost excluded, 1.5kWh import ignored, and 1.51kWh forecast extra. 2026-08-15 01:55:02.993421: Today's actual load so far 2.05kWh with 0.0kWh car/iBoost excluded, and 1.5kWh import ignored. 2026-08-15 01:55:03.059720: Inverter 0: Type SK Sunsynk 2026-08-15 01:55:03.059833: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 01:55:03.060062: Reserve min: 7%, battery_min: 7% 2026-08-15 01:55:03.060152: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 01:55:03.060510: Inverter 0 SoC: 1.96kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 522W, current battery voltage 51.2V, grid power -54W, load power 577W, PV Power 0W 2026-08-15 01:55:03.060699: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:55:03.060808: Inverter 0 scheduled charge enable is False 2026-08-15 01:55:03.060852: Inverter 0 charge windows currently [] 2026-08-15 01:55:03.061071: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 01:55:03.061335: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:55:03.061391: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:55:03.061513: Inverter 0 scheduled discharge enable is False 2026-08-15 01:55:03.061779: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:55:03.061838: Inverter 0 discharge windows currently [] 2026-08-15 01:55:03.061916: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:55:03.061994: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:55:03.062061: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:55:03.216555: Dynamic load last period 0.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 01:55:03.216892: Plan was last updated on 2026-08-15 01:50:00+01:00 and is now 5.0 minutes old 2026-08-15 01:55:03.217415: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 01:55:03.217592: Best export window [ ] 2026-08-15 01:55:03.218958: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 01:55:03.223833: Load divergence over 8.0 hours mean 437.44W, min 312.6W, max 960.0W, std dev 85.81W, divergence 9.81% 2026-08-15 01:55:03.268256: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 01:55:03.268414: LoadML is_calculating True 2026-08-15 01:55:03.268446: Not using thread pool as LoadML is calculating to avoid lockups 2026-08-15 01:55:03.307117: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 853.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:35:00, load 29.55kWh, PV 0.0kWh 2026-08-15 01:55:03.485602: Battery has 0.67 hours left - now at 1.96kWh 2026-08-15 01:55:03.593039: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 886.43p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:35:00, load 30.86kWh, PV 0.0kWh 2026-08-15 01:55:03.768805: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 714.43p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:35:00, load 30.86kWh, PV 0.0kWh 2026-08-15 01:55:03.938001: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 682.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:35:00, load 29.55kWh, PV 0.0kWh 2026-08-15 01:55:03.953221: Saving plan best values to HA entities 2026-08-15 01:55:04.306563: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 01:55:04.312298: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 01:55:04.328213: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.2kWh, house 8.01kWh, export 0.0kWh, metric 682.62p, metric10 714.43p 2026-08-15 01:55:04.473182: Marginal costs baseline metric (no standing charge): 632.6369 2026-08-15 01:55:04.829183: Marginal energy costs matrix computed: min=14.33 max=26.59 2026-08-15 01:55:04.963813: Rate array import [{'start': 115, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2135, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 115, 'end': 2135, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 01:55:04.978102: - Your estimated bill for today is £6.05 and tomorrow is £5.55 2026-08-15 01:55:04.978335: - Import rates are expensive (24.6p - 27.6p) for the next 5 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 01:55:04.978451: - The battery is currently at 12% and is in eco mode for the next 9 hours. 2026-08-15 01:55:04.978571: - For the next 48 hours there will be no solar generation. 2026-08-15 01:55:04.978676: - You will run out of battery in 40 minutes. 2026-08-15 01:55:04.978767: - Your next charge slot will be in 9 hours where import rates will be cheap (15.5p). 2026-08-15 01:55:04.978856: 2026-08-15 01:55:05.024854: Plan calculation took 1.81 seconds 2026-08-15 01:55:05.027860: No high rate period found 2026-08-15 01:55:05.094856: Import threshold used for optimisation was 22.73p 2026-08-15 01:55:05.190391: Low import rate windows [0: 08-15 01:30:00 - 08-15 02:00:00 @ 26.5, 1: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 2: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 3: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 4: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 5: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 6: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 7: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 8: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 9: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 10: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 11: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 12: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 13: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 14: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 15: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 16: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 17: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 18: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 19: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 20: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 21: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 22: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 23: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 24: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 25: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 26: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 27: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 28: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 29: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 30: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 31: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 32: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 33: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 34: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 35: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 36: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 37: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 38: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 39: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 40: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 41: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 42: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 43: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 44: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 45: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 46: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 47: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 48: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 49: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 50: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 51: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 52: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 53: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 54: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 55: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 56: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 57: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 58: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 59: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 60: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 61: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 62: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 63: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 64: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 65: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 66: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 67: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 68: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 69: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 70: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 71: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 72: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 73: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 74: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 75: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 76: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 77: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 78: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 79: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 80: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 81: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 82: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 83: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 84: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 85: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 86: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 87: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 88: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 89: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 90: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 91: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 92: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 93: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57, 94: 08-17 01:30:00 - 08-17 02:00:00 @ 26.5] 2026-08-15 01:55:05.209124: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-15 01:55:05.210071: Inverter 0 disabled charge window while waiting for schedule (now 08-15 01:55:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 01:55:05.210934: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:55:05.211878: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:55:05.212049: No export window planned 2026-08-15 01:55:05.212883: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 01:55:05.213034: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 01:55:05.213286: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 01:55:05.213553: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 01:55:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 01:55:05.213692: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 01:55:05.213833: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 01:55:05.214004: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:55:05.214130: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:55:05.214249: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:55:05.214365: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:55:05.214495: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:55:05.214616: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:55:05.214731: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 01:55:05.214884: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:55:05.215005: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:55:05.215120: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:55:05.215233: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:55:05.215346: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:55:05.215458: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:55:05.215590: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 01:55:05.215698: Inverter 0 count register writes 0 2026-08-15 01:55:05.258414: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-15 01:55:05.282240: Total inverter register writes now 815 2026-08-15 01:55:05.333225: Info: Completed run status Demand 2026-08-15 01:55:05.341000: Info: record_status Demand 2026-08-15 01:55:05.350558: Saved current settings to /config/predbat_config.json 2026-08-15 01:55:05.350904: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 01:55:09.748770: ML Predictor: Epoch 21/30: lr=0.00030 huber_loss=0.0077 val_mae=0.0048 kWh val_bias=-0.0007 kWh (-0.7%) combined=0.0026 kWh ema_combined=0.0033 kWh 2026-08-15 01:55:30.212435: ML Predictor: Epoch 22/30: lr=0.00026 huber_loss=0.0064 val_mae=0.0045 kWh val_bias=-0.0010 kWh (-1.1%) combined=0.0027 kWh ema_combined=0.0031 kWh 2026-08-15 01:55:42.478204: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:55:42.478721: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:55:42.478981: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:55:42.479348: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:55:42.479562: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:55:42.479708: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:55:42.479881: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:55:49.511361: ML Predictor: Epoch 23/30: lr=0.00022 huber_loss=0.0066 val_mae=0.0043 kWh val_bias=-0.0007 kWh (-0.7%) combined=0.0022 kWh ema_combined=0.0028 kWh 2026-08-15 01:56:08.914359: ML Predictor: Epoch 24/30: lr=0.00019 huber_loss=0.0069 val_mae=0.0043 kWh val_bias=-0.0014 kWh (-1.5%) combined=0.0026 kWh ema_combined=0.0028 kWh 2026-08-15 01:56:26.919322: ML Predictor: Epoch 25/30: lr=0.00016 huber_loss=0.0064 val_mae=0.0042 kWh val_bias=-0.0009 kWh (-1.0%) combined=0.0023 kWh ema_combined=0.0026 kWh 2026-08-15 01:56:45.480765: ML Predictor: Epoch 26/30: lr=0.00014 huber_loss=0.0064 val_mae=0.0041 kWh val_bias=+0.0000 kWh (+0.0%) combined=0.0025 kWh ema_combined=0.0026 kWh 2026-08-15 01:57:04.134304: ML Predictor: Epoch 27/30: lr=0.00012 huber_loss=0.0065 val_mae=0.0041 kWh val_bias=-0.0004 kWh (-0.5%) combined=0.0021 kWh ema_combined=0.0025 kWh 2026-08-15 01:57:19.257347: TemperatureAPI: Using coordinates latitude 53.4, longitude -2.2 2026-08-15 01:57:19.419831: TemperatureAPI: Successfully fetched temperature data from Open-Meteo API 2026-08-15 01:57:24.248085: ML Predictor: Epoch 28/30: lr=0.00011 huber_loss=0.0063 val_mae=0.0044 kWh val_bias=-0.0019 kWh (-2.0%) combined=0.0029 kWh ema_combined=0.0026 kWh 2026-08-15 01:57:46.456132: ML Predictor: Epoch 29/30: lr=0.00010 huber_loss=0.0059 val_mae=0.0042 kWh val_bias=-0.0016 kWh (-1.7%) combined=0.0028 kWh ema_combined=0.0026 kWh 2026-08-15 01:57:56.937085: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:57:56.937788: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:57:56.937841: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:57:56.938081: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:57:56.938130: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:57:56.938288: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:57:56.938390: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 01:58:05.494042: ML Predictor: Epoch 30/30: lr=0.00010 huber_loss=0.0060 val_mae=0.0038 kWh val_bias=-0.0008 kWh (-0.9%) combined=0.0024 kWh ema_combined=0.0026 kWh 2026-08-15 01:58:05.495011: ML Predictor: Restored best weights from epoch with val_mae=0.0041 kWh val_bias=-0.0004 kWh (-0.5%) 2026-08-15 01:58:05.495331: ML Predictor: Training complete, final val_mae=0.0041 kWh val_bias=-0.0004 kWh (-0.5%) 2026-08-15 01:58:08.778598: ML Predictor: AR rollout over holdout: ar_mae=0.0047 kWh ar_bias=-0.0005 kWh (-0.5%) [drift vs teacher-forced: +0.0006 kWh] 2026-08-15 01:58:08.790986: ML Predictor: Curriculum training complete, final val_mae=0.0041 kWh 2026-08-15 01:58:08.806909: ML Component: Training successful, val_mae=0.0041 kWh 2026-08-15 01:58:08.962589: ML Predictor: Model saved to /config/predbat_ml_model.npz 2026-08-15 01:58:08.966751: ML Component: Generating predictions load data age 56.0 days, 16278 data points 2026-08-15 01:58:09.080073: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.1061 max_dow {0: 0.09899687486626207, 1: 0.10616562486607581, 2: 0.12051249983031302, 3: 0.1227374996352941, 4: 0.1701437503574416, 5: 0.10630000064577906, 6: 0.11264999961592256} 2026-08-15 01:58:09.886553: ML Component: Generated 576 predictions (total 35.34 kWh over 48h) 2026-08-15 01:58:10.033698: ML Component: Prediction cycle completed 2026-08-15 01:58:10.109595: ML Component: Saved 16278 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-15 01:58:41.617279: Info: HAHistory: Pruning history data started. 2026-08-15 01:58:41.619649: Info: HAHistory: Pruning history data completed. 2026-08-15 01:59:57.290913: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 01:59:57.291156: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 01:59:57.291186: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 01:59:57.291412: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 01:59:57.291462: Note: Inverter does not support discharge freeze - disabled 2026-08-15 01:59:57.291482: Note: Inverter does not support charge freeze - disabled 2026-08-15 01:59:57.291496: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:00:00.364052: --------------- PredBat - update at 2026-08-15 02:00:00+01:00 with clock skew 0 minutes, minutes now 120 2026-08-15 02:00:00.364805: Saved current settings to /config/predbat_config.json 2026-08-15 02:00:00.364914: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 120.0 minutes 2026-08-15 02:00:00.365006: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 02:00:00.365090: Autoupdate: Currently up to date 2026-08-15 02:00:00.384759: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 02:00:00.384886: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 02:00:00.385130: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 02:00:00.385677: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 02:00:00.385841: Predbat mode is set to Control charge & discharge 2026-08-15 02:00:00.600182: Found 21602 load_today datapoints going back 27 days 2026-08-15 02:00:00.600331: Using load_power data to fill gaps in load_today data 2026-08-15 02:00:01.405804: Processing 721 30-minute periods for power integration 2026-08-15 02:00:01.601586: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 02:00:01.601727: Car charging hold False, threshold 6.0kWh 2026-08-15 02:00:01.601772: Current data so far today: load 2.22kWh, import 3.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 02:00:01.615744: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 02:00:01.616115: Standing charge is set to 49.98p 2026-08-15 02:00:01.642889: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 02:00:01.643005: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 02:00:01.643223: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 120.0 minutes 2026-08-15 02:00:01.643659: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 119.7 minutes 2026-08-15 02:00:01.646747: Loaded 47 datapoints of futurerate analysis 2026-08-15 02:00:01.729819: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 02:00:01.791106: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 02:00:01.791432: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 02:00:01.839581: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 02:00:01.839716: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 02:00:01.840833: High export rate found rates in range 99p to -99p 2026-08-15 02:00:01.917672: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 02:00:01.917796: Car 0 charging is not planned as it is not plugged in 2026-08-15 02:00:01.930619: Battery level now 1.96kWh, -1hr ago 2.03kWh, at midnight 1.66kWh, battery value change in the last hour -0.85p, change today 3.6p, rate_forward 11.83p 2026-08-15 02:00:01.930968: Last hour: net energy 1.2kWh, import 1.2kWh, export 0.0kWh, car 0kWh, load 0.93kWh, net cost 32.19p, import 32.19p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 02:00:01.997251: Today's energy total net 3.0kWh, import 3.0kWh, export 0.0kWh, cost 132.52p, import 82.54p, export 0.0p, carbon 0.0kg 2026-08-15 02:00:01.997386: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 02:00:02.069582: Using weighted-bucket historical load forecast over 14 days 2026-08-15 02:00:02.086966: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 02:00:02.087040: Today's predicted so far 1.62kWh with 0.0kWh car/iBoost excluded, 1.41kWh import ignored, and 1.62kWh forecast extra. 2026-08-15 02:00:02.087065: Today's actual load so far 2.29kWh with 0.0kWh car/iBoost excluded, and 1.41kWh import ignored. 2026-08-15 02:00:02.121476: Inverter 0: Type SK Sunsynk 2026-08-15 02:00:02.121569: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 02:00:02.121746: Reserve min: 7%, battery_min: 7% 2026-08-15 02:00:02.121823: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 02:00:02.122080: Inverter 0 SoC: 1.92kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 503W, current battery voltage 51.2V, grid power -56W, load power 554W, PV Power 0W 2026-08-15 02:00:02.122239: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:00:02.122328: Inverter 0 scheduled charge enable is False 2026-08-15 02:00:02.122357: Inverter 0 charge windows currently [] 2026-08-15 02:00:02.122383: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 02:00:02.122506: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:00:02.122544: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:00:02.122580: Inverter 0 scheduled discharge enable is False 2026-08-15 02:00:02.122705: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:00:02.122744: Inverter 0 discharge windows currently [] 2026-08-15 02:00:02.122767: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:00:02.122790: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:00:02.122828: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:00:02.183780: Dynamic load last period 0.30kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 02:00:02.183873: Plan was last updated on 2026-08-15 01:50:00+01:00 and is now 10.0 minutes old 2026-08-15 02:00:02.184095: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 02:00:02.184131: Best export window [ ] 2026-08-15 02:00:02.184769: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 02:00:02.187622: Load divergence over 8.0 hours mean 435.97W, min 290.4W, max 1000.8W, std dev 89.65W, divergence 10.28% 2026-08-15 02:00:02.202740: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 02:00:02.202840: LoadML is_calculating False 2026-08-15 02:00:02.202900: Creating pool of 12 processes to match your CPU count 2026-08-15 02:00:02.316997: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 854.93p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:35:00, load 29.64kWh, PV 0.0kWh 2026-08-15 02:00:02.464119: Battery has 0.58 hours left - now at 1.92kWh 2026-08-15 02:00:02.508425: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 887.8p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:35:00, load 30.94kWh, PV 0.0kWh 2026-08-15 02:00:02.598266: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 721.4p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:35:00, load 30.94kWh, PV 0.0kWh 2026-08-15 02:00:02.690256: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 691.11p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:35:00, load 29.64kWh, PV 0.0kWh 2026-08-15 02:00:02.690355: Saving plan best values to HA entities 2026-08-15 02:00:02.877170: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 02:00:02.884228: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 02:00:02.890362: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.7kWh, house 7.92kWh, export 0.0kWh, metric 691.11p, metric10 721.4p 2026-08-15 02:00:02.964000: Marginal costs baseline metric (no standing charge): 641.127 2026-08-15 02:00:03.206343: Marginal energy costs matrix computed: min=14.17 max=26.74 2026-08-15 02:00:03.282810: Rate array import [{'start': 120, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2140, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 120, 'end': 2140, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 02:00:03.283574: - Your estimated bill for today is £6.06 and tomorrow is £5.51 2026-08-15 02:00:03.283630: - Import rates are expensive (24.6p - 27.6p) for the next 5 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 02:00:03.283653: - The battery is currently at 12% and is in eco mode for the next 9 hours. 2026-08-15 02:00:03.283672: - For the next 48 hours there will be no solar generation. 2026-08-15 02:00:03.283710: - You will run out of battery in 35 minutes. 2026-08-15 02:00:03.283728: - Your next charge slot will be in 9 hours where import rates will be cheap (15.5p). 2026-08-15 02:00:03.283745: 2026-08-15 02:00:03.347141: Plan calculation took 1.16 seconds 2026-08-15 02:00:03.350334: No high rate period found 2026-08-15 02:00:03.418348: Import threshold used for optimisation was 22.73p 2026-08-15 02:00:03.477643: Low import rate windows [0: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 1: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 2: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 3: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 4: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 5: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 6: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 7: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 8: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 9: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 10: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 11: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 12: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 13: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 14: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 15: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 16: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 17: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 18: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 19: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 20: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 21: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 22: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 23: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 24: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 25: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 26: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 27: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 28: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 29: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 30: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 31: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 32: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 33: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 34: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 35: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 36: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 37: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 38: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 39: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 40: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 41: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 42: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 43: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 44: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 45: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 46: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 47: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 48: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 49: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 50: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 51: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 52: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 53: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 54: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 55: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 56: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 57: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 58: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 59: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 60: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 61: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 62: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 63: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 64: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 65: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 66: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 67: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 68: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 69: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 70: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 71: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 72: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 73: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 74: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 75: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 76: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 77: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 78: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 79: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 80: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 81: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 82: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 83: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 84: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 85: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 86: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 87: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 88: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 89: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 90: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 91: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 92: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57, 93: 08-17 01:30:00 - 08-17 02:00:00 @ 26.5] 2026-08-15 02:00:03.486014: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-15 02:00:03.486192: Inverter 0 disabled charge window while waiting for schedule (now 08-15 02:00:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 02:00:03.486366: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:00:03.486713: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:00:03.486847: No export window planned 2026-08-15 02:00:03.487024: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 02:00:03.487070: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:00:03.487293: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:00:03.487571: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 02:00:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 02:00:03.487655: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 02:00:03.487742: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 02:00:03.487886: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:00:03.487965: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:00:03.488018: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:00:03.488061: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:00:03.488113: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:00:03.488165: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:00:03.488207: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:00:03.488333: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:00:03.488395: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:00:03.488467: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:00:03.488525: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:00:03.488570: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:00:03.488618: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:00:03.488679: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:00:03.488731: Inverter 0 count register writes 0 2026-08-15 02:00:03.512054: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-15 02:00:03.512244: Recompute is saving previous plan... 2026-08-15 02:00:03.515852: Best charge window [ 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 0%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 0%, 17-08 01:00:00 - 17-08 01:30:00 @ 27.57p 0%, 17-08 01:30:00 - 17-08 02:00:00 @ 26.5p 0% ] 2026-08-15 02:00:03.515950: Best export window [ ] 2026-08-15 02:00:03.516993: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 02:00:03.521013: Load divergence over 8.0 hours mean 435.97W, min 290.4W, max 1000.8W, std dev 89.65W, divergence 10.28% 2026-08-15 02:00:03.539012: Calculating data from yesterday for savings calculation 2026-08-15 02:00:03.550696: Yesterday basic charge window best: [{'start': 840, 'end': 870, 'average': 21.7}] charge limit best: [16.0] based on max charge slots 1 2026-08-15 02:00:03.598264: predict yesterday end_record 08-16 00:00:00, final soc 1.12kWh, metric 843.72p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:00:00, load 26.2kWh, PV 0.0kWh 2026-08-15 02:00:03.611778: predict yesterday10 end_record 08-16 00:00:00, final soc 1.12kWh, metric 848.0p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:00:00, load 26.2kWh, PV 0.0kWh 2026-08-15 02:00:03.630956: predict yesterday end_record 08-16 00:00:00, final soc 1.12kWh, metric 843.72p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 00:00:00, load 26.2kWh, PV 0.0kWh 2026-08-15 02:00:03.667755: Yesterday: Predbat disabled was £8.44 (adjusted £8.3) vs £7.38 (adjusted £7.17), saving £1.05 (adjusted £1.13) with import 26.53kWh, export 0.0kWh, battery_cycle 4.66kWh, start_soc 1.12kWh, final_soc 1.12kWh and battery_value 13.25kWh 2026-08-15 02:00:03.732155: predict yesterday end_record 08-16 00:00:00, final soc 0.0kWh, metric 852.35p, metric_keep 0kWh, min_soc 0kWh @ 08-15 00:00:00, load 26.2kWh, PV 0.0kWh 2026-08-15 02:00:03.732332: Yesterday: No Battery/PV system cost predicted was £8.52 (adjusted £8.52) vs £7.38 (adjusted £7.17), saving £1.14 (adjusted £1.35) with import 26.2kWh, export 0kWh and battery_value 0.0kWh 2026-08-15 02:00:03.742885: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 02:00:03.742996: LoadML is_calculating False 2026-08-15 02:00:03.743067: Creating pool of 12 processes to match your CPU count 2026-08-15 02:00:03.839423: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-15 02:00:03.841749: Optimise levels pass started at 2026-08-15 02:00:03 2026-08-15 02:00:03.841826: Optimise all windows, total charge 94 export 1 2026-08-15 02:00:05.002094: >> Region optimisation pass width 960 gives best_metric 795.37p, best_cost 802.18p, best_cycle 48.74kWh, best_import 40.45kWh 2026-08-15 02:00:05.433750: >> Region optimisation pass width 480 gives best_metric 795.37p, best_cost 802.18p, best_cycle 48.74kWh, best_import 40.45kWh 2026-08-15 02:00:06.218571: >> Region optimisation pass width 240 gives best_metric 795.3p, best_cost 802.11p, best_cycle 48.74kWh, best_import 40.45kWh 2026-08-15 02:00:07.395352: >> Region optimisation pass width 120 gives best_metric 795.3p, best_cost 802.11p, best_cycle 48.74kWh, best_import 40.45kWh 2026-08-15 02:00:07.395799: Calculated end_record as 08-16 11:30:00 based on best_price 16.34p, next_charge_start 08-15 11:30:00, max_windows 66 2026-08-15 02:00:07.395905: Optimise levels pass ended at 2026-08-15 02:00:07, duration 3.6 seconds tried 363 combinations 2026-08-15 02:00:07.395970: Set best_price_charge_level 17.6p, best_price_export_level 0p, best_price_charge 16.34p, best_cost_export 0p, best_metric 795.3p, best_keep 0kWh, best_cycle 48.74kWh, best_carbon 0kg, best_import 40.45kWh 2026-08-15 02:00:07.418267: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 16.34p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-15 02:00:12.107224: Tweak plan optimisation started metric 616.81p, cost 625.23p 2026-08-15 02:00:12.390851: Tweak optimisation finished metric 616.81p, cost 625.23p, metric_keep 0kWh, cycle 31.31kWh, carbon 0kg, import 28.65kWh, changed 8 window(s) 2026-08-15 02:00:12.411768: Swap charge optimisation started metric 616.81p, cost 625.23p, min_improvement_swap 0.1p 2026-08-15 02:00:18.337512: Swap charge optimisation finished metric 616.81p, cost 625.23p 2026-08-15 02:00:18.439930: Pruned 1 dead plan slot(s) in 11 trial(s), nominal metric 611.98p -> 611.98p, plan now metric 616.82p, cost 625.23p, cycle 31.31kWh, import 28.65kWh 2026-08-15 02:00:18.449420: Raw charge windows [ 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 100%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 100%, 17-08 01:00:00 - 17-08 01:30:00 @ 27.57p 100%, 17-08 01:30:00 - 17-08 02:00:00 @ 26.5p 100% ] reserve 1.12 2026-08-15 02:00:18.449991: Unclipped charge windows [ 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 02:00:00 @ 27.14p 100% ] reserve 1.12 2026-08-15 02:00:18.450245: Unfiltered charge windows [ 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 02:00:00 @ 27.14p 100% ] reserve 1.12 2026-08-15 02:00:18.450542: Filtered charge windows [ 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 02:00:00 @ 27.14p 100% ] reserve 1.12 2026-08-15 02:00:18.480324: Previous plan best metric is 616.86 (cost 625.27) and new plan best metric is 616.81 (cost 625.23) 2026-08-15 02:00:18.480824: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-15 02:00:18.481012: Plan valid is now true after recompute was False 2026-08-15 02:00:18.503122: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 851.96p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:35:00, load 29.44kWh, PV 0.0kWh 2026-08-15 02:00:18.598743: Battery has 0.58 hours left - now at 1.92kWh 2026-08-15 02:00:18.635715: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 884.68p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:35:00, load 30.74kWh, PV 0.0kWh 2026-08-15 02:00:18.701801: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 707.55p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:35:00, load 30.74kWh, PV 0.0kWh 2026-08-15 02:00:18.773064: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 675.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:35:00, load 29.44kWh, PV 0.0kWh 2026-08-15 02:00:18.773161: Saving plan best values to HA entities 2026-08-15 02:00:18.920998: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 02:00:18.926134: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 02:00:18.931122: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 20.68kWh, house 7.92kWh, export 0.0kWh, metric 675.25p, metric10 707.55p 2026-08-15 02:00:18.996409: Marginal costs baseline metric (no standing charge): 625.2702 2026-08-15 02:00:19.229359: Marginal energy costs matrix computed: min=14.17 max=26.74 2026-08-15 02:00:19.302777: Rate array import [{'start': 120, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2130, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 120, 'end': 2130, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 02:00:19.303498: - Your estimated bill for today is £6.06 and tomorrow is £5.51 2026-08-15 02:00:19.303545: - Import rates are expensive (24.6p - 27.6p) for the next 5 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 02:00:19.303567: - The battery is currently at 12% and is in eco mode for the next 9 hours. 2026-08-15 02:00:19.303585: - For the next 48 hours there will be no solar generation. 2026-08-15 02:00:19.303604: - You will run out of battery in 35 minutes. 2026-08-15 02:00:19.303624: - Your next charge slot will be in 9 hours where import rates will be cheap (15.5p). 2026-08-15 02:00:19.303641: 2026-08-15 02:00:19.364867: Plan calculation took 15.85 seconds 2026-08-15 02:00:19.365272: Inverter 0: Type SK Sunsynk 2026-08-15 02:00:19.365325: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 02:00:19.365575: Reserve min: 7%, battery_min: 7% 2026-08-15 02:00:19.365660: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 02:00:19.365981: Inverter 0 SoC: 1.92kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 501W, current battery voltage 51.2V, grid power -55W, load power 565W, PV Power 0W 2026-08-15 02:00:19.366210: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:00:19.366319: Inverter 0 scheduled charge enable is False 2026-08-15 02:00:19.366359: Inverter 0 charge windows currently [] 2026-08-15 02:00:19.366390: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 02:00:19.366519: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:00:19.366558: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:00:19.366594: Inverter 0 scheduled discharge enable is False 2026-08-15 02:00:19.366722: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:00:19.366760: Inverter 0 discharge windows currently [] 2026-08-15 02:00:19.366792: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:00:19.366813: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:00:19.366859: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:00:19.428226: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-15 02:00:19.428378: Inverter 0 disabled charge window while waiting for schedule (now 08-15 02:00:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 02:00:19.428466: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:00:19.428651: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:00:19.428792: No export window planned 2026-08-15 02:00:19.428988: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 02:00:19.429036: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:00:19.429210: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:00:19.429382: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 02:00:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 02:00:19.429458: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 02:00:19.429516: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 02:00:19.429620: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:00:19.429658: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:00:19.429686: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:00:19.429720: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:00:19.429746: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:00:19.429771: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:00:19.429796: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:00:19.429852: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:00:19.429879: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:00:19.429903: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:00:19.429932: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:00:19.429957: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:00:19.429984: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:00:19.430008: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:00:19.430027: Inverter 0 count register writes 0 2026-08-15 02:00:19.451875: Total inverter register writes now 815 2026-08-15 02:00:19.480925: Info: Completed run status Demand 2026-08-15 02:00:19.486363: Info: record_status Demand 2026-08-15 02:00:19.494510: Saved current settings to /config/predbat_config.json 2026-08-15 02:00:19.494856: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 02:00:56.607708: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:00:56.608009: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:00:56.608094: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:00:56.608306: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:00:56.608366: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:00:56.608401: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:00:56.608450: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:01:10.349325: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-15 02:01:11.383692: Processing 1297 30-minute periods for power integration 2026-08-15 02:01:11.483526: ML Component: Car charging hold False, car energy reported load False 2026-08-15 02:01:11.579622: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 02:01:11.678606: ML Temperature data points: 48841 2026-08-15 02:01:11.941660: ML Component: Fetched 7776 load data points, 27.0 days of history 2026-08-15 02:01:11.981974: ML Component: Data fetch completed, load data age 56.0 days, 16289 data points 2026-08-15 02:01:11.982116: ML Component: No training needed, model age is 0.03 hours 2026-08-15 02:01:11.982188: ML Component: Generating predictions load data age 56.0 days, 16289 data points 2026-08-15 02:01:12.120844: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.0448 max_dow {0: 0.10148124996256083, 1: 0.10722812486607582, 2: 0.11988124983031304, 3: 0.11477812442630529, 4: 0.1668593753574416, 5: 0.10622187502831222, 6: 0.10850624993629754} 2026-08-15 02:01:12.788006: ML Component: Generated 576 predictions (total 35.27 kWh over 48h) 2026-08-15 02:01:12.826827: ML Component: Prediction cycle completed 2026-08-15 02:01:12.946879: ML Component: Saved 16289 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-15 02:02:57.246041: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:02:57.246302: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:02:57.246341: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:02:57.246552: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:02:57.246621: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:02:57.246643: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:02:57.246660: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:04:57.456296: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:04:57.456591: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:04:57.456638: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:04:57.456778: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:04:57.456817: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:04:57.456838: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:04:57.456856: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:05:00.550628: --------------- PredBat - update at 2026-08-15 02:05:00+01:00 with clock skew 0 minutes, minutes now 125 2026-08-15 02:05:00.551553: Saved current settings to /config/predbat_config.json 2026-08-15 02:05:00.818841: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 02:05:00.819026: Autoupdate: Currently up to date 2026-08-15 02:05:00.843559: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 02:05:00.843697: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 02:05:00.843925: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 02:05:00.844465: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 02:05:00.844593: Predbat mode is set to Control charge & discharge 2026-08-15 02:05:01.043260: Found 21602 load_today datapoints going back 27 days 2026-08-15 02:05:01.043425: Using load_power data to fill gaps in load_today data 2026-08-15 02:05:01.733326: Processing 721 30-minute periods for power integration 2026-08-15 02:05:01.944877: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 02:05:01.945071: Car charging hold False, threshold 6.0kWh 2026-08-15 02:05:01.945131: Current data so far today: load 2.25kWh, import 3.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 02:05:01.967145: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 02:05:01.967705: Standing charge is set to 49.98p 2026-08-15 02:05:02.006339: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 02:05:02.006493: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 02:05:02.006743: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 125.0 minutes 2026-08-15 02:05:02.007305: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 124.7 minutes 2026-08-15 02:05:02.011807: Loaded 47 datapoints of futurerate analysis 2026-08-15 02:05:02.127630: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 02:05:02.192714: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 02:05:02.193118: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 02:05:02.236777: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 02:05:02.236906: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 02:05:02.238339: High export rate found rates in range 99p to -99p 2026-08-15 02:05:02.315548: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 02:05:02.315684: Car 0 charging is not planned as it is not plugged in 2026-08-15 02:05:02.328492: Battery level now 1.92kWh, -1hr ago 1.94kWh, at midnight 1.66kWh, battery value change in the last hour -0.19p, change today 3.12p, rate_forward 11.83p 2026-08-15 02:05:02.328873: Last hour: net energy 1.0kWh, import 1.0kWh, export 0.0kWh, car 0kWh, load 0.85kWh, net cost 26.67p, import 26.67p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 02:05:02.379819: Today's energy total net 3.0kWh, import 3.0kWh, export 0.0kWh, cost 132.52p, import 82.54p, export 0.0p, carbon 0.0kg 2026-08-15 02:05:02.379957: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 02:05:02.455669: Using weighted-bucket historical load forecast over 14 days 2026-08-15 02:05:02.479958: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 02:05:02.480066: Today's predicted so far 1.72kWh with 0.0kWh car/iBoost excluded, 1.38kWh import ignored, and 1.72kWh forecast extra. 2026-08-15 02:05:02.480106: Today's actual load so far 2.41kWh with 0.0kWh car/iBoost excluded, and 1.38kWh import ignored. 2026-08-15 02:05:02.525384: Inverter 0: Type SK Sunsynk 2026-08-15 02:05:02.525518: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 02:05:02.525784: Reserve min: 7%, battery_min: 7% 2026-08-15 02:05:02.525917: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 02:05:02.526318: Inverter 0 SoC: 1.91kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 531W, current battery voltage 51.2V, grid power -54W, load power 591W, PV Power 0W 2026-08-15 02:05:02.526582: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:05:02.526724: Inverter 0 scheduled charge enable is False 2026-08-15 02:05:02.526804: Inverter 0 charge windows currently [] 2026-08-15 02:05:02.526860: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 02:05:02.527048: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:05:02.527103: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:05:02.527146: Inverter 0 scheduled discharge enable is False 2026-08-15 02:05:02.527381: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:05:02.527462: Inverter 0 discharge windows currently [] 2026-08-15 02:05:02.527499: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:05:02.527536: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:05:02.527572: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:05:02.600195: Dynamic load last period 0.30kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 02:05:02.600331: Plan was last updated on 2026-08-15 02:00:00+01:00 and is now 5.0 minutes old 2026-08-15 02:05:02.600726: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 02:05:02.600787: Best export window [ ] 2026-08-15 02:05:02.601806: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 02:05:02.604635: Load divergence over 8.0 hours mean 434.47W, min 269.4W, max 1041.6W, std dev 98.37W, divergence 11.32% 2026-08-15 02:05:02.620897: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 02:05:02.621060: LoadML is_calculating False 2026-08-15 02:05:02.621151: Creating pool of 12 processes to match your CPU count 2026-08-15 02:05:02.727890: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 850.56p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 29.46kWh, PV 0.0kWh 2026-08-15 02:05:02.851868: Battery has 0.67 hours left - now at 1.91kWh 2026-08-15 02:05:02.894650: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 883.21p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:40:00, load 30.75kWh, PV 0.0kWh 2026-08-15 02:05:02.980050: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 711.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:40:00, load 30.75kWh, PV 0.0kWh 2026-08-15 02:05:03.072427: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 680.9p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 29.46kWh, PV 0.0kWh 2026-08-15 02:05:03.072522: Saving plan best values to HA entities 2026-08-15 02:05:03.240775: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 02:05:03.246458: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 02:05:03.253731: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.21kWh, house 7.8kWh, export 0.0kWh, metric 680.9p, metric10 711.9p 2026-08-15 02:05:03.332852: Marginal costs baseline metric (no standing charge): 630.9186 2026-08-15 02:05:03.563206: Marginal energy costs matrix computed: min=14.21 max=26.68 2026-08-15 02:05:03.637065: Rate array import [{'start': 125, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2135, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 125, 'end': 2135, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 02:05:03.637858: - Your estimated bill for today is £6.05 and tomorrow is £5.49 2026-08-15 02:05:03.637912: - Import rates are expensive (24.6p - 27.6p) for the next 4 hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 02:05:03.637935: - The battery is currently at 12% and is in eco mode for the next 9 hours. 2026-08-15 02:05:03.638335: - For the next 48 hours there will be no solar generation. 2026-08-15 02:05:03.638420: - You will run out of battery in 40 minutes. 2026-08-15 02:05:03.638442: - Your next charge slot will be in 9 hours where import rates will be cheap (15.5p). 2026-08-15 02:05:03.638460: 2026-08-15 02:05:03.697705: Plan calculation took 1.10 seconds 2026-08-15 02:05:03.700878: No high rate period found 2026-08-15 02:05:03.750541: Import threshold used for optimisation was 22.73p 2026-08-15 02:05:03.805189: Low import rate windows [0: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 1: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 2: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 3: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 4: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 5: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 6: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 7: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 8: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 9: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 10: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 11: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 12: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 13: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 14: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 15: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 16: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 17: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 18: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 19: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 20: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 21: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 22: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 23: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 24: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 25: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 26: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 27: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 28: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 29: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 30: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 31: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 32: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 33: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 34: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 35: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 36: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 37: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 38: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 39: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 40: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 41: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 42: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 43: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 44: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 45: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 46: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 47: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 48: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 49: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 50: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 51: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 52: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 53: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 54: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 55: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 56: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 57: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 58: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 59: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 60: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 61: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 62: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 63: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 64: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 65: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 66: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 67: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 68: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 69: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 70: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 71: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 72: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 73: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 74: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 75: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 76: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 77: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 78: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 79: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 80: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 81: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 82: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 83: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 84: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 85: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 86: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 87: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 88: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 89: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 90: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 91: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 92: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57, 93: 08-17 01:30:00 - 08-17 02:00:00 @ 26.5, 94: 08-17 02:00:00 - 08-17 02:30:00 @ 25.6] 2026-08-15 02:05:03.813744: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-15 02:05:03.813891: Inverter 0 disabled charge window while waiting for schedule (now 08-15 02:05:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 02:05:03.814005: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:05:03.814266: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:05:03.814361: No export window planned 2026-08-15 02:05:03.814494: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 02:05:03.814533: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:05:03.814668: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:05:03.814852: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 02:05:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 02:05:03.814937: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 02:05:03.814999: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 02:05:03.815096: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:05:03.815134: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:05:03.815160: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:05:03.815190: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:05:03.815216: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:05:03.815240: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:05:03.815266: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:05:03.815326: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:05:03.815354: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:05:03.815378: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:05:03.815421: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:05:03.815562: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:05:03.815600: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:05:03.815634: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:05:03.815657: Inverter 0 count register writes 0 2026-08-15 02:05:03.833047: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-15 02:05:03.838872: Total inverter register writes now 815 2026-08-15 02:05:03.879137: Info: Completed run status Demand 2026-08-15 02:05:03.884794: Info: record_status Demand 2026-08-15 02:05:03.890945: Saved current settings to /config/predbat_config.json 2026-08-15 02:05:03.891190: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 02:05:42.002793: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:05:42.003034: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:05:42.003082: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:05:42.003288: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:05:42.003350: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:05:42.003385: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:05:42.003417: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:07:42.225402: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:07:42.225763: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:07:42.225826: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:07:42.226038: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:07:42.226087: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:07:42.226112: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:07:42.226155: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:09:42.448683: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:09:42.449023: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:09:42.449082: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:09:42.449291: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:09:42.449337: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:09:42.449394: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:09:42.449432: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:10:00.547438: --------------- PredBat - update at 2026-08-15 02:10:00+01:00 with clock skew 0 minutes, minutes now 130 2026-08-15 02:10:00.548317: Saved current settings to /config/predbat_config.json 2026-08-15 02:10:00.548488: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 5.0 minutes 2026-08-15 02:10:00.548626: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 02:10:00.548781: Autoupdate: Currently up to date 2026-08-15 02:10:00.569069: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 02:10:00.569191: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 02:10:00.569329: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 02:10:00.569773: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 02:10:00.569875: Predbat mode is set to Control charge & discharge 2026-08-15 02:10:00.734103: Found 21602 load_today datapoints going back 28 days 2026-08-15 02:10:00.734237: Using load_power data to fill gaps in load_today data 2026-08-15 02:10:01.418473: Processing 721 30-minute periods for power integration 2026-08-15 02:10:01.568210: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 02:10:01.568345: Car charging hold False, threshold 6.0kWh 2026-08-15 02:10:01.568380: Current data so far today: load 2.35kWh, import 3.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 02:10:01.579896: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 02:10:01.580211: Standing charge is set to 49.98p 2026-08-15 02:10:01.607089: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 02:10:01.607157: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 02:10:01.607331: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 130.0 minutes 2026-08-15 02:10:01.607690: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 129.7 minutes 2026-08-15 02:10:01.610242: Loaded 47 datapoints of futurerate analysis 2026-08-15 02:10:01.679845: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 02:10:01.729593: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 02:10:01.730077: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 02:10:01.768917: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 02:10:01.769048: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 02:10:01.770055: High export rate found rates in range 99p to -99p 2026-08-15 02:10:01.832844: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 02:10:01.832991: Car 0 charging is not planned as it is not plugged in 2026-08-15 02:10:01.843409: Battery level now 1.91kWh, -1hr ago 1.94kWh, at midnight 1.66kWh, battery value change in the last hour -0.28p, change today 3.03p, rate_forward 11.83p 2026-08-15 02:10:01.843710: Last hour: net energy 0.97kWh, import 0.97kWh, export 0.0kWh, car 0kWh, load 0.85kWh, net cost 25.76p, import 25.76p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 02:10:01.880447: Today's energy total net 3.0kWh, import 3.0kWh, export 0.0kWh, cost 132.52p, import 82.54p, export 0.0p, carbon 0.0kg 2026-08-15 02:10:01.880568: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 02:10:01.940228: Using weighted-bucket historical load forecast over 14 days 2026-08-15 02:10:01.958803: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 02:10:01.958881: Today's predicted so far 1.74kWh with 0.0kWh car/iBoost excluded, 1.39kWh import ignored, and 1.74kWh forecast extra. 2026-08-15 02:10:01.958912: Today's actual load so far 2.44kWh with 0.0kWh car/iBoost excluded, and 1.39kWh import ignored. 2026-08-15 02:10:01.993565: Inverter 0: Type SK Sunsynk 2026-08-15 02:10:01.993645: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 02:10:01.993808: Reserve min: 7%, battery_min: 7% 2026-08-15 02:10:01.993873: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 02:10:01.994103: Inverter 0 SoC: 1.91kW 12%, current charge rate 5000W, current discharge rate 5250W, current battery power 400W, current battery voltage 51.2V, grid power -52W, load power 465W, PV Power 0W 2026-08-15 02:10:01.994233: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:10:01.994312: Inverter 0 scheduled charge enable is False 2026-08-15 02:10:01.994336: Inverter 0 charge windows currently [] 2026-08-15 02:10:01.994357: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 02:10:01.994442: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:10:01.994485: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:10:01.994517: Inverter 0 scheduled discharge enable is False 2026-08-15 02:10:01.994622: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:10:01.994652: Inverter 0 discharge windows currently [] 2026-08-15 02:10:01.994671: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:10:01.994686: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:10:01.994703: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:10:02.043871: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 02:10:02.043965: Plan was last updated on 2026-08-15 02:00:00+01:00 and is now 10.0 minutes old 2026-08-15 02:10:02.044192: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 02:10:02.044229: Best export window [ ] 2026-08-15 02:10:02.044899: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 02:10:02.047578: Load divergence over 8.0 hours mean 431.47W, min 268.2W, max 1026.0W, std dev 98.25W, divergence 11.39% 2026-08-15 02:10:02.062764: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 02:10:02.062872: LoadML is_calculating False 2026-08-15 02:10:02.062927: Creating pool of 12 processes to match your CPU count 2026-08-15 02:10:02.172184: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 850.69p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 29.6kWh, PV 0.0kWh 2026-08-15 02:10:02.282247: Battery has 0.67 hours left - now at 1.91kWh 2026-08-15 02:10:02.322115: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 883.35p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 30.9kWh, PV 0.0kWh 2026-08-15 02:10:02.393311: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 717.18p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 30.9kWh, PV 0.0kWh 2026-08-15 02:10:02.474626: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 687.16p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 29.6kWh, PV 0.0kWh 2026-08-15 02:10:02.474712: Saving plan best values to HA entities 2026-08-15 02:10:02.661090: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 02:10:02.668392: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 02:10:02.675282: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.72kWh, house 7.75kWh, export 0.0kWh, metric 687.16p, metric10 717.18p 2026-08-15 02:10:02.751338: Marginal costs baseline metric (no standing charge): 637.1795 2026-08-15 02:10:03.027890: Marginal energy costs matrix computed: min=14.24 max=26.62 2026-08-15 02:10:03.101413: Rate array import [{'start': 130, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2140, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 130, 'end': 2140, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 02:10:03.102194: - Your estimated bill for today is £6.02 and tomorrow is £5.51 2026-08-15 02:10:03.102245: - Import rates are expensive (24.6p - 27.6p) for the next 4 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 02:10:03.102268: - The battery is currently at 12% and is in eco mode for the next 9 hours. 2026-08-15 02:10:03.102287: - For the next 48 hours there will be no solar generation. 2026-08-15 02:10:03.102304: - You will run out of battery in 40 minutes. 2026-08-15 02:10:03.102353: - Your next charge slot will be in 9 hours where import rates will be cheap (15.5p). 2026-08-15 02:10:03.102390: 2026-08-15 02:10:03.157591: Plan calculation took 1.11 seconds 2026-08-15 02:10:03.160176: No high rate period found 2026-08-15 02:10:03.206945: Import threshold used for optimisation was 22.73p 2026-08-15 02:10:03.255875: Low import rate windows [0: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 1: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 2: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 3: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 4: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 5: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 6: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 7: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 8: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 9: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 10: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 11: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 12: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 13: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 14: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 15: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 16: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 17: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 18: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 19: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 20: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 21: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 22: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 23: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 24: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 25: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 26: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 27: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 28: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 29: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 30: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 31: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 32: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 33: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 34: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 35: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 36: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 37: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 38: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 39: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 40: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 41: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 42: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 43: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 44: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 45: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 46: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 47: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 48: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 49: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 50: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 51: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 52: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 53: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 54: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 55: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 56: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 57: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 58: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 59: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 60: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 61: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 62: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 63: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 64: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 65: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 66: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 67: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 68: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 69: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 70: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 71: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 72: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 73: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 74: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 75: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 76: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 77: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 78: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 79: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 80: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 81: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 82: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 83: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 84: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 85: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 86: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 87: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 88: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 89: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 90: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 91: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 92: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57, 93: 08-17 01:30:00 - 08-17 02:00:00 @ 26.5, 94: 08-17 02:00:00 - 08-17 02:30:00 @ 25.6] 2026-08-15 02:10:03.261981: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 12%, target 100% 2026-08-15 02:10:03.262106: Inverter 0 disabled charge window while waiting for schedule (now 08-15 02:10:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 02:10:03.262249: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:10:03.262555: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:10:03.262652: No export window planned 2026-08-15 02:10:03.262766: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 02:10:03.262802: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:10:03.262937: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:10:03.263116: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 02:10:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 02:10:03.263178: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 02:10:03.263237: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 02:10:03.263326: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:10:03.263371: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:10:03.263406: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:10:03.263439: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:10:03.263485: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:10:03.263513: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:10:03.263537: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:10:03.263601: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:10:03.263629: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:10:03.263653: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:10:03.263683: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:10:03.263711: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:10:03.263735: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:10:03.263765: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:10:03.263786: Inverter 0 count register writes 0 2026-08-15 02:10:03.278795: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-15 02:10:03.278967: Recompute is saving previous plan... 2026-08-15 02:10:03.282157: Best charge window [ 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 0%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 0%, 17-08 01:00:00 - 17-08 01:30:00 @ 27.57p 0%, 17-08 01:30:00 - 17-08 02:00:00 @ 26.5p 0%, 17-08 02:00:00 - 17-08 02:30:00 @ 25.6p 0% ] 2026-08-15 02:10:03.282262: Best export window [ ] 2026-08-15 02:10:03.283732: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 02:10:03.287041: Load divergence over 8.0 hours mean 431.47W, min 268.2W, max 1026.0W, std dev 98.25W, divergence 11.39% 2026-08-15 02:10:03.302507: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 02:10:03.302596: LoadML is_calculating False 2026-08-15 02:10:03.302652: Creating pool of 12 processes to match your CPU count 2026-08-15 02:10:03.380527: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-15 02:10:03.382755: Optimise levels pass started at 2026-08-15 02:10:03 2026-08-15 02:10:03.382817: Optimise all windows, total charge 94 export 1 2026-08-15 02:10:04.443753: >> Region optimisation pass width 960 gives best_metric 793.75p, best_cost 799.65p, best_cycle 48.78kWh, best_import 40.35kWh 2026-08-15 02:10:04.837644: >> Region optimisation pass width 480 gives best_metric 793.75p, best_cost 799.65p, best_cycle 48.78kWh, best_import 40.35kWh 2026-08-15 02:10:05.387191: >> Region optimisation pass width 240 gives best_metric 793.75p, best_cost 799.65p, best_cycle 48.78kWh, best_import 40.35kWh 2026-08-15 02:10:06.452056: >> Region optimisation pass width 120 gives best_metric 793.75p, best_cost 799.65p, best_cycle 48.78kWh, best_import 40.35kWh 2026-08-15 02:10:06.452673: Calculated end_record as 08-16 11:30:00 based on best_price 16.34p, next_charge_start 08-15 11:30:00, max_windows 66 2026-08-15 02:10:06.452932: Optimise levels pass ended at 2026-08-15 02:10:06, duration 3.1 seconds tried 325 combinations 2026-08-15 02:10:06.453060: Set best_price_charge_level 17.6p, best_price_export_level 0p, best_price_charge 16.34p, best_cost_export 0p, best_metric 793.75p, best_keep 0kWh, best_cycle 48.78kWh, best_carbon 0kg, best_import 40.35kWh 2026-08-15 02:10:06.472857: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 16.34p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-15 02:10:10.684663: Tweak plan optimisation started metric 612.74p, cost 621.19p 2026-08-15 02:10:10.923458: Tweak optimisation finished metric 612.74p, cost 621.19p, metric_keep 0kWh, cycle 31.3kWh, carbon 0kg, import 28.5kWh, changed 8 window(s) 2026-08-15 02:10:10.943088: Swap charge optimisation started metric 612.74p, cost 621.19p, min_improvement_swap 0.1p 2026-08-15 02:10:18.010646: Swap charge optimisation finished metric 612.74p, cost 621.19p 2026-08-15 02:10:18.147142: Pruned 2 dead plan slot(s) in 12 trial(s), nominal metric 607.94p -> 607.95p, plan now metric 612.76p, cost 621.2p, cycle 30.54kWh, import 28.44kWh 2026-08-15 02:10:18.159221: Raw charge windows [ 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 9%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 100%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 100%, 17-08 01:00:00 - 17-08 01:30:00 @ 27.57p 100%, 17-08 01:30:00 - 17-08 02:00:00 @ 26.5p 100%, 17-08 02:00:00 - 17-08 02:30:00 @ 25.6p 100% ] reserve 1.12 2026-08-15 02:10:18.159903: Unclipped charge windows [ 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 02:30:00 @ 26.37p 100% ] reserve 1.12 2026-08-15 02:10:18.160240: Unfiltered charge windows [ 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 02:30:00 @ 26.37p 100% ] reserve 1.12 2026-08-15 02:10:18.160522: Filtered charge windows [ 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 02:30:00 @ 26.37p 100% ] reserve 1.12 2026-08-15 02:10:18.197729: Previous plan best metric is 612.86 (cost 621.31) and new plan best metric is 612.74 (cost 621.19) 2026-08-15 02:10:18.198009: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-15 02:10:18.198216: Plan valid is now true after recompute was False 2026-08-15 02:10:18.226697: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 847.7p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 29.41kWh, PV 0.0kWh 2026-08-15 02:10:18.334327: Battery has 0.67 hours left - now at 1.91kWh 2026-08-15 02:10:18.374078: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 880.21p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 30.69kWh, PV 0.0kWh 2026-08-15 02:10:18.451905: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 703.32p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 30.69kWh, PV 0.0kWh 2026-08-15 02:10:18.538027: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 671.29p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 29.41kWh, PV 0.0kWh 2026-08-15 02:10:18.538117: Saving plan best values to HA entities 2026-08-15 02:10:18.667651: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 02:10:18.672394: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 02:10:18.676991: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 20.69kWh, house 7.75kWh, export 0.0kWh, metric 671.29p, metric10 703.32p 2026-08-15 02:10:18.734709: Marginal costs baseline metric (no standing charge): 621.3057 2026-08-15 02:10:18.977832: Marginal energy costs matrix computed: min=14.24 max=26.62 2026-08-15 02:10:19.043382: Rate array import [{'start': 130, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2130, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 130, 'end': 2130, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 02:10:19.044097: - Your estimated bill for today is £6.02 and tomorrow is £5.51 2026-08-15 02:10:19.044143: - Import rates are expensive (24.6p - 27.6p) for the next 4 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 02:10:19.044165: - The battery is currently at 12% and is in eco mode for the next 9 hours. 2026-08-15 02:10:19.044183: - For the next 48 hours there will be no solar generation. 2026-08-15 02:10:19.044200: - You will run out of battery in 40 minutes. 2026-08-15 02:10:19.044217: - Your next charge slot will be in 9 hours where import rates will be cheap (15.5p). 2026-08-15 02:10:19.044234: 2026-08-15 02:10:19.102967: Plan calculation took 15.82 seconds 2026-08-15 02:10:19.103344: Inverter 0: Type SK Sunsynk 2026-08-15 02:10:19.103397: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 02:10:19.103644: Reserve min: 7%, battery_min: 7% 2026-08-15 02:10:19.103730: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 02:10:19.104055: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 551W, current battery voltage 51.2V, grid power -62W, load power 610W, PV Power 0W 2026-08-15 02:10:19.104285: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:10:19.104392: Inverter 0 scheduled charge enable is False 2026-08-15 02:10:19.104432: Inverter 0 charge windows currently [] 2026-08-15 02:10:19.104481: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 02:10:19.104598: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:10:19.104633: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:10:19.104670: Inverter 0 scheduled discharge enable is False 2026-08-15 02:10:19.104796: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:10:19.104833: Inverter 0 discharge windows currently [] 2026-08-15 02:10:19.104855: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:10:19.104878: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:10:19.104895: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:10:19.158330: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-15 02:10:19.158511: Inverter 0 disabled charge window while waiting for schedule (now 08-15 02:10:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 02:10:19.158614: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:10:19.158866: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:10:19.158960: No export window planned 2026-08-15 02:10:19.159160: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 02:10:19.159206: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:10:19.159393: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:10:19.159619: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 02:10:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 02:10:19.159682: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 02:10:19.159778: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 02:10:19.159952: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:10:19.160007: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:10:19.160070: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:10:19.160124: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:10:19.160188: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:10:19.160251: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:10:19.160312: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:10:19.160429: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:10:19.160496: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:10:19.160558: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:10:19.160612: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:10:19.160673: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:10:19.160735: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:10:19.160794: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:10:19.160843: Inverter 0 count register writes 0 2026-08-15 02:10:19.181421: Total inverter register writes now 815 2026-08-15 02:10:19.215563: Info: Completed run status Demand 2026-08-15 02:10:19.222368: Info: record_status Demand 2026-08-15 02:10:19.228817: Saved current settings to /config/predbat_config.json 2026-08-15 02:10:19.229147: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 02:10:57.338883: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:10:57.339116: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:10:57.339157: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:10:57.339341: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:10:57.339399: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:10:57.339420: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:10:57.339438: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:13:11.560744: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:13:11.561020: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:13:11.561068: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:13:11.561221: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:13:11.561260: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:13:11.561280: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:13:11.561297: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:15:00.764766: --------------- PredBat - update at 2026-08-15 02:15:00+01:00 with clock skew 0 minutes, minutes now 135 2026-08-15 02:15:00.765498: Saved current settings to /config/predbat_config.json 2026-08-15 02:15:00.765640: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 10.0 minutes 2026-08-15 02:15:00.765745: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 02:15:00.765850: Autoupdate: Currently up to date 2026-08-15 02:15:00.782112: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 02:15:00.782207: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 02:15:00.782399: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 02:15:00.782912: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 02:15:00.783023: Predbat mode is set to Control charge & discharge 2026-08-15 02:15:00.940097: Found 21602 load_today datapoints going back 28 days 2026-08-15 02:15:00.940228: Using load_power data to fill gaps in load_today data 2026-08-15 02:15:01.620828: Processing 721 30-minute periods for power integration 2026-08-15 02:15:01.767532: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 02:15:01.767671: Car charging hold False, threshold 6.0kWh 2026-08-15 02:15:01.767709: Current data so far today: load 2.4kWh, import 3.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 02:15:01.779354: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 02:15:01.779708: Standing charge is set to 49.98p 2026-08-15 02:15:01.805828: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 02:15:01.805909: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 02:15:01.806089: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 135.0 minutes 2026-08-15 02:15:01.806441: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 134.7 minutes 2026-08-15 02:15:01.809201: Loaded 47 datapoints of futurerate analysis 2026-08-15 02:15:01.879514: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 02:15:01.929693: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 02:15:01.930095: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 02:15:01.965778: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 02:15:01.965882: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 02:15:01.966974: High export rate found rates in range 99p to -99p 2026-08-15 02:15:02.029715: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 02:15:02.029842: Car 0 charging is not planned as it is not plugged in 2026-08-15 02:15:02.041381: Battery level now 1.91kWh, -1hr ago 1.87kWh, at midnight 1.66kWh, battery value change in the last hour 0.47p, change today 3.03p, rate_forward 11.83p 2026-08-15 02:15:02.041708: Last hour: net energy 0.93kWh, import 0.93kWh, export 0.0kWh, car 0kWh, load 0.8kWh, net cost 24.83p, import 24.83p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 02:15:02.080074: Today's energy total net 3.0kWh, import 3.0kWh, export 0.0kWh, cost 132.52p, import 82.54p, export 0.0p, carbon 0.0kg 2026-08-15 02:15:02.080181: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 02:15:02.138577: Using weighted-bucket historical load forecast over 14 days 2026-08-15 02:15:02.156495: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 02:15:02.156977: Today's predicted so far 1.75kWh with 0.0kWh car/iBoost excluded, 1.4kWh import ignored, and 1.75kWh forecast extra. 2026-08-15 02:15:02.157032: Today's actual load so far 2.44kWh with 0.0kWh car/iBoost excluded, and 1.4kWh import ignored. 2026-08-15 02:15:02.191996: Inverter 0: Type SK Sunsynk 2026-08-15 02:15:02.192074: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 02:15:02.192259: Reserve min: 7%, battery_min: 7% 2026-08-15 02:15:02.192357: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 02:15:02.192639: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 612W, current battery voltage 51.2V, grid power -54W, load power 484W, PV Power 0W 2026-08-15 02:15:02.192809: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:15:02.192896: Inverter 0 scheduled charge enable is False 2026-08-15 02:15:02.192936: Inverter 0 charge windows currently [] 2026-08-15 02:15:02.193026: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 02:15:02.193138: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:15:02.193170: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:15:02.193201: Inverter 0 scheduled discharge enable is False 2026-08-15 02:15:02.193309: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:15:02.193340: Inverter 0 discharge windows currently [] 2026-08-15 02:15:02.193359: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:15:02.193374: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:15:02.193388: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:15:02.240902: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 02:15:02.241010: Plan was last updated on 2026-08-15 02:10:00+01:00 and is now 5.0 minutes old 2026-08-15 02:15:02.241235: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 02:15:02.241297: Best export window [ ] 2026-08-15 02:15:02.241971: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 02:15:02.244570: Load divergence over 8.0 hours mean 428.39W, min 226.2W, max 892.2W, std dev 97.84W, divergence 11.42% 2026-08-15 02:15:02.259439: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 02:15:02.259568: LoadML is_calculating False 2026-08-15 02:15:02.259661: Creating pool of 12 processes to match your CPU count 2026-08-15 02:15:02.362704: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 851.57p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 29.51kWh, PV 0.0kWh 2026-08-15 02:15:02.474715: Battery has 0.5 hours left - now at 1.76kWh 2026-08-15 02:15:02.517408: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 884.1p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:40:00, load 30.8kWh, PV 0.0kWh 2026-08-15 02:15:02.604253: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 712.38p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:40:00, load 30.8kWh, PV 0.0kWh 2026-08-15 02:15:02.692248: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 681.31p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 29.51kWh, PV 0.0kWh 2026-08-15 02:15:02.692356: Saving plan best values to HA entities 2026-08-15 02:15:02.867403: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 02:15:02.872509: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 02:15:02.877863: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.21kWh, house 7.84kWh, export 0.0kWh, metric 681.31p, metric10 712.38p 2026-08-15 02:15:02.947310: Marginal costs baseline metric (no standing charge): 631.3221 2026-08-15 02:15:03.231451: Marginal energy costs matrix computed: min=14.28 max=26.55 2026-08-15 02:15:03.310579: Rate array import [{'start': 135, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2135, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 135, 'end': 2135, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 02:15:03.311318: - Your estimated bill for today is £6.04 and tomorrow is £5.53 2026-08-15 02:15:03.311363: - Import rates are expensive (24.6p - 27.6p) for the next 4 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 02:15:03.311385: - The battery is currently at 11% and is in eco mode for the next 9 hours. 2026-08-15 02:15:03.311403: - For the next 48 hours there will be no solar generation. 2026-08-15 02:15:03.311421: - You will run out of battery in 30 minutes. 2026-08-15 02:15:03.311442: - Your next charge slot will be in 9 hours where import rates will be cheap (15.5p). 2026-08-15 02:15:03.311465: 2026-08-15 02:15:03.365824: Plan calculation took 1.12 seconds 2026-08-15 02:15:03.369064: No high rate period found 2026-08-15 02:15:03.416250: Import threshold used for optimisation was 24.79p 2026-08-15 02:15:03.470452: Low import rate windows [0: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 1: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 2: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 3: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 4: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 5: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 6: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 7: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 8: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 9: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 10: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 11: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 12: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 13: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 14: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 15: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 16: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 17: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 18: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 19: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 20: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 21: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 22: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 23: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 24: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 25: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 26: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 27: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 28: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 29: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 30: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 31: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 32: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 33: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 34: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 35: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 36: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 37: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 38: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 39: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 40: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 41: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 42: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 43: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 44: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 45: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 46: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 47: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 48: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 49: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 50: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 51: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 52: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 53: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 54: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 55: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 56: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 57: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 58: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 59: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 60: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 61: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 62: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 63: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 64: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 65: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 66: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 67: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 68: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 69: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 70: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 71: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 72: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 73: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 74: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 75: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 76: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 77: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 78: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 79: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 80: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 81: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 82: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 83: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 84: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 85: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 86: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 87: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 88: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 89: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 90: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 91: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 92: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57, 93: 08-17 01:30:00 - 08-17 02:00:00 @ 26.5, 94: 08-17 02:00:00 - 08-17 02:30:00 @ 25.6] 2026-08-15 02:15:03.477789: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-15 02:15:03.477926: Inverter 0 disabled charge window while waiting for schedule (now 08-15 02:15:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 02:15:03.478043: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:15:03.478327: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:15:03.478426: No export window planned 2026-08-15 02:15:03.478567: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 02:15:03.478598: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:15:03.478755: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:15:03.478939: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 02:15:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 02:15:03.479003: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 02:15:03.479061: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 02:15:03.479153: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:15:03.479198: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:15:03.479228: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:15:03.479252: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:15:03.479279: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:15:03.479303: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:15:03.479327: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:15:03.479389: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:15:03.479418: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:15:03.479443: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:15:03.479473: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:15:03.479498: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:15:03.479526: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:15:03.479552: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:15:03.479572: Inverter 0 count register writes 0 2026-08-15 02:15:03.496180: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-15 02:15:03.508807: Total inverter register writes now 815 2026-08-15 02:15:03.548504: Info: Completed run status Demand 2026-08-15 02:15:03.558631: Info: record_status Demand 2026-08-15 02:15:03.566315: Saved current settings to /config/predbat_config.json 2026-08-15 02:15:03.566670: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 02:15:41.678257: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:15:41.678572: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:15:41.678706: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:15:41.678875: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:15:41.678969: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:15:41.678991: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:15:41.679031: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:17:41.891005: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:17:41.891298: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:17:41.891363: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:17:41.891588: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:17:41.891635: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:17:41.891682: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:17:41.891739: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:19:42.099114: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:19:42.099403: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:19:42.099505: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:19:42.099794: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:19:42.099841: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:19:42.099876: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:19:42.099921: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:20:00.194544: --------------- PredBat - update at 2026-08-15 02:20:00+01:00 with clock skew 0 minutes, minutes now 140 2026-08-15 02:20:00.195335: Saved current settings to /config/predbat_config.json 2026-08-15 02:20:00.195488: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 15.0 minutes 2026-08-15 02:20:00.195588: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 02:20:00.195715: Autoupdate: Currently up to date 2026-08-15 02:20:00.214208: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 02:20:00.214379: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 02:20:00.214636: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 02:20:00.215237: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 02:20:00.215371: Predbat mode is set to Control charge & discharge 2026-08-15 02:20:00.402993: Found 21602 load_today datapoints going back 28 days 2026-08-15 02:20:00.403138: Using load_power data to fill gaps in load_today data 2026-08-15 02:20:01.139445: Processing 721 30-minute periods for power integration 2026-08-15 02:20:01.295159: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 02:20:01.295295: Car charging hold False, threshold 6.0kWh 2026-08-15 02:20:01.295340: Current data so far today: load 2.45kWh, import 3.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 02:20:01.310080: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 02:20:01.310452: Standing charge is set to 49.98p 2026-08-15 02:20:01.342101: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 02:20:01.342210: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 02:20:01.342469: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 140.0 minutes 2026-08-15 02:20:01.342972: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 139.7 minutes 2026-08-15 02:20:01.346417: Loaded 47 datapoints of futurerate analysis 2026-08-15 02:20:01.429307: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 02:20:01.482673: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 02:20:01.483043: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 02:20:01.519287: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 02:20:01.519400: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 02:20:01.520467: High export rate found rates in range 99p to -99p 2026-08-15 02:20:01.587029: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 02:20:01.587157: Car 0 charging is not planned as it is not plugged in 2026-08-15 02:20:01.598884: Battery level now 1.76kWh, -1hr ago 1.64kWh, at midnight 1.66kWh, battery value change in the last hour 1.42p, change today 1.23p, rate_forward 11.83p 2026-08-15 02:20:01.599301: Last hour: net energy 0.9kWh, import 0.9kWh, export 0.0kWh, car 0kWh, load 0.75kWh, net cost 23.92p, import 23.92p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 02:20:01.649594: Today's energy total net 3.0kWh, import 3.0kWh, export 0.0kWh, cost 132.52p, import 82.54p, export 0.0p, carbon 0.0kg 2026-08-15 02:20:01.649785: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 02:20:01.724965: Using weighted-bucket historical load forecast over 14 days 2026-08-15 02:20:01.747019: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 02:20:01.747107: Today's predicted so far 1.8kWh with 0.0kWh car/iBoost excluded, 1.45kWh import ignored, and 1.8kWh forecast extra. 2026-08-15 02:20:01.747165: Today's actual load so far 2.44kWh with 0.0kWh car/iBoost excluded, and 1.45kWh import ignored. 2026-08-15 02:20:01.781774: Inverter 0: Type SK Sunsynk 2026-08-15 02:20:01.781865: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 02:20:01.782054: Reserve min: 7%, battery_min: 7% 2026-08-15 02:20:01.782130: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 02:20:01.782420: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 537W, current battery voltage 51.2V, grid power -55W, load power 597W, PV Power 0W 2026-08-15 02:20:01.782576: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:20:01.782660: Inverter 0 scheduled charge enable is False 2026-08-15 02:20:01.782689: Inverter 0 charge windows currently [] 2026-08-15 02:20:01.782732: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 02:20:01.782847: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:20:01.782906: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:20:01.782943: Inverter 0 scheduled discharge enable is False 2026-08-15 02:20:01.783074: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:20:01.783111: Inverter 0 discharge windows currently [] 2026-08-15 02:20:01.783134: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:20:01.783152: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:20:01.783169: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:20:01.838090: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 02:20:01.838200: Plan was last updated on 2026-08-15 02:10:00+01:00 and is now 10.0 minutes old 2026-08-15 02:20:01.838568: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 02:20:01.838619: Best export window [ ] 2026-08-15 02:20:01.839463: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 02:20:01.842685: Load divergence over 8.0 hours mean 426.93W, min 278.4W, max 766.8W, std dev 79.77W, divergence 9.34% 2026-08-15 02:20:01.861157: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 02:20:01.861269: LoadML is_calculating False 2026-08-15 02:20:01.861330: Creating pool of 12 processes to match your CPU count 2026-08-15 02:20:01.983736: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 850.85p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 29.56kWh, PV 0.0kWh 2026-08-15 02:20:02.097236: Battery has 0.5 hours left - now at 1.76kWh 2026-08-15 02:20:02.133106: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 883.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 30.85kWh, PV 0.0kWh 2026-08-15 02:20:02.202967: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 716.94p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 30.85kWh, PV 0.0kWh 2026-08-15 02:20:02.273873: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 686.8p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 29.56kWh, PV 0.0kWh 2026-08-15 02:20:02.273955: Saving plan best values to HA entities 2026-08-15 02:20:02.449832: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 02:20:02.455420: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 02:20:02.460159: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.73kWh, house 7.74kWh, export 0.0kWh, metric 686.8p, metric10 716.94p 2026-08-15 02:20:02.527460: Marginal costs baseline metric (no standing charge): 636.8137 2026-08-15 02:20:02.756114: Marginal energy costs matrix computed: min=14.32 max=26.49 2026-08-15 02:20:02.828673: Rate array import [{'start': 140, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2140, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 140, 'end': 2140, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 02:20:02.829483: - Your estimated bill for today is £6.01 and tomorrow is £5.54 2026-08-15 02:20:02.829540: - Import rates are expensive (24.6p - 27.6p) for the next 4 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 02:20:02.829564: - The battery is currently at 11% and is in eco mode for the next 9 hours. 2026-08-15 02:20:02.829582: - For the next 48 hours there will be no solar generation. 2026-08-15 02:20:02.829599: - You will run out of battery in 30 minutes. 2026-08-15 02:20:02.829616: - Your next charge slot will be in 9 hours where import rates will be cheap (15.5p). 2026-08-15 02:20:02.829632: 2026-08-15 02:20:02.885208: Plan calculation took 1.05 seconds 2026-08-15 02:20:02.888295: No high rate period found 2026-08-15 02:20:02.939354: Import threshold used for optimisation was 24.79p 2026-08-15 02:20:02.994170: Low import rate windows [0: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 1: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 2: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 3: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 4: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 5: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 6: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 7: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 8: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 9: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 10: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 11: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 12: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 13: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 14: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 15: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 16: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 17: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 18: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 19: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 20: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 21: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 22: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 23: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 24: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 25: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 26: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 27: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 28: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 29: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 30: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 31: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 32: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 33: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 34: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 35: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 36: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 37: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 38: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 39: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 40: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 41: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 42: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 43: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 44: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 45: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 46: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 47: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 48: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 49: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 50: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 51: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 52: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 53: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 54: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 55: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 56: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 57: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 58: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 59: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 60: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 61: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 62: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 63: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 64: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 65: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 66: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 67: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 68: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 69: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 70: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 71: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 72: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 73: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 74: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 75: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 76: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 77: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 78: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 79: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 80: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 81: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 82: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 83: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 84: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 85: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 86: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 87: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 88: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 89: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 90: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 91: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 92: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57, 93: 08-17 01:30:00 - 08-17 02:00:00 @ 26.5, 94: 08-17 02:00:00 - 08-17 02:30:00 @ 25.6] 2026-08-15 02:20:03.002250: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-15 02:20:03.002437: Inverter 0 disabled charge window while waiting for schedule (now 08-15 02:20:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 02:20:03.002620: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:20:03.003070: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:20:03.003231: No export window planned 2026-08-15 02:20:03.003461: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 02:20:03.003532: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:20:03.003810: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:20:03.004125: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 02:20:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 02:20:03.004222: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 02:20:03.004298: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 02:20:03.004402: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:20:03.004446: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:20:03.004475: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:20:03.004506: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:20:03.004536: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:20:03.004560: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:20:03.004583: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:20:03.004647: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:20:03.004684: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:20:03.004742: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:20:03.004776: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:20:03.004823: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:20:03.004855: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:20:03.004879: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:20:03.004906: Inverter 0 count register writes 0 2026-08-15 02:20:03.021509: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-15 02:20:03.021715: Recompute is saving previous plan... 2026-08-15 02:20:03.024930: Best charge window [ 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 0%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 0%, 17-08 01:00:00 - 17-08 01:30:00 @ 27.57p 0%, 17-08 01:30:00 - 17-08 02:00:00 @ 26.5p 0%, 17-08 02:00:00 - 17-08 02:30:00 @ 25.6p 0% ] 2026-08-15 02:20:03.025049: Best export window [ ] 2026-08-15 02:20:03.025914: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 02:20:03.028929: Load divergence over 8.0 hours mean 426.93W, min 278.4W, max 766.8W, std dev 79.77W, divergence 9.34% 2026-08-15 02:20:03.046121: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 02:20:03.046217: LoadML is_calculating False 2026-08-15 02:20:03.046279: Creating pool of 12 processes to match your CPU count 2026-08-15 02:20:03.135091: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-15 02:20:03.137006: Optimise levels pass started at 2026-08-15 02:20:03 2026-08-15 02:20:03.137069: Optimise all windows, total charge 94 export 1 2026-08-15 02:20:04.221990: >> Region optimisation pass width 960 gives best_metric 795.63p, best_cost 801.84p, best_cycle 49.07kWh, best_import 40.56kWh 2026-08-15 02:20:04.637879: >> Region optimisation pass width 480 gives best_metric 795.63p, best_cost 801.84p, best_cycle 49.07kWh, best_import 40.56kWh 2026-08-15 02:20:05.172720: >> Region optimisation pass width 240 gives best_metric 795.63p, best_cost 801.84p, best_cycle 49.07kWh, best_import 40.56kWh 2026-08-15 02:20:06.226745: >> Region optimisation pass width 120 gives best_metric 795.63p, best_cost 801.84p, best_cycle 49.07kWh, best_import 40.56kWh 2026-08-15 02:20:06.227123: Calculated end_record as 08-16 11:30:00 based on best_price 16.34p, next_charge_start 08-15 11:30:00, max_windows 66 2026-08-15 02:20:06.227385: Optimise levels pass ended at 2026-08-15 02:20:06, duration 3.1 seconds tried 325 combinations 2026-08-15 02:20:06.227472: Set best_price_charge_level 17.6p, best_price_export_level 0p, best_price_charge 16.34p, best_cost_export 0p, best_metric 795.63p, best_keep 0kWh, best_cycle 49.07kWh, best_carbon 0kg, best_import 40.56kWh 2026-08-15 02:20:06.250396: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 16.34p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-15 02:20:10.678465: Tweak plan optimisation started metric 612.23p, cost 620.68p 2026-08-15 02:20:10.962808: Tweak optimisation finished metric 612.23p, cost 620.68p, metric_keep 0kWh, cycle 30.39kWh, carbon 0kg, import 28.43kWh, changed 8 window(s) 2026-08-15 02:20:10.985296: Swap charge optimisation started metric 612.23p, cost 620.68p, min_improvement_swap 0.1p 2026-08-15 02:20:17.173573: Swap charge optimisation finished metric 612.23p, cost 620.68p 2026-08-15 02:20:17.300773: Pruned 1 dead plan slot(s) in 11 trial(s), nominal metric 607.44p -> 607.44p, plan now metric 612.26p, cost 620.68p, cycle 30.39kWh, import 28.43kWh 2026-08-15 02:20:17.312643: Raw charge windows [ 15-08 02:00:00 - 15-08 02:30:00 @ 25.6p 0%, 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 9%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 100%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 100%, 17-08 01:00:00 - 17-08 01:30:00 @ 27.57p 100%, 17-08 01:30:00 - 17-08 02:00:00 @ 26.5p 100%, 17-08 02:00:00 - 17-08 02:30:00 @ 25.6p 100% ] reserve 1.12 2026-08-15 02:20:17.313407: Unclipped charge windows [ 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 02:30:00 @ 26.37p 100% ] reserve 1.12 2026-08-15 02:20:17.313816: Unfiltered charge windows [ 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 02:30:00 @ 26.37p 100% ] reserve 1.12 2026-08-15 02:20:17.314129: Filtered charge windows [ 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 02:30:00 @ 26.37p 100% ] reserve 1.12 2026-08-15 02:20:17.351559: Previous plan best metric is 612.35 (cost 620.8) and new plan best metric is 612.23 (cost 620.68) 2026-08-15 02:20:17.352211: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-15 02:20:17.352442: Plan valid is now true after recompute was False 2026-08-15 02:20:17.380851: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 847.72p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 29.36kWh, PV 0.0kWh 2026-08-15 02:20:17.493253: Battery has 0.5 hours left - now at 1.76kWh 2026-08-15 02:20:17.537623: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 880.11p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 30.64kWh, PV 0.0kWh 2026-08-15 02:20:17.614665: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 702.92p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 30.64kWh, PV 0.0kWh 2026-08-15 02:20:17.687506: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 670.79p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 29.36kWh, PV 0.0kWh 2026-08-15 02:20:17.687589: Saving plan best values to HA entities 2026-08-15 02:20:17.833330: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0.0 2026-08-15 02:20:17.838395: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0.0 2026-08-15 02:20:17.843416: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 20.69kWh, house 7.74kWh, export 0.0kWh, metric 670.79p, metric10 702.92p 2026-08-15 02:20:17.911491: Marginal costs baseline metric (no standing charge): 620.8023 2026-08-15 02:20:18.177896: Marginal energy costs matrix computed: min=14.32 max=26.49 2026-08-15 02:20:18.244379: Rate array import [{'start': 140, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2130, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 140, 'end': 2130, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 02:20:18.245160: - Your estimated bill for today is £6.01 and tomorrow is £5.54 2026-08-15 02:20:18.245210: - Import rates are expensive (24.6p - 27.6p) for the next 4 and three quarters hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 02:20:18.245243: - The battery is currently at 11% and is in eco mode for the next 9 hours. 2026-08-15 02:20:18.245270: - For the next 48 hours there will be no solar generation. 2026-08-15 02:20:18.245287: - You will run out of battery in 30 minutes. 2026-08-15 02:20:18.245305: - Your next charge slot will be in 9 hours where import rates will be cheap (15.5p). 2026-08-15 02:20:18.245326: 2026-08-15 02:20:18.298918: Plan calculation took 15.28 seconds 2026-08-15 02:20:18.299282: Inverter 0: Type SK Sunsynk 2026-08-15 02:20:18.299328: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 02:20:18.299546: Reserve min: 7%, battery_min: 7% 2026-08-15 02:20:18.299630: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 02:20:18.299985: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 534W, current battery voltage 51.2V, grid power -55W, load power 594W, PV Power 0W 2026-08-15 02:20:18.300221: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:20:18.300328: Inverter 0 scheduled charge enable is False 2026-08-15 02:20:18.300369: Inverter 0 charge windows currently [] 2026-08-15 02:20:18.300405: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 02:20:18.300522: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:20:18.300558: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:20:18.300593: Inverter 0 scheduled discharge enable is False 2026-08-15 02:20:18.300756: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:20:18.300799: Inverter 0 discharge windows currently [] 2026-08-15 02:20:18.300821: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:20:18.300843: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:20:18.300861: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:20:18.355051: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-15 02:20:18.355199: Inverter 0 disabled charge window while waiting for schedule (now 08-15 02:20:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 02:20:18.355278: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:20:18.355465: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:20:18.355547: No export window planned 2026-08-15 02:20:18.355663: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 02:20:18.355740: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:20:18.355886: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:20:18.356051: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 02:20:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 02:20:18.356102: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 02:20:18.356159: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 02:20:18.356254: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:20:18.356298: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:20:18.356335: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:20:18.356367: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:20:18.356395: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:20:18.356418: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:20:18.356448: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:20:18.356505: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:20:18.356539: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:20:18.356564: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:20:18.356593: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:20:18.356617: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:20:18.356640: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:20:18.356663: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:20:18.356688: Inverter 0 count register writes 0 2026-08-15 02:20:18.377940: Total inverter register writes now 815 2026-08-15 02:20:18.408358: Info: Completed run status Demand 2026-08-15 02:20:18.414610: Info: record_status Demand 2026-08-15 02:20:18.420988: Saved current settings to /config/predbat_config.json 2026-08-15 02:20:18.421274: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 02:20:56.522114: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:20:56.522426: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:20:56.522488: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:20:56.522779: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:20:56.522850: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:20:56.522876: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:20:56.522895: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:22:56.756543: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:22:56.756860: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:22:56.757006: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:22:56.757227: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:22:56.757267: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:22:56.757289: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:22:56.757307: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:24:56.970891: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:24:56.971134: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:24:56.971171: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:24:56.971302: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:24:56.971341: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:24:56.971362: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:24:56.971379: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:25:00.045606: --------------- PredBat - update at 2026-08-15 02:25:00+01:00 with clock skew 0 minutes, minutes now 145 2026-08-15 02:25:00.046408: Saved current settings to /config/predbat_config.json 2026-08-15 02:25:00.046541: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 20.0 minutes 2026-08-15 02:25:00.046651: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 02:25:00.046744: Autoupdate: Currently up to date 2026-08-15 02:25:00.066435: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 02:25:00.066558: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 02:25:00.066824: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 02:25:00.067389: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 02:25:00.067579: Predbat mode is set to Control charge & discharge 2026-08-15 02:25:00.243395: Found 21602 load_today datapoints going back 28 days 2026-08-15 02:25:00.243539: Using load_power data to fill gaps in load_today data 2026-08-15 02:25:01.084254: Processing 721 30-minute periods for power integration 2026-08-15 02:25:01.262875: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 02:25:01.263016: Car charging hold False, threshold 6.0kWh 2026-08-15 02:25:01.263078: Current data so far today: load 2.5kWh, import 3.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 02:25:01.277574: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 02:25:01.278044: Standing charge is set to 49.98p 2026-08-15 02:25:01.305451: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 02:25:01.305538: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 02:25:01.305786: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 145.0 minutes 2026-08-15 02:25:01.306207: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 144.7 minutes 2026-08-15 02:25:01.309812: Loaded 47 datapoints of futurerate analysis 2026-08-15 02:25:01.396834: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 02:25:01.458236: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 02:25:01.458604: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 02:25:01.501162: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 02:25:01.501623: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 02:25:01.503848: High export rate found rates in range 99p to -99p 2026-08-15 02:25:01.586062: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 02:25:01.586214: Car 0 charging is not planned as it is not plugged in 2026-08-15 02:25:01.599461: Battery level now 1.76kWh, -1hr ago 1.64kWh, at midnight 1.66kWh, battery value change in the last hour 1.42p, change today 1.23p, rate_forward 11.83p 2026-08-15 02:25:01.599837: Last hour: net energy 0.87kWh, import 0.87kWh, export 0.0kWh, car 0kWh, load 0.7kWh, net cost 23.0p, import 23.0p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 02:25:01.650066: Today's energy total net 3.0kWh, import 3.0kWh, export 0.0kWh, cost 132.52p, import 82.54p, export 0.0p, carbon 0.0kg 2026-08-15 02:25:01.650198: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 02:25:01.723594: Using weighted-bucket historical load forecast over 14 days 2026-08-15 02:25:01.745411: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 02:25:01.745515: Today's predicted so far 1.86kWh with 0.0kWh car/iBoost excluded, 1.47kWh import ignored, and 1.86kWh forecast extra. 2026-08-15 02:25:01.745547: Today's actual load so far 2.35kWh with 0.0kWh car/iBoost excluded, and 1.47kWh import ignored. 2026-08-15 02:25:01.784763: Inverter 0: Type SK Sunsynk 2026-08-15 02:25:01.784869: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 02:25:01.785161: Reserve min: 7%, battery_min: 7% 2026-08-15 02:25:01.785292: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 02:25:01.785624: Inverter 0 SoC: 1.76kW 11%, current charge rate 5000W, current discharge rate 5250W, current battery power 2507W, current battery voltage 51.2V, grid power -51W, load power 2551W, PV Power 0W 2026-08-15 02:25:01.785852: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:25:01.785972: Inverter 0 scheduled charge enable is False 2026-08-15 02:25:01.786022: Inverter 0 charge windows currently [] 2026-08-15 02:25:01.786080: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 02:25:01.786240: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:25:01.786283: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:25:01.786331: Inverter 0 scheduled discharge enable is False 2026-08-15 02:25:01.786526: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:25:01.786593: Inverter 0 discharge windows currently [] 2026-08-15 02:25:01.786621: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:25:01.786664: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:25:01.786700: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:25:01.848526: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 02:25:01.848637: Plan was last updated on 2026-08-15 02:20:00+01:00 and is now 5.0 minutes old 2026-08-15 02:25:01.849005: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 02:25:01.849055: Best export window [ ] 2026-08-15 02:25:01.849918: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 02:25:01.853160: Load divergence over 8.0 hours mean 425.42W, min 294.6W, max 960.0W, std dev 90.12W, divergence 10.59% 2026-08-15 02:25:01.871674: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 02:25:01.872405: LoadML is_calculating False 2026-08-15 02:25:01.872521: Creating pool of 12 processes to match your CPU count 2026-08-15 02:25:01.994041: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 847.42p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:00:00, load 29.42kWh, PV 0.0kWh 2026-08-15 02:25:02.113991: Battery has 0.58 hours left - now at 1.76kWh 2026-08-15 02:25:02.156993: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 879.8p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:55:00, load 30.7kWh, PV 0.0kWh 2026-08-15 02:25:02.241732: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 707.8p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:55:00, load 30.7kWh, PV 0.0kWh 2026-08-15 02:25:02.317926: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 676.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:00:00, load 29.42kWh, PV 0.0kWh 2026-08-15 02:25:02.318017: Saving plan best values to HA entities 2026-08-15 02:25:02.472895: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-15 02:25:02.477728: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 02:25:02.482622: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.2kWh, house 7.66kWh, export 0.0kWh, metric 676.62p, metric10 707.8p 2026-08-15 02:25:02.558075: Marginal costs baseline metric (no standing charge): 626.6375 2026-08-15 02:25:02.854619: Marginal energy costs matrix computed: min=14.35 max=26.42 2026-08-15 02:25:02.930408: Rate array import [{'start': 145, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2135, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 145, 'end': 2135, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 02:25:02.931281: - Your estimated bill for today is £5.99 and tomorrow is £5.55 2026-08-15 02:25:02.931363: - Import rates are expensive (24.6p - 27.6p) for the next 4 and a half hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 02:25:02.931406: - The battery is currently at 11% and is in eco mode for the next 9 hours. 2026-08-15 02:25:02.931442: - For the next 48 hours there will be no solar generation. 2026-08-15 02:25:02.931490: - You will run out of battery in 35 minutes. 2026-08-15 02:25:02.931527: - Your next charge slot will be in 9 hours where import rates will be cheap (15.5p). 2026-08-15 02:25:02.931561: 2026-08-15 02:25:02.984047: Plan calculation took 1.14 seconds 2026-08-15 02:25:02.986691: No high rate period found 2026-08-15 02:25:03.035708: Import threshold used for optimisation was 24.79p 2026-08-15 02:25:03.084539: Low import rate windows [0: 08-15 02:00:00 - 08-15 02:30:00 @ 25.6, 1: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 2: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 3: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 4: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 5: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 6: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 7: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 8: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 9: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 10: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 11: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 12: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 13: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 14: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 15: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 16: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 17: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 18: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 19: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 20: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 21: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 22: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 23: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 24: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 25: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 26: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 27: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 28: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 29: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 30: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 31: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 32: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 33: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 34: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 35: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 36: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 37: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 38: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 39: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 40: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 41: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 42: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 43: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 44: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 45: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 46: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 47: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 48: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 49: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 50: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 51: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 52: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 53: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 54: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 55: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 56: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 57: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 58: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 59: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 60: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 61: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 62: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 63: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 64: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 65: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 66: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 67: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 68: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 69: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 70: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 71: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 72: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 73: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 74: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 75: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 76: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 77: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 78: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 79: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 80: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 81: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 82: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 83: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 84: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 85: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 86: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 87: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 88: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 89: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 90: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 91: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 92: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57, 93: 08-17 01:30:00 - 08-17 02:00:00 @ 26.5, 94: 08-17 02:00:00 - 08-17 02:30:00 @ 25.6] 2026-08-15 02:25:03.090791: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 11%, target 100% 2026-08-15 02:25:03.090918: Inverter 0 disabled charge window while waiting for schedule (now 08-15 02:25:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 02:25:03.091073: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:25:03.091342: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:25:03.091435: No export window planned 2026-08-15 02:25:03.091605: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 02:25:03.091642: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:25:03.091788: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:25:03.091998: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 02:25:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 02:25:03.092105: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 02:25:03.092179: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 02:25:03.092270: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:25:03.092316: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:25:03.092350: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:25:03.092375: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:25:03.092400: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:25:03.092425: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:25:03.092450: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:25:03.092519: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:25:03.092548: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:25:03.092573: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:25:03.092598: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:25:03.092621: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:25:03.092651: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:25:03.092709: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:25:03.092847: Inverter 0 count register writes 0 2026-08-15 02:25:03.107632: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-15 02:25:03.112586: Total inverter register writes now 815 2026-08-15 02:25:03.144174: Info: Completed run status Demand 2026-08-15 02:25:03.150239: Info: record_status Demand 2026-08-15 02:25:03.156403: Saved current settings to /config/predbat_config.json 2026-08-15 02:25:03.156732: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 02:25:42.260095: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:25:42.260346: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:25:42.260410: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:25:42.260608: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:25:42.260651: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:25:42.260674: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:25:42.260692: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:27:42.472590: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:27:42.472844: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:27:42.472883: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:27:42.473068: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:27:42.473138: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:27:42.473156: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:27:42.473177: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:29:56.699767: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:29:56.700124: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:29:56.700173: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:29:56.700317: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:29:56.700357: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:29:56.700378: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:29:56.700395: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:30:00.803877: --------------- PredBat - update at 2026-08-15 02:30:00+01:00 with clock skew 0 minutes, minutes now 150 2026-08-15 02:30:00.804830: Saved current settings to /config/predbat_config.json 2026-08-15 02:30:00.804997: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 25.0 minutes 2026-08-15 02:30:00.805098: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 02:30:00.805205: Autoupdate: Currently up to date 2026-08-15 02:30:00.825210: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 02:30:00.825359: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 02:30:00.825569: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 02:30:00.826179: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 02:30:00.826354: Predbat mode is set to Control charge & discharge 2026-08-15 02:30:01.049422: Found 21602 load_today datapoints going back 28 days 2026-08-15 02:30:01.049567: Using load_power data to fill gaps in load_today data 2026-08-15 02:30:01.916634: Processing 721 30-minute periods for power integration 2026-08-15 02:30:02.111195: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 02:30:02.111364: Car charging hold False, threshold 6.0kWh 2026-08-15 02:30:02.111470: Current data so far today: load 2.55kWh, import 3.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 02:30:02.126555: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 02:30:02.126992: Standing charge is set to 49.98p 2026-08-15 02:30:02.154519: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 02:30:02.154622: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 02:30:02.154896: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 150.0 minutes 2026-08-15 02:30:02.155311: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 149.7 minutes 2026-08-15 02:30:02.158908: Loaded 47 datapoints of futurerate analysis 2026-08-15 02:30:02.245343: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 02:30:02.307277: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 02:30:02.307834: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 02:30:02.351199: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 02:30:02.351325: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 02:30:02.352557: High export rate found rates in range 99p to -99p 2026-08-15 02:30:02.432167: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 02:30:02.432329: Car 0 charging is not planned as it is not plugged in 2026-08-15 02:30:02.446027: Battery level now 1.76kWh, -1hr ago 1.56kWh, at midnight 1.66kWh, battery value change in the last hour 2.37p, change today 1.23p, rate_forward 11.83p 2026-08-15 02:30:02.446470: Last hour: net energy 0.83kWh, import 0.83kWh, export 0.0kWh, car 0kWh, load 0.6kWh, net cost 22.08p, import 22.08p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 02:30:02.499448: Today's energy total net 3.0kWh, import 3.0kWh, export 0.0kWh, cost 132.52p, import 82.54p, export 0.0p, carbon 0.0kg 2026-08-15 02:30:02.499575: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 02:30:02.580047: Using weighted-bucket historical load forecast over 14 days 2026-08-15 02:30:02.601944: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 02:30:02.602055: Today's predicted so far 1.99kWh with 0.0kWh car/iBoost excluded, 1.39kWh import ignored, and 1.99kWh forecast extra. 2026-08-15 02:30:02.602498: Today's actual load so far 2.56kWh with 0.0kWh car/iBoost excluded, and 1.39kWh import ignored. 2026-08-15 02:30:02.646813: Inverter 0: Type SK Sunsynk 2026-08-15 02:30:02.646911: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 02:30:02.647123: Reserve min: 7%, battery_min: 7% 2026-08-15 02:30:02.647209: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 02:30:02.647505: Inverter 0 SoC: 1.44kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4488W, current battery voltage 51.2V, grid power -7176W, load power 2184W, PV Power 0W 2026-08-15 02:30:02.647671: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:30:02.647759: Inverter 0 scheduled charge enable is False 2026-08-15 02:30:02.647808: Inverter 0 charge windows currently [] 2026-08-15 02:30:02.647847: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 02:30:02.647959: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:30:02.647994: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:30:02.648029: Inverter 0 scheduled discharge enable is False 2026-08-15 02:30:02.648152: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:30:02.648189: Inverter 0 discharge windows currently [] 2026-08-15 02:30:02.648215: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:30:02.648251: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:30:02.648273: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:30:02.707917: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 02:30:02.708043: Plan was last updated on 2026-08-15 02:20:00+01:00 and is now 10.0 minutes old 2026-08-15 02:30:02.708504: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 02:30:02.708583: Best export window [ ] 2026-08-15 02:30:02.710067: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 02:30:02.714753: Load divergence over 8.0 hours mean 425.36W, min 290.4W, max 1000.8W, std dev 94.53W, divergence 11.11% 2026-08-15 02:30:02.733193: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 02:30:02.733316: LoadML is_calculating False 2026-08-15 02:30:02.733388: Creating pool of 12 processes to match your CPU count 2026-08-15 02:30:02.850746: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 852.43p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 29.41kWh, PV 0.0kWh 2026-08-15 02:30:02.980250: Battery has 0.25 hours left - now at 1.44kWh 2026-08-15 02:30:03.035683: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 884.65p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 30.69kWh, PV 0.0kWh 2026-08-15 02:30:03.129072: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 718.25p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 30.69kWh, PV 0.0kWh 2026-08-15 02:30:03.213064: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 688.61p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 29.41kWh, PV 0.0kWh 2026-08-15 02:30:03.213181: Saving plan best values to HA entities 2026-08-15 02:30:03.390689: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-15 02:30:03.397610: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 02:30:03.403798: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.7kWh, house 7.82kWh, export 0.0kWh, metric 688.61p, metric10 718.25p 2026-08-15 02:30:03.478829: Marginal costs baseline metric (no standing charge): 638.6251 2026-08-15 02:30:03.737312: Marginal energy costs matrix computed: min=14.39 max=26.36 2026-08-15 02:30:03.817939: Rate array import [{'start': 150, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2140, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 150, 'end': 2140, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 02:30:03.818687: - Your estimated bill for today is £6.04 and tomorrow is £5.51 2026-08-15 02:30:03.818734: - Import rates are expensive (24.6p - 27.6p) for the next 4 and a half hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 02:30:03.818757: - The battery is currently at 9% and is in eco mode for the next 9 hours. 2026-08-15 02:30:03.818776: - For the next 48 hours there will be no solar generation. 2026-08-15 02:30:03.818808: - You will run out of battery in 15 minutes. 2026-08-15 02:30:03.818826: - Your next charge slot will be in 9 hours where import rates will be cheap (15.5p). 2026-08-15 02:30:03.818845: 2026-08-15 02:30:03.880077: Plan calculation took 1.17 seconds 2026-08-15 02:30:03.883335: No high rate period found 2026-08-15 02:30:03.932716: Import threshold used for optimisation was 24.79p 2026-08-15 02:30:03.991520: Low import rate windows [0: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 1: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 2: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 3: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 4: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 5: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 6: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 7: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 8: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 9: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 10: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 11: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 12: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 13: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 14: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 15: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 16: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 17: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 18: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 19: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 20: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 21: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 22: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 23: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 24: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 25: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 26: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 27: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 28: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 29: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 30: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 31: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 32: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 33: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 34: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 35: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 36: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 37: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 38: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 39: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 40: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 41: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 42: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 43: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 44: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 45: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 46: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 47: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 48: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 49: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 50: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 51: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 52: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 53: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 54: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 55: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 56: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 57: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 58: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 59: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 60: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 61: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 62: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 63: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 64: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 65: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 66: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 67: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 68: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 69: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 70: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 71: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 72: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 73: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 74: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 75: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 76: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 77: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 78: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 79: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 80: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 81: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 82: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 83: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 84: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 85: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 86: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 87: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 88: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 89: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 90: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 91: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57, 92: 08-17 01:30:00 - 08-17 02:00:00 @ 26.5, 93: 08-17 02:00:00 - 08-17 02:30:00 @ 25.6] 2026-08-15 02:30:03.999498: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-15 02:30:03.999641: Inverter 0 disabled charge window while waiting for schedule (now 08-15 02:30:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 02:30:03.999811: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:30:04.000125: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:30:04.000230: No export window planned 2026-08-15 02:30:04.000424: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 02:30:04.000473: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:30:04.000671: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:30:04.000910: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 02:30:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 02:30:04.001047: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 02:30:04.001166: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 02:30:04.001314: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:30:04.001370: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:30:04.001459: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:30:04.001520: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:30:04.001583: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:30:04.001643: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:30:04.001704: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:30:04.001843: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:30:04.001891: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:30:04.001939: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:30:04.001992: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:30:04.002052: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:30:04.002115: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:30:04.002177: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:30:04.002226: Inverter 0 count register writes 0 2026-08-15 02:30:04.018505: Will recompute the plan as it is now 10.0 minutes old and will exceed the max age of 10 minutes before the next run 2026-08-15 02:30:04.018695: Recompute is saving previous plan... 2026-08-15 02:30:04.021950: Best charge window [ 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 0%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 0%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 0%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 0%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 0%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 0%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 0%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 0%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 0%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 0%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 0%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 0%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 0%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 0%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 0%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 0%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 0%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 0%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 0%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 0%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 0%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 0%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 0%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 0%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 0%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 0%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 0%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 0%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 0%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 0%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 0%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 0%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 0%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 0%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 0%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 0%, 17-08 01:00:00 - 17-08 01:30:00 @ 27.57p 0%, 17-08 01:30:00 - 17-08 02:00:00 @ 26.5p 0%, 17-08 02:00:00 - 17-08 02:30:00 @ 25.6p 0% ] 2026-08-15 02:30:04.022036: Best export window [ ] 2026-08-15 02:30:04.022838: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 02:30:04.025914: Load divergence over 8.0 hours mean 425.36W, min 290.4W, max 1000.8W, std dev 94.53W, divergence 11.11% 2026-08-15 02:30:04.043435: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 02:30:04.043567: LoadML is_calculating False 2026-08-15 02:30:04.043637: Creating pool of 12 processes to match your CPU count 2026-08-15 02:30:04.127157: Calculate Best options: mode(Control charge & discharge), calculate_export_oncharge(False), calculate_export_on_pv(True), set_export_freeze_only(False), set_discharge_during_charge(True), combine_charge_slots(False), combine_export_slots(False), combine_rate_threshold(0.0), best_soc_min(0.0 kWh), best_soc_max(0.0 kWh), best_soc_keep(0.0 kWh), inverter_loss(4%), battery_loss(3%), battery_loss_discharge (3%), inverter_hybrid(True), metric_min_improvement(0.0p), metric_min_improvement_export(0.1p), metric_min_improvement_export_freeze(0.1p), metric_battery_cycle(0.0p/kWh), metric_battery_value_scaling(1.0 x) 2026-08-15 02:30:04.128710: Optimise levels pass started at 2026-08-15 02:30:04 2026-08-15 02:30:04.128756: Optimise all windows, total charge 94 export 1 2026-08-15 02:30:05.273128: >> Region optimisation pass width 960 gives best_metric 800.25p, best_cost 807.71p, best_cycle 49.19kWh, best_import 40.89kWh 2026-08-15 02:30:05.703521: >> Region optimisation pass width 480 gives best_metric 800.25p, best_cost 807.71p, best_cycle 49.19kWh, best_import 40.89kWh 2026-08-15 02:30:06.504574: >> Region optimisation pass width 240 gives best_metric 800.08p, best_cost 806.42p, best_cycle 49.09kWh, best_import 40.79kWh 2026-08-15 02:30:07.615710: >> Region optimisation pass width 120 gives best_metric 800.08p, best_cost 806.42p, best_cycle 49.09kWh, best_import 40.79kWh 2026-08-15 02:30:07.616082: Calculated end_record as 08-16 11:30:00 based on best_price 16.34p, next_charge_start 08-15 11:30:00, max_windows 65 2026-08-15 02:30:07.616150: Optimise levels pass ended at 2026-08-15 02:30:07, duration 3.5 seconds tried 365 combinations 2026-08-15 02:30:07.616203: Set best_price_charge_level 17.6p, best_price_export_level 0p, best_price_charge 16.34p, best_cost_export 0p, best_metric 800.08p, best_keep 0kWh, best_cycle 49.09kWh, best_carbon 0kg, best_import 40.79kWh 2026-08-15 02:30:07.632257: Starting detailed optimisation end_record 08-16 11:30:00, best_price_charge 16.34p, best_price_export 0p. lowest_price_charge 13.77p with charge limits [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0]kWh and export limits []kWh 2026-08-15 02:30:12.152394: Tweak plan optimisation started metric 614.21p, cost 622.73p 2026-08-15 02:30:12.421293: Tweak optimisation finished metric 614.21p, cost 622.73p, metric_keep 0kWh, cycle 30.84kWh, carbon 0kg, import 28.55kWh, changed 8 window(s) 2026-08-15 02:30:12.443339: Swap charge optimisation started metric 614.21p, cost 622.73p, min_improvement_swap 0.1p 2026-08-15 02:30:18.821402: Swap charge optimisation finished metric 614.21p, cost 622.73p 2026-08-15 02:30:18.953148: Pruned 1 dead plan slot(s) in 11 trial(s), nominal metric 609.48p -> 609.48p, plan now metric 614.22p, cost 622.73p, cycle 30.84kWh, import 28.55kWh 2026-08-15 02:30:18.965147: Raw charge windows [ 15-08 02:30:00 - 15-08 03:00:00 @ 24.79p 0%, 15-08 03:00:00 - 15-08 03:30:00 @ 25.08p 0%, 15-08 03:30:00 - 15-08 04:00:00 @ 24.62p 0%, 15-08 04:00:00 - 15-08 04:30:00 @ 27.02p 0%, 15-08 04:30:00 - 15-08 05:00:00 @ 26.47p 0%, 15-08 05:00:00 - 15-08 05:30:00 @ 26.25p 0%, 15-08 05:30:00 - 15-08 06:00:00 @ 26.4p 0%, 15-08 06:00:00 - 15-08 06:30:00 @ 25.7p 0%, 15-08 06:30:00 - 15-08 07:00:00 @ 27.63p 0%, 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 07:30:00 - 15-08 08:00:00 @ 26.7p 0%, 15-08 08:00:00 - 15-08 08:30:00 @ 22.92p 0%, 15-08 08:30:00 - 15-08 09:00:00 @ 22.48p 0%, 15-08 09:00:00 - 15-08 09:30:00 @ 23.55p 0%, 15-08 09:30:00 - 15-08 10:00:00 @ 23.64p 0%, 15-08 10:00:00 - 15-08 10:30:00 @ 19.66p 0%, 15-08 10:30:00 - 15-08 11:00:00 @ 17.66p 0%, 15-08 11:00:00 - 15-08 11:30:00 @ 16.56p 0%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 13:30:00 @ 15.36p 100%, 15-08 13:30:00 - 15-08 14:00:00 @ 15.74p 100%, 15-08 14:00:00 - 15-08 14:30:00 @ 14.57p 100%, 15-08 14:30:00 - 15-08 15:00:00 @ 13.77p 100%, 15-08 15:00:00 - 15-08 15:30:00 @ 15.02p 100%, 15-08 15:30:00 - 15-08 16:00:00 @ 15.87p 100%, 15-08 16:00:00 - 15-08 16:30:00 @ 33.13p 0%, 15-08 16:30:00 - 15-08 17:00:00 @ 33.13p 0%, 15-08 17:00:00 - 15-08 17:30:00 @ 38.46p 0%, 15-08 17:30:00 - 15-08 18:00:00 @ 40.44p 0%, 15-08 18:00:00 - 15-08 18:30:00 @ 41.55p 0%, 15-08 19:00:00 - 15-08 19:30:00 @ 32.58p 0%, 15-08 19:30:00 - 15-08 20:00:00 @ 32.9p 0%, 15-08 20:00:00 - 15-08 20:30:00 @ 31.99p 0%, 15-08 20:30:00 - 15-08 21:00:00 @ 32.1p 0%, 15-08 21:00:00 - 15-08 21:30:00 @ 31.71p 0%, 15-08 21:30:00 - 15-08 22:00:00 @ 31.67p 0%, 15-08 22:00:00 - 15-08 22:30:00 @ 31.77p 0%, 15-08 22:30:00 - 15-08 23:00:00 @ 29.81p 0%, 15-08 23:00:00 - 15-08 23:30:00 @ 27.8p 0%, 15-08 23:30:00 - 16-08 00:00:00 @ 29.09p 0%, 16-08 00:00:00 - 16-08 00:30:00 @ 28.47p 0%, 16-08 00:30:00 - 16-08 01:00:00 @ 27.18p 0%, 16-08 01:00:00 - 16-08 01:30:00 @ 27.57p 0%, 16-08 01:30:00 - 16-08 02:00:00 @ 26.5p 0%, 16-08 02:00:00 - 16-08 02:30:00 @ 25.6p 0%, 16-08 02:30:00 - 16-08 03:00:00 @ 24.79p 0%, 16-08 03:00:00 - 16-08 03:30:00 @ 25.08p 0%, 16-08 03:30:00 - 16-08 04:00:00 @ 24.62p 0%, 16-08 04:00:00 - 16-08 04:30:00 @ 27.02p 0%, 16-08 04:30:00 - 16-08 05:00:00 @ 26.47p 0%, 16-08 05:00:00 - 16-08 05:30:00 @ 26.25p 0%, 16-08 05:30:00 - 16-08 06:00:00 @ 26.4p 0%, 16-08 06:00:00 - 16-08 06:30:00 @ 25.7p 0%, 16-08 06:30:00 - 16-08 07:00:00 @ 27.63p 0%, 16-08 07:00:00 - 16-08 07:30:00 @ 22.73p 0%, 16-08 07:30:00 - 16-08 08:00:00 @ 26.7p 0%, 16-08 08:00:00 - 16-08 08:30:00 @ 22.92p 0%, 16-08 08:30:00 - 16-08 09:00:00 @ 22.48p 0%, 16-08 09:00:00 - 16-08 09:30:00 @ 23.55p 0%, 16-08 09:30:00 - 16-08 10:00:00 @ 23.64p 0%, 16-08 10:00:00 - 16-08 10:30:00 @ 19.66p 0%, 16-08 10:30:00 - 16-08 11:00:00 @ 17.66p 0%, 16-08 11:00:00 - 16-08 11:30:00 @ 16.56p 0%, 16-08 11:30:00 - 16-08 12:00:00 @ 15.46p 100%, 16-08 12:00:00 - 16-08 12:30:00 @ 17.0p 100%, 16-08 12:30:00 - 16-08 13:00:00 @ 16.34p 100%, 16-08 13:00:00 - 16-08 13:30:00 @ 15.36p 100%, 16-08 13:30:00 - 16-08 14:00:00 @ 15.74p 100%, 16-08 14:00:00 - 16-08 14:30:00 @ 14.57p 100%, 16-08 14:30:00 - 16-08 15:00:00 @ 13.77p 100%, 16-08 15:00:00 - 16-08 15:30:00 @ 15.02p 100%, 16-08 15:30:00 - 16-08 16:00:00 @ 15.87p 100%, 16-08 16:00:00 - 16-08 16:30:00 @ 33.13p 100%, 16-08 16:30:00 - 16-08 17:00:00 @ 33.13p 100%, 16-08 17:00:00 - 16-08 17:30:00 @ 38.46p 100%, 16-08 17:30:00 - 16-08 18:00:00 @ 40.44p 100%, 16-08 18:00:00 - 16-08 18:30:00 @ 41.55p 100%, 16-08 19:00:00 - 16-08 19:30:00 @ 32.58p 100%, 16-08 19:30:00 - 16-08 20:00:00 @ 32.9p 100%, 16-08 20:00:00 - 16-08 20:30:00 @ 31.99p 100%, 16-08 20:30:00 - 16-08 21:00:00 @ 32.1p 100%, 16-08 21:00:00 - 16-08 21:30:00 @ 31.71p 100%, 16-08 21:30:00 - 16-08 22:00:00 @ 31.67p 100%, 16-08 22:00:00 - 16-08 22:30:00 @ 31.77p 100%, 16-08 22:30:00 - 16-08 23:00:00 @ 29.81p 100%, 16-08 23:00:00 - 16-08 23:30:00 @ 27.8p 100%, 16-08 23:30:00 - 17-08 00:00:00 @ 29.09p 100%, 17-08 00:00:00 - 17-08 00:30:00 @ 28.47p 100%, 17-08 00:30:00 - 17-08 01:00:00 @ 27.18p 100%, 17-08 01:00:00 - 17-08 01:30:00 @ 27.57p 100%, 17-08 01:30:00 - 17-08 02:00:00 @ 26.5p 100%, 17-08 02:00:00 - 17-08 02:30:00 @ 25.6p 100% ] reserve 1.12 2026-08-15 02:30:18.965844: Unclipped charge windows [ 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 02:30:00 @ 26.37p 100% ] reserve 1.12 2026-08-15 02:30:18.966174: Unfiltered charge windows [ 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 02:30:00 @ 26.37p 100% ] reserve 1.12 2026-08-15 02:30:18.966495: Filtered charge windows [ 15-08 07:00:00 - 15-08 07:30:00 @ 22.73p 9%, 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 02:30:00 @ 26.37p 100% ] reserve 1.12 2026-08-15 02:30:19.004664: Previous plan best metric is 614.26 (cost 622.77) and new plan best metric is 614.21 (cost 622.73) 2026-08-15 02:30:19.004921: New plan metric is not significantly better (metric_min_improvement_plan 2.0) than previous plan, using previous plan 2026-08-15 02:30:19.005225: Plan valid is now true after recompute was False 2026-08-15 02:30:19.033726: predict base end_record 08-16 11:30:00, final soc 1.12kWh, metric 849.45p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 29.22kWh, PV 0.0kWh 2026-08-15 02:30:19.139310: Battery has 0.25 hours left - now at 1.44kWh 2026-08-15 02:30:19.182535: predict base10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 881.53p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 30.49kWh, PV 0.0kWh 2026-08-15 02:30:19.257777: predict best10 end_record 08-16 11:30:00, final soc 1.12kWh, metric 704.39p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 30.49kWh, PV 0.0kWh 2026-08-15 02:30:19.335039: predict best end_record 08-16 11:30:00, final soc 1.12kWh, metric 672.75p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:45:00, load 29.22kWh, PV 0.0kWh 2026-08-15 02:30:19.335128: Saving plan best values to HA entities 2026-08-15 02:30:19.486327: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-15 02:30:19.490910: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 02:30:19.495470: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 20.68kWh, house 7.82kWh, export 0.0kWh, metric 672.75p, metric10 704.39p 2026-08-15 02:30:19.559583: Marginal costs baseline metric (no standing charge): 622.7682 2026-08-15 02:30:19.841483: Marginal energy costs matrix computed: min=14.39 max=26.36 2026-08-15 02:30:19.914749: Rate array import [{'start': 150, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2130, 'rate': 'cheap', 'range': '(16.6p - 23.6p)'}] export [{'start': 150, 'end': 2130, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 02:30:19.915460: - Your estimated bill for today is £6.04 and tomorrow is £5.51 2026-08-15 02:30:19.915507: - Import rates are expensive (24.6p - 27.6p) for the next 4 and a half hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 02:30:19.915529: - The battery is currently at 9% and is in eco mode for the next 9 hours. 2026-08-15 02:30:19.915547: - For the next 48 hours there will be no solar generation. 2026-08-15 02:30:19.915568: - You will run out of battery in 15 minutes. 2026-08-15 02:30:19.915586: - Your next charge slot will be in 9 hours where import rates will be cheap (15.5p). 2026-08-15 02:30:19.915603: 2026-08-15 02:30:19.970946: Plan calculation took 15.95 seconds 2026-08-15 02:30:19.971377: Inverter 0: Type SK Sunsynk 2026-08-15 02:30:19.971429: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 02:30:19.971686: Reserve min: 7%, battery_min: 7% 2026-08-15 02:30:19.971780: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 02:30:19.972166: Inverter 0 SoC: 1.44kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4488W, current battery voltage 51.2V, grid power -7361W, load power 2366W, PV Power 0W 2026-08-15 02:30:19.972467: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:30:19.972586: Inverter 0 scheduled charge enable is False 2026-08-15 02:30:19.972627: Inverter 0 charge windows currently [] 2026-08-15 02:30:19.972658: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 02:30:19.972771: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:30:19.972849: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:30:19.972890: Inverter 0 scheduled discharge enable is False 2026-08-15 02:30:19.973089: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:30:19.973137: Inverter 0 discharge windows currently [] 2026-08-15 02:30:19.973161: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:30:19.973180: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:30:19.973197: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:30:20.025599: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-15 02:30:20.025741: Inverter 0 disabled charge window while waiting for schedule (now 08-15 02:30:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 02:30:20.025834: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:30:20.026076: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:30:20.026170: No export window planned 2026-08-15 02:30:20.026309: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 02:30:20.026348: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:30:20.026519: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:30:20.026717: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 02:30:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 02:30:20.026778: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 02:30:20.026867: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 02:30:20.026975: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:30:20.027035: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:30:20.027075: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:30:20.027102: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:30:20.027143: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:30:20.027188: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:30:20.027217: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:30:20.027293: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:30:20.027343: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:30:20.027386: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:30:20.027411: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:30:20.027443: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:30:20.027485: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:30:20.027529: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:30:20.027561: Inverter 0 count register writes 0 2026-08-15 02:30:20.048608: Total inverter register writes now 815 2026-08-15 02:30:20.078942: Info: Completed run status Demand 2026-08-15 02:30:20.084991: Info: record_status Demand 2026-08-15 02:30:20.091554: Saved current settings to /config/predbat_config.json 2026-08-15 02:30:20.091840: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 02:30:57.198745: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:30:57.198965: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:30:57.199022: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:30:57.199224: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:30:57.199264: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:30:57.199282: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:30:57.199296: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:31:14.633159: ML Component: Fetching 28 days of load history from ['sensor.sunsynk_day_load_energy'] 2026-08-15 02:31:15.522233: Processing 1345 30-minute periods for power integration 2026-08-15 02:31:15.607695: ML Component: Car charging hold False, car energy reported load False 2026-08-15 02:31:15.688202: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 02:31:15.771887: ML Temperature data points: 50251 2026-08-15 02:31:15.987838: ML Component: Fetched 8064 load data points, 28.0 days of history 2026-08-15 02:31:16.025156: ML Component: Data fetch completed, load data age 56.0 days, 16295 data points 2026-08-15 02:31:16.025258: ML Component: No training needed, model age is 0.53 hours 2026-08-15 02:31:16.025310: ML Component: Generating predictions load data age 56.0 days, 16295 data points 2026-08-15 02:31:16.136607: ML Predictor: Starting autoregressive prediction loop for 576 steps (48.0 hours), prev_energy value 0.1085 max_dow {0: 0.10148124996256083, 1: 0.10722812486607582, 2: 0.11988124983031304, 3: 0.11477812442630529, 4: 0.1668593753574416, 5: 0.10612500002831221, 6: 0.10850624993629754} 2026-08-15 02:31:16.568670: ML Component: Generated 576 predictions (total 35.16 kWh over 48h) 2026-08-15 02:31:16.599194: ML Component: Prediction cycle completed 2026-08-15 02:31:16.727223: ML Component: Saved 16295 steps (56 days) of history to /config/predbat_ml_history.npz 2026-08-15 02:32:57.414091: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:32:57.414320: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:32:57.414361: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:32:57.414554: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:32:57.414740: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:32:57.414777: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:32:57.414836: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:35:00.621047: --------------- PredBat - update at 2026-08-15 02:35:00+01:00 with clock skew 0 minutes, minutes now 155 2026-08-15 02:35:00.621971: Saved current settings to /config/predbat_config.json 2026-08-15 02:35:00.622189: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 30.0 minutes 2026-08-15 02:35:00.622307: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 02:35:00.622364: Autoupdate: Currently up to date 2026-08-15 02:35:00.639731: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 02:35:00.639896: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 02:35:00.640132: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 02:35:00.640692: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 02:35:00.640827: Predbat mode is set to Control charge & discharge 2026-08-15 02:35:00.796868: Found 21602 load_today datapoints going back 28 days 2026-08-15 02:35:00.797026: Using load_power data to fill gaps in load_today data 2026-08-15 02:35:01.463470: Processing 721 30-minute periods for power integration 2026-08-15 02:35:01.619685: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 02:35:01.619797: Car charging hold False, threshold 6.0kWh 2026-08-15 02:35:01.619846: Current data so far today: load 2.6kWh, import 3.0kWh, export 0.0kWh, PV 0kWh 2026-08-15 02:35:01.631180: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 02:35:01.631458: Standing charge is set to 49.98p 2026-08-15 02:35:01.655096: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 02:35:01.655180: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 02:35:01.655348: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 155.0 minutes 2026-08-15 02:35:01.655645: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 154.7 minutes 2026-08-15 02:35:01.658176: Loaded 47 datapoints of futurerate analysis 2026-08-15 02:35:01.724643: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 02:35:01.786068: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 02:35:01.786440: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 02:35:01.828515: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 02:35:01.828661: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 02:35:01.829940: High export rate found rates in range 99p to -99p 2026-08-15 02:35:01.903335: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 02:35:01.903441: Car 0 charging is not planned as it is not plugged in 2026-08-15 02:35:01.914142: Battery level now 1.44kWh, -1hr ago 1.44kWh, at midnight 1.66kWh, battery value change in the last hour 0.0p, change today -2.55p, rate_forward 11.83p 2026-08-15 02:35:01.914432: Last hour: net energy 0.8kWh, import 0.8kWh, export 0.0kWh, car 0kWh, load 0.5kWh, net cost 21.2p, import 21.2p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 02:35:01.951991: Today's energy total net 3.0kWh, import 3.0kWh, export 0.0kWh, cost 132.52p, import 82.54p, export 0.0p, carbon 0.0kg 2026-08-15 02:35:01.952099: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 02:35:02.009722: Using weighted-bucket historical load forecast over 14 days 2026-08-15 02:35:02.031246: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 02:35:02.031324: Today's predicted so far 2.08kWh with 0.0kWh car/iBoost excluded, 1.36kWh import ignored, and 2.08kWh forecast extra. 2026-08-15 02:35:02.031355: Today's actual load so far 2.71kWh with 0.0kWh car/iBoost excluded, and 1.36kWh import ignored. 2026-08-15 02:35:02.064267: Inverter 0: Type SK Sunsynk 2026-08-15 02:35:02.064353: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 02:35:02.064527: Reserve min: 7%, battery_min: 7% 2026-08-15 02:35:02.064595: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 02:35:02.064885: Inverter 0 SoC: 1.44kW 9%, current charge rate 5000W, current discharge rate 5250W, current battery power -4477W, current battery voltage 51.2V, grid power -7402W, load power 2405W, PV Power 0W 2026-08-15 02:35:02.065067: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:35:02.065158: Inverter 0 scheduled charge enable is False 2026-08-15 02:35:02.065186: Inverter 0 charge windows currently [] 2026-08-15 02:35:02.065211: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 02:35:02.065313: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:35:02.065349: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:35:02.065383: Inverter 0 scheduled discharge enable is False 2026-08-15 02:35:02.065510: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:35:02.065547: Inverter 0 discharge windows currently [] 2026-08-15 02:35:02.065569: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:35:02.065587: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:35:02.065606: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:35:02.124057: Dynamic load last period 0.60kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 02:35:02.124161: Plan was last updated on 2026-08-15 02:30:00+01:00 and is now 5.0 minutes old 2026-08-15 02:35:02.124383: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 02:35:02.124418: Best export window [ ] 2026-08-15 02:35:02.125079: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 02:35:02.127553: Load divergence over 8.0 hours mean 425.31W, min 269.4W, max 1041.6W, std dev 103.23W, divergence 12.14% 2026-08-15 02:35:02.142433: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 02:35:02.142518: LoadML is_calculating False 2026-08-15 02:35:02.142575: Creating pool of 12 processes to match your CPU count 2026-08-15 02:35:02.249130: predict base end_record 08-16 11:35:00, final soc 1.12kWh, metric 847.72p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 29.26kWh, PV 0.0kWh 2026-08-15 02:35:02.370411: Battery has 0.25 hours left - now at 1.44kWh 2026-08-15 02:35:02.409589: predict base10 end_record 08-16 11:35:00, final soc 1.12kWh, metric 879.72p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 30.52kWh, PV 0.0kWh 2026-08-15 02:35:02.492186: predict best10 end_record 08-16 11:35:00, final soc 1.44kWh, metric 708.41p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 30.52kWh, PV 0.0kWh 2026-08-15 02:35:02.575192: predict best end_record 08-16 11:35:00, final soc 1.51kWh, metric 678.06p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 02:50:00, load 29.26kWh, PV 0.0kWh 2026-08-15 02:35:02.575282: Saving plan best values to HA entities 2026-08-15 02:35:02.746334: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-15 02:35:02.751689: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 02:35:02.757213: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.21kWh, house 7.69kWh, export 0.0kWh, metric 678.06p, metric10 708.41p 2026-08-15 02:35:02.827265: Marginal costs baseline metric (no standing charge): 628.0783 2026-08-15 02:35:03.103108: Marginal energy costs matrix computed: min=14.57 max=26.35 2026-08-15 02:35:03.170607: Rate array import [{'start': 155, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2135, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 155, 'end': 2135, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 02:35:03.171196: - Your estimated bill for today is £6.02 and tomorrow is £5.49 2026-08-15 02:35:03.171236: - Import rates are expensive (24.6p - 27.6p) for the next 4 and a half hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 02:35:03.171254: - The battery is currently at 9% and is in eco mode for the next 8 hours. 2026-08-15 02:35:03.171269: - For the next 48 hours there will be no solar generation. 2026-08-15 02:35:03.171287: - You will run out of battery in 15 minutes. 2026-08-15 02:35:03.171300: - Your next charge slot will be in 8 hours where import rates will be cheap (15.5p). 2026-08-15 02:35:03.171314: 2026-08-15 02:35:03.222751: Plan calculation took 1.10 seconds 2026-08-15 02:35:03.225469: No high rate period found 2026-08-15 02:35:03.270842: Import threshold used for optimisation was 22.73p 2026-08-15 02:35:03.315508: Low import rate windows [0: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 1: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 2: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 3: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 4: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 5: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 6: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 7: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 8: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 9: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 10: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 11: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 12: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 13: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 14: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 15: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 16: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 17: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 18: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 19: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 20: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 21: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 22: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 23: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 24: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 25: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 26: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 27: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 28: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 29: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 30: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 31: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 32: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 33: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 34: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 35: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 36: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 37: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 38: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 39: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 40: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 41: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 42: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 43: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 44: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 45: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 46: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 47: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 48: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 49: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 50: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 51: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 52: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 53: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 54: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 55: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 56: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 57: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 58: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 59: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 60: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 61: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 62: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 63: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 64: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 65: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 66: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 67: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 68: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 69: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 70: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 71: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 72: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 73: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 74: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 75: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 76: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 77: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 78: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 79: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 80: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 81: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 82: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 83: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 84: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 85: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 86: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 87: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 88: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 89: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 90: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 91: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57, 92: 08-17 01:30:00 - 08-17 02:00:00 @ 26.5, 93: 08-17 02:00:00 - 08-17 02:30:00 @ 25.6, 94: 08-17 02:30:00 - 08-17 03:00:00 @ 24.79] 2026-08-15 02:35:03.322321: Inverter 0 Charge window will be: 2026-08-15 11:30:00+01:00 - 2026-08-15 16:00:00+01:00 - current SoC 9%, target 100% 2026-08-15 02:35:03.322454: Inverter 0 disabled charge window while waiting for schedule (now 08-15 02:35:00 target set_window_minutes 30 charge start time 08-15 11:30:00) original inverter start time 08-17 00:00:00 2026-08-15 02:35:03.322568: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:35:03.322887: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:35:03.322966: No export window planned 2026-08-15 02:35:03.323064: Inverter 0 Adjust force export to False, change times from 00:00:00 - 00:00:00 to 00:00:00 - 00:00:00 2026-08-15 02:35:03.323124: Adjust idle time, charge 00:00:00-00:00:00 discharge 00:00:00-00:00:00 2026-08-15 02:35:03.323234: Adjust demand (idle) time computed is 00:00:00-23:59:00 2026-08-15 02:35:03.323401: Inverter 0 not setting charging SoC as we are not within the window (now 08-15 02:35:00 target set_soc_minutes 30 charge start time 08-17 00:00:00) 2026-08-15 02:35:03.323454: Inverter 0 adjust target SoC for export to 0% based on requested all inverter SoC 0% 2026-08-15 02:35:03.323556: Inverter 0 Current Target SoC is 7%, already at target 2026-08-15 02:35:03.323645: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:35:03.323679: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:35:03.323702: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:35:03.323722: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:35:03.323742: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:35:03.323762: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:35:03.323781: Inverter 0 Skipped service charge_stop_service domain charge service_name select.select_option as it was previously called. 2026-08-15 02:35:03.323849: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:35:03.323878: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:35:03.323899: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:35:03.323919: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:35:03.323938: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:35:03.323956: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:35:03.323975: Inverter 0 Skipped service charge_stop_service domain discharge service_name select.select_option as it was previously called. 2026-08-15 02:35:03.323992: Inverter 0 count register writes 0 2026-08-15 02:35:03.338134: Will not recompute the plan, it is 5.0 minutes old and max age is 10 minutes 2026-08-15 02:35:03.342804: Total inverter register writes now 815 2026-08-15 02:35:03.372826: Info: Completed run status Demand 2026-08-15 02:35:03.378220: Info: record_status Demand 2026-08-15 02:35:03.385238: Saved current settings to /config/predbat_config.json 2026-08-15 02:35:03.385558: Compare, best tariff: igo_fixed metric 270.76p 2026-08-15 02:35:41.495060: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:35:41.495300: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:35:41.495342: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:35:41.495503: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:35:41.495551: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:35:41.495573: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:35:41.495591: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:37:41.704031: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:37:41.704300: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:37:41.704344: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:37:41.704481: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:37:41.704520: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:37:41.704541: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:37:41.704580: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:39:41.922295: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:39:41.922547: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:39:41.922619: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:39:41.922797: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:39:41.922874: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:39:41.922898: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:39:41.922915: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:40:00.008512: --------------- PredBat - update at 2026-08-15 02:40:00+01:00 with clock skew 0 minutes, minutes now 160 2026-08-15 02:40:00.009717: Saved current settings to /config/predbat_config.json 2026-08-15 02:40:00.009956: Using cached GitHub data for https://api.github.com/repos/springfall2008/batpred/releases age 35.0 minutes 2026-08-15 02:40:00.010424: Predbat /addon/github.py repository springfall2008/batpred version v8.48.1 currently running, latest version is v8.48.1, latest beta is v8.48.1 2026-08-15 02:40:00.010558: Autoupdate: Currently up to date 2026-08-15 02:40:00.036775: Configuration: forecast_hours 48, num_cars 1, debug enable is False, calculate_plan_every 10 minutes 2026-08-15 02:40:00.037001: days_previous_auto enabled - will fall back to a weighted-bucket historical load forecast over up to 14 days if no other load forecast source takes precedence 2026-08-15 02:40:00.037206: Warn: calculate_pv90_plan is Off so forcing pv_metric90_weight from 0.15 to 0.0 - turn on switch.predbat_calculate_pv90_plan (expert mode) to enable the PV90 upside scenario 2026-08-15 02:40:00.037736: Cars 1 charging from battery False planned [False], charging_now [False] smart [True], max_price [0.0]p, plan_time ['16:00:00'], battery size [58.6]kWh, limit [100.0]% ([58.6]kWh), rate [7.4]kW, exclusive [False] 2026-08-15 02:40:00.038018: Predbat mode is set to Control charge & discharge 2026-08-15 02:40:00.229913: Found 21602 load_today datapoints going back 28 days 2026-08-15 02:40:00.230059: Using load_power data to fill gaps in load_today data 2026-08-15 02:40:00.990608: Processing 721 30-minute periods for power integration 2026-08-15 02:40:01.142367: Warn: You have not set pv_today in apps.yaml, you will have no previous PV data 2026-08-15 02:40:01.142485: Car charging hold False, threshold 6.0kWh 2026-08-15 02:40:01.142523: Current data so far today: load 3.25kWh, import 3.4kWh, export 0.0kWh, PV 0kWh 2026-08-15 02:40:01.154062: Cars: SoC: [12.892000000000001]kWh, Charge limit [100.0]% ([58.6]kWh), plan time ['16:00:00'], battery size [58.6]kWh 2026-08-15 02:40:01.154341: Standing charge is set to 49.98p 2026-08-15 02:40:01.175649: FutureRate: Detected import tariff E-1R-AGILE-24-10-01-G agile True export tariff None agile False 2026-08-15 02:40:01.175755: Fetching futurerate data from https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=DATE&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP 2026-08-15 02:40:01.176031: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-15&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 160.0 minutes 2026-08-15 02:40:01.176592: Return cached futurerate data for https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?date=2026-08-16&market=N2EX_DayAhead&deliveryArea=UK¤cy=GBP age 159.7 minutes 2026-08-15 02:40:01.180130: Loaded 47 datapoints of futurerate analysis 2026-08-15 02:40:01.248588: Predicted future rates: ['08-15 00:00:00 => 28.9 / 20.01', '08-15 01:00:00 => 27.54 / 19.31', '08-15 02:00:00 => 26.52 / 18.8', '08-15 03:00:00 => 25.99 / 18.53', '08-15 04:00:00 => 25.8 / 18.43', '08-15 05:00:00 => 25.96 / 18.51', '08-15 06:00:00 => 25.55 / 18.3', '08-15 07:00:00 => 24.33 / 17.68', '08-15 08:00:00 => 23.03 / 17.01', '08-15 09:00:00 => 22.05 / 16.51', '08-15 10:00:00 => 20.43 / 15.68', '08-15 11:00:00 => 18.01 / 14.45', '08-15 12:00:00 => 16.37 / 13.61', '08-15 13:00:00 => 15.76 / 13.3', '08-15 14:00:00 => 15.35 / 13.09', '08-15 15:00:00 => 15.86 / 13.35', '08-15 16:00:00 => 32.89 / 16.13', '08-15 17:00:00 => 38.02 / 18.75', '08-15 18:00:00 => 42.36 / 20.96', '08-15 19:00:00 => 31.09 / 21.13', '08-15 20:00:00 => 31.64 / 21.41', '08-15 21:00:00 => 31.64 / 21.41', '08-15 22:00:00 => 30.58 / 20.87'] 2026-08-15 02:40:01.298610: Rate min forward looking: now 13.77p at end of forecast 13.77p 2026-08-15 02:40:01.299043: Import rates: min 13.77p, max 43.82p, average 25.96p 2026-08-15 02:40:01.333322: Export rates: min 0p, max 0p, average 0.0p 2026-08-15 02:40:01.333428: Rate thresholds (for charge/export) are import 43.32p (0.0p), export -0.1p (0.0p) 2026-08-15 02:40:01.334410: High export rate found rates in range 99p to -99p 2026-08-15 02:40:01.396513: Low Import rate found rates in range 13.77p to 41.55p 2026-08-15 02:40:01.396630: Car 0 charging is not planned as it is not plugged in 2026-08-15 02:40:01.408981: Battery level now 1.44kWh, -1hr ago 1.43kWh, at midnight 1.66kWh, battery value change in the last hour 0.09p, change today -2.55p, rate_forward 11.83p 2026-08-15 02:40:01.409337: Last hour: net energy 0.85kWh, import 0.85kWh, export 0.0kWh, car 0kWh, load 1.12kWh, net cost 22.15p, import 22.15p, export 0.0p, car 0.0p, carbon 0.0kg 2026-08-15 02:40:01.457475: Today's energy total net 3.4kWh, import 3.4kWh, export 0.0kWh, cost 142.76p, import 92.78p, export 0.0p, carbon 0.0kg 2026-08-15 02:40:01.457603: Warn: Unable to parse relative_time from PV forecast sensor: None, using midnight UTC as fallback 2026-08-15 02:40:01.519267: Using weighted-bucket historical load forecast over 14 days 2026-08-15 02:40:01.537592: Today's load divergence 100.0%, in-day adjustment 143.77%, damping 0.95x, yesterday 143.77% today 100.0% blend 100.0% 2026-08-15 02:40:01.537679: Today's predicted so far 2.12kWh with 0.0kWh car/iBoost excluded, 1.43kWh import ignored, and 2.12kWh forecast extra. 2026-08-15 02:40:01.537705: Today's actual load so far 3.33kWh with 0.0kWh car/iBoost excluded, and 1.43kWh import ignored. 2026-08-15 02:40:01.570479: Inverter 0: Type SK Sunsynk 2026-08-15 02:40:01.570563: Note: Inverter 0: Using inverter type SK - not all features are available on all Inverter types 2026-08-15 02:40:01.570723: Reserve min: 7%, battery_min: 7% 2026-08-15 02:40:01.570782: Inverter 0 with soc_max 16.0kWh, nominal_capacity 16.0kWh, battery rate raw 5000.0W, charge rate 5.0kW, charge rate DC 5.0kW, discharge rate 5.0kW, battery_rate_min 0.0W, AC limit 5.0kW, export limit 100.0kW, reserve 7%, current_reserve 7%, temperature 20°C 2026-08-15 02:40:01.571025: Inverter 0 SoC: 1.55kW 10%, current charge rate 5000W, current discharge rate 5250W, current battery power 522W, current battery voltage 51.2V, grid power -51W, load power 588W, PV Power 0W 2026-08-15 02:40:01.571161: Inverter 0 write_and_poll_switch: No write needed for scheduled_charge_enable as False == False 2026-08-15 02:40:01.571234: Inverter 0 scheduled charge enable is False 2026-08-15 02:40:01.571257: Inverter 0 charge windows currently [] 2026-08-15 02:40:01.571278: Inverter 0 Charge settings: timed charged is disabled, power 5.0kW 2026-08-15 02:40:01.571366: Inverter 0 write_and_poll_switch: No write needed for scheduled_discharge_enable as False == False 2026-08-15 02:40:01.571412: Inverter 0 sensor.predbat_SK_0_scheduled_discharge_enable set to False 2026-08-15 02:40:01.571452: Inverter 0 scheduled discharge enable is False 2026-08-15 02:40:01.571559: Inverter 0 idle time is 08-15 00:00:00-08-15 23:59:00 2026-08-15 02:40:01.571590: Inverter 0 discharge windows currently [] 2026-08-15 02:40:01.571609: Note: Inverter does not support discharge freeze - disabled 2026-08-15 02:40:01.571624: Note: Inverter does not support charge freeze - disabled 2026-08-15 02:40:01.571642: Note: Inverter does not support reserve - disabling reserve functions 2026-08-15 02:40:01.630668: Dynamic load last period 3.00kW, status low, threshold_battery 5.0kWh, threshold_car 6.0kWh, 2026-08-15 02:40:01.630866: Plan was last updated on 2026-08-15 02:30:00+01:00 and is now 10.0 minutes old 2026-08-15 02:40:01.631364: Best charge window [ 15-08 11:30:00 - 15-08 12:00:00 @ 15.46p 100%, 15-08 12:00:00 - 15-08 12:30:00 @ 17.0p 22%, 15-08 12:30:00 - 15-08 13:00:00 @ 16.34p 25%, 15-08 13:00:00 - 15-08 16:00:00 @ 15.29p 100%, 16-08 11:30:00 - 16-08 18:30:00 @ 39.27p 100%, 16-08 19:00:00 - 17-08 00:30:00 @ 28.84p 100% ] 2026-08-15 02:40:01.631426: Best export window [ ] 2026-08-15 02:40:01.632285: PV Forecast 0.0kWh and 10% Forecast 0.0kWh; PV cloud factor None 2026-08-15 02:40:01.635359: Load divergence over 8.0 hours mean 423.71W, min 268.2W, max 1026.0W, std dev 103.1W, divergence 12.17% 2026-08-15 02:40:01.654172: Warn: Prediction kernel: enabled but NOT available (failed to load /addon/prediction_kernel_lib_x86_64.so (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /addon/prediction_kernel_lib_x86_64.so))) - falling back to the Python engine 2026-08-15 02:40:01.654298: LoadML is_calculating False 2026-08-15 02:40:01.654363: Creating pool of 12 processes to match your CPU count 2026-08-15 02:40:01.778003: predict base end_record 08-16 11:40:00, final soc 1.12kWh, metric 855.15p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:00:00, load 29.93kWh, PV 0.0kWh 2026-08-15 02:40:01.900128: Battery has 0.33 hours left - now at 1.55kWh 2026-08-15 02:40:01.946336: predict base10 end_record 08-16 11:40:00, final soc 1.12kWh, metric 887.14p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:00:00, load 31.2kWh, PV 0.0kWh 2026-08-15 02:40:02.031980: predict best10 end_record 08-16 11:40:00, final soc 1.77kWh, metric 720.98p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:00:00, load 31.2kWh, PV 0.0kWh 2026-08-15 02:40:02.123047: predict best end_record 08-16 11:40:00, final soc 1.9kWh, metric 691.62p, metric_keep 0kWh, min_soc 1.12kWh @ 08-15 03:00:00, load 29.93kWh, PV 0.0kWh 2026-08-15 02:40:02.123178: Saving plan best values to HA entities 2026-08-15 02:40:02.282094: Evaluate trigger {'name': 'large', 'minutes': 60, 'energy': 1.0} results off total_energy 0 2026-08-15 02:40:02.287668: Evaluate trigger {'name': 'small', 'minutes': 15, 'energy': 0.25} results off total_energy 0 2026-08-15 02:40:02.295081: Best charging limit SoC's [16.0, 3.5, 4.0, 16.0, 16.0, 16.0]kWh, export []kWh gives import battery 21.72kWh, house 7.52kWh, export 0.0kWh, metric 691.62p, metric10 720.98p 2026-08-15 02:40:02.373873: Marginal costs baseline metric (no standing charge): 641.639 2026-08-15 02:40:02.648048: Marginal energy costs matrix computed: min=14.74 max=26.35 2026-08-15 02:40:02.727055: Rate array import [{'start': 160, 'end': 420, 'rate': 'expensive', 'range': '(24.6p - 27.6p)'}, {'start': 420, 'end': 450, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 450, 'end': 480, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 480, 'end': 960, 'rate': 'cheap', 'range': '(13.8p - 23.6p)'}, {'start': 960, 'end': 1020, 'rate': 'expensive', 'range': '(33.1p)'}, {'start': 1020, 'end': 1140, 'rate': 'very expensive', 'range': '(38.5p - 43.8p)'}, {'start': 1140, 'end': 1860, 'rate': 'expensive', 'range': '(24.6p - 32.9p)'}, {'start': 1860, 'end': 1890, 'rate': 'cheap', 'range': '(22.7p)'}, {'start': 1890, 'end': 1920, 'rate': 'expensive', 'range': '(26.7p)'}, {'start': 1920, 'end': 2140, 'rate': 'cheap', 'range': '(15.5p - 23.6p)'}] export [{'start': 160, 'end': 2140, 'rate': 'fixed', 'range': '(0p)'}] 2026-08-15 02:40:02.727792: - Your estimated bill for today is £6.07 and tomorrow is £5.51 2026-08-15 02:40:02.727858: - Import rates are expensive (24.6p - 27.6p) for the next 4 and a quarter hours and then cheap (22.7p) for the next 30 minutes. 2026-08-15 02:40:02.727899: - The battery is currently at 10% and is in eco mode for the next 8 hours. 2026-08-15 02:40:02.727917: - For the next 48 hours there will be no solar generation. 2026-08-15 02:40:02.727936: - You will run out of battery in 20 minutes. 2026-08-15 02:40:02.727954: - Your next charge slot will be in 8 hours where import rates will be cheap (15.5p). 2026-08-15 02:40:02.727991: 2026-08-15 02:40:02.780882: Plan calculation took 1.15 seconds 2026-08-15 02:40:02.784176: No high rate period found 2026-08-15 02:40:02.835199: Import threshold used for optimisation was 22.73p 2026-08-15 02:40:02.885389: Low import rate windows [0: 08-15 02:30:00 - 08-15 03:00:00 @ 24.79, 1: 08-15 03:00:00 - 08-15 03:30:00 @ 25.08, 2: 08-15 03:30:00 - 08-15 04:00:00 @ 24.62, 3: 08-15 04:00:00 - 08-15 04:30:00 @ 27.02, 4: 08-15 04:30:00 - 08-15 05:00:00 @ 26.47, 5: 08-15 05:00:00 - 08-15 05:30:00 @ 26.25, 6: 08-15 05:30:00 - 08-15 06:00:00 @ 26.4, 7: 08-15 06:00:00 - 08-15 06:30:00 @ 25.7, 8: 08-15 06:30:00 - 08-15 07:00:00 @ 27.63, 9: 08-15 07:00:00 - 08-15 07:30:00 @ 22.73, 10: 08-15 07:30:00 - 08-15 08:00:00 @ 26.7, 11: 08-15 08:00:00 - 08-15 08:30:00 @ 22.92, 12: 08-15 08:30:00 - 08-15 09:00:00 @ 22.48, 13: 08-15 09:00:00 - 08-15 09:30:00 @ 23.55, 14: 08-15 09:30:00 - 08-15 10:00:00 @ 23.64, 15: 08-15 10:00:00 - 08-15 10:30:00 @ 19.66, 16: 08-15 10:30:00 - 08-15 11:00:00 @ 17.66, 17: 08-15 11:00:00 - 08-15 11:30:00 @ 16.56, 18: 08-15 11:30:00 - 08-15 12:00:00 @ 15.46, 19: 08-15 12:00:00 - 08-15 12:30:00 @ 17.0, 20: 08-15 12:30:00 - 08-15 13:00:00 @ 16.34, 21: 08-15 13:00:00 - 08-15 13:30:00 @ 15.36, 22: 08-15 13:30:00 - 08-15 14:00:00 @ 15.74, 23: 08-15 14:00:00 - 08-15 14:30:00 @ 14.57, 24: 08-15 14:30:00 - 08-15 15:00:00 @ 13.77, 25: 08-15 15:00:00 - 08-15 15:30:00 @ 15.02, 26: 08-15 15:30:00 - 08-15 16:00:00 @ 15.87, 27: 08-15 16:00:00 - 08-15 16:30:00 @ 33.13, 28: 08-15 16:30:00 - 08-15 17:00:00 @ 33.13, 29: 08-15 17:00:00 - 08-15 17:30:00 @ 38.46, 30: 08-15 17:30:00 - 08-15 18:00:00 @ 40.44, 31: 08-15 18:00:00 - 08-15 18:30:00 @ 41.55, 32: 08-15 19:00:00 - 08-15 19:30:00 @ 32.58, 33: 08-15 19:30:00 - 08-15 20:00:00 @ 32.9, 34: 08-15 20:00:00 - 08-15 20:30:00 @ 31.99, 35: 08-15 20:30:00 - 08-15 21:00:00 @ 32.1, 36: 08-15 21:00:00 - 08-15 21:30:00 @ 31.71, 37: 08-15 21:30:00 - 08-15 22:00:00 @ 31.67, 38: 08-15 22:00:00 - 08-15 22:30:00 @ 31.77, 39: 08-15 22:30:00 - 08-15 23:00:00 @ 29.81, 40: 08-15 23:00:00 - 08-15 23:30:00 @ 27.8, 41: 08-15 23:30:00 - 08-16 00:00:00 @ 29.09, 42: 08-16 00:00:00 - 08-16 00:30:00 @ 28.47, 43: 08-16 00:30:00 - 08-16 01:00:00 @ 27.18, 44: 08-16 01:00:00 - 08-16 01:30:00 @ 27.57, 45: 08-16 01:30:00 - 08-16 02:00:00 @ 26.5, 46: 08-16 02:00:00 - 08-16 02:30:00 @ 25.6, 47: 08-16 02:30:00 - 08-16 03:00:00 @ 24.79, 48: 08-16 03:00:00 - 08-16 03:30:00 @ 25.08, 49: 08-16 03:30:00 - 08-16 04:00:00 @ 24.62, 50: 08-16 04:00:00 - 08-16 04:30:00 @ 27.02, 51: 08-16 04:30:00 - 08-16 05:00:00 @ 26.47, 52: 08-16 05:00:00 - 08-16 05:30:00 @ 26.25, 53: 08-16 05:30:00 - 08-16 06:00:00 @ 26.4, 54: 08-16 06:00:00 - 08-16 06:30:00 @ 25.7, 55: 08-16 06:30:00 - 08-16 07:00:00 @ 27.63, 56: 08-16 07:00:00 - 08-16 07:30:00 @ 22.73, 57: 08-16 07:30:00 - 08-16 08:00:00 @ 26.7, 58: 08-16 08:00:00 - 08-16 08:30:00 @ 22.92, 59: 08-16 08:30:00 - 08-16 09:00:00 @ 22.48, 60: 08-16 09:00:00 - 08-16 09:30:00 @ 23.55, 61: 08-16 09:30:00 - 08-16 10:00:00 @ 23.64, 62: 08-16 10:00:00 - 08-16 10:30:00 @ 19.66, 63: 08-16 10:30:00 - 08-16 11:00:00 @ 17.66, 64: 08-16 11:00:00 - 08-16 11:30:00 @ 16.56, 65: 08-16 11:30:00 - 08-16 12:00:00 @ 15.46, 66: 08-16 12:00:00 - 08-16 12:30:00 @ 17.0, 67: 08-16 12:30:00 - 08-16 13:00:00 @ 16.34, 68: 08-16 13:00:00 - 08-16 13:30:00 @ 15.36, 69: 08-16 13:30:00 - 08-16 14:00:00 @ 15.74, 70: 08-16 14:00:00 - 08-16 14:30:00 @ 14.57, 71: 08-16 14:30:00 - 08-16 15:00:00 @ 13.77, 72: 08-16 15:00:00 - 08-16 15:30:00 @ 15.02, 73: 08-16 15:30:00 - 08-16 16:00:00 @ 15.87, 74: 08-16 16:00:00 - 08-16 16:30:00 @ 33.13, 75: 08-16 16:30:00 - 08-16 17:00:00 @ 33.13, 76: 08-16 17:00:00 - 08-16 17:30:00 @ 38.46, 77: 08-16 17:30:00 - 08-16 18:00:00 @ 40.44, 78: 08-16 18:00:00 - 08-16 18:30:00 @ 41.55, 79: 08-16 19:00:00 - 08-16 19:30:00 @ 32.58, 80: 08-16 19:30:00 - 08-16 20:00:00 @ 32.9, 81: 08-16 20:00:00 - 08-16 20:30:00 @ 31.99, 82: 08-16 20:30:00 - 08-16 21:00:00 @ 32.1, 83: 08-16 21:00:00 - 08-16 21:30:00 @ 31.71, 84: 08-16 21:30:00 - 08-16 22:00:00 @ 31.67, 85: 08-16 22:00:00 - 08-16 22:30:00 @ 31.77, 86: 08-16 22:30:00 - 08-16 23:00:00 @ 29.81, 87: 08-16 23:00:00 - 08-16 23:30:00 @ 27.8, 88: 08-16 23:30:00 - 08-17 00:00:00 @ 29.09, 89: 08-17 00:00:00 - 08-17 00:30:00 @ 28.47, 90: 08-17 00:30:00 - 08-17 01:00:00 @ 27.18, 91: 08-17 01:00:00 - 08-17 01:30:00 @ 27.57, 92: 08-17 01:30:00 - 08-17 02:00:00 @ 26.5, 93: 08-17 02:00:00 - 08-17 02:30:00 @ 25.6, 94: 08-17 02:30:00 - 08-17 03:00:00 @ 24.79]